Expose identify functionality. Shows a red screen with important data.

This commit is contained in:
Simo Kinnunen
2014-03-17 19:21:34 +09:00
parent 9c50c1bcdc
commit ed5709aa04
6 changed files with 87 additions and 44 deletions

View File

@@ -5,6 +5,7 @@ var split = require('split')
var ByteBuffer = require('protobufjs/node_modules/bytebuffer')
var wire = require('../../../wire')
var wireutil = require('../../../wire/util')
var devutil = require('../../../util/devutil')
var keyutil = require('../../../util/keyutil')
var streamutil = require('../../../util/streamutil')
@@ -13,9 +14,10 @@ var logger = require('../../../util/logger')
module.exports = syrup()
.dependency(require('../support/adb'))
.dependency(require('../support/router'))
.dependency(require('../support/push'))
.dependency(require('../support/quit'))
.dependency(require('../resources/inputagent'))
.define(function(options, adb, router, quit, apk) {
.define(function(options, adb, router, push, quit, apk) {
var log = logger.createLogger('device:plugins:input')
var agent = {
@@ -170,10 +172,44 @@ module.exports = syrup()
]))
}
function unlock() {
service.socket.write('unlock\n')
}
function lock() {
service.socket.write('lock\n')
}
function acquireWakeLock() {
service.socket.write('acquire wake lock\n')
}
function releaseWakeLock() {
service.socket.write('release wake lock\n')
}
function identity() {
service.socket.write(util.format(
'show identity %s\n'
, options.serial
))
}
return openAgent()
.then(openService)
.then(function() {
router
.on(wire.PhysicalIdentifyMessage, function(channel, message) {
identity()
push.send([
channel
, wireutil.envelope(new wire.TransactionDoneMessage(
options.serial
, 0
, true
))
])
})
.on(wire.KeyDownMessage, function(channel, message) {
sendInputEvent({
action: 0
@@ -201,24 +237,11 @@ module.exports = syrup()
})
return {
unlock: function() {
service.socket.write('unlock\n')
}
, lock: function() {
service.socket.write('lock\n')
}
, acquireWakeLock: function() {
service.socket.write('acquire wake lock\n')
}
, releaseWakeLock: function() {
service.socket.write('release wake lock\n')
}
, identity: function() {
service.socket.write(util.format(
'show identity %s\n'
, options.serial
))
}
unlock: unlock
, lock: lock
, acquireWakeLock: acquireWakeLock
, releaseWakeLock: releaseWakeLock
, identity: identity
}
})
})