Support uninstalling applications.

This commit is contained in:
Simo Kinnunen
2014-04-03 20:28:14 +09:00
parent 8584daaa71
commit 655af52659
4 changed files with 53 additions and 0 deletions

View File

@@ -434,6 +434,16 @@ module.exports = function(options) {
)
])
})
.on('device.uninstall', function(channel, responseChannel, data) {
joinChannel(responseChannel)
push.send([
channel
, wireutil.transaction(
responseChannel
, new wire.UninstallMessage(data)
)
])
})
})
.finally(function() {
// Clean up all listeners and subscriptions

View File

@@ -132,4 +132,35 @@ module.exports = syrup.serial()
])
})
})
router.on(wire.UninstallMessage, function(channel, message) {
log.info('Uninstalling "%s"', message.package)
var seq = 0
adb.uninstall(options.serial, message.package)
.then(function() {
push.send([
channel
, wireutil.envelope(new wire.TransactionDoneMessage(
options.serial
, seq++
, true
, 'success'
))
])
})
.catch(function(err) {
log.error('Uninstallation failed', err.stack)
push.send([
channel
, wireutil.envelope(new wire.TransactionDoneMessage(
options.serial
, seq++
, false
, 'fail'
))
])
})
})
})