adbkit icon indicating copy to clipboard operation
adbkit copied to clipboard

I will run client.framebuffer is not working.

Open gksdnfla opened this issue 2 years ago • 1 comments

NodeJS version: 12.22.12 GraphicsMagick version: 1.3.36

Source Code:

const adb = require('adbkit');
const client = adb.createClient();

client
    .listDevices()
    .then(function (devices) {
        devices.forEach((device) => {
            client.framebuffer(device.id, 'jpeg', (err, data) => {
                if (err) return console.log(err);
                console.log('---------------------', data);
                var bufs = [];
                data.on('data', function (chunk) {
                    bufs.push(chunk);
                });
                data.on('end', function () {
                    var buffer = new Buffer.concat(bufs);
                    var out = fs.createWriteStream('out.jpg');
                    out.write(buffer);
                    out.end();
                });
            });
        });
    })
    .catch((er) => console.log(err));

Error Message:

TypeError: Cannot read property 'pipe' of undefined
    at FrameBufferCommand._convert (C:\projects\electron_auto\node_modules\adbkit\lib\adb\command\host-transport\framebuffer.js:67:9)
    at C:\projects\electron_auto\node_modules\adbkit\lib\adb\command\host-transport\framebuffer.js:39:34
    at tryCatcher (C:\projects\electron_auto\node_modules\adbkit\node_modules\bluebird\js\main\util.js:26:23)
    at Promise._settlePromiseFromHandler (C:\projects\electron_auto\node_modules\adbkit\node_modules\bluebird\js\main\promise.js:503:31)
    at Promise._settlePromiseAt (C:\projects\electron_auto\node_modules\adbkit\node_modules\bluebird\js\main\promise.js:577:18)
    at Promise._settlePromises (C:\projects\electron_auto\node_modules\adbkit\node_modules\bluebird\js\main\promise.js:693:14)
    at Async._drainQueue (C:\projects\electron_auto\node_modules\adbkit\node_modules\bluebird\js\main\async.js:123:16)
    at Async._drainQueues (C:\projects\electron_auto\node_modules\adbkit\node_modules\bluebird\js\main\async.js:133:10)
    at Immediate.Async.drainQueues [as _onImmediate] (C:\projects\electron_auto\node_modules\adbkit\node_modules\bluebird\js\main\async.js:15:14)
    at processImmediate (internal/timers.js:461:21)

gksdnfla avatar Jul 29 '22 07:07 gksdnfla

hello my friend, i get the same issue, can you give your solution? Thank.

tiennguyen12g avatar Apr 07 '23 18:04 tiennguyen12g