diff --git a/lib/roles/device/plugins/identity.js b/lib/roles/device/plugins/identity.js index 11126ab6..484da891 100644 --- a/lib/roles/device/plugins/identity.js +++ b/lib/roles/device/plugins/identity.js @@ -4,16 +4,16 @@ var devutil = require('../../../util/devutil') var logger = require('../../../util/logger') module.exports = syrup() - .dependency(require('../support/adb')) - .define(function(options, adb) { + .dependency(require('../support/properties')) + .dependency(require('./display')) + .define(function(options, properties, display) { var log = logger.createLogger('device:plugins:identity') function solve() { log.info('Solving identity') - return adb.getProperties(options.serial) - .then(function(properties) { - return devutil.makeIdentity(options.serial, properties) - }) + var identity = devutil.makeIdentity(options.serial, properties) + identity.display = display + return identity } return solve() diff --git a/lib/roles/device/resources/remote.js b/lib/roles/device/resources/remote.js index d85b6d76..b197d9cd 100644 --- a/lib/roles/device/resources/remote.js +++ b/lib/roles/device/resources/remote.js @@ -10,21 +10,25 @@ var streamutil = require('../../../util/streamutil') module.exports = syrup() .dependency(require('../support/adb')) - .dependency(require('../plugins/identity')) - .define(function(options, adb, identity) { + .dependency(require('../support/properties')) + .define(function(options, adb, properties) { var log = logger.createLogger('device:resources:remote') var resources = { bin: { src: pathutil.vendor(util.format( - 'remote/libs/%s/remote', identity.abi)) + 'remote/libs/%s/remote' + , properties['ro.product.cpu.abi'] + )) , dest: '/data/local/tmp/remote' , comm: 'remote' , mode: 0755 } , lib: { src: pathutil.vendor(util.format( - 'remote/external/android-%d/remote_external.so', identity.sdk)) + 'remote/external/android-%d/remote_external.so' + , properties['ro.build.version.sdk'] + )) , dest: '/data/local/tmp/remote_external.so' , mode: 0755 } diff --git a/lib/roles/device/support/properties.js b/lib/roles/device/support/properties.js new file mode 100644 index 00000000..ce7309ab --- /dev/null +++ b/lib/roles/device/support/properties.js @@ -0,0 +1,17 @@ +var syrup = require('syrup') + +var devutil = require('../../../util/devutil') +var logger = require('../../../util/logger') + +module.exports = syrup() + .dependency(require('./adb')) + .define(function(options, adb) { + var log = logger.createLogger('device:support:properties') + + function load() { + log.info('Loading properties') + return adb.getProperties(options.serial) + } + + return load() + })