远程控制Android设备 - 模拟任何已安装的应用程序的物理按键?

时间:2011-01-20 06:32:44

标签: android bluetooth disability

目标:

远程控制Android设备。我正在尝试为无法在Android手机或平板电脑上使用触摸屏或小型​​滑出式键盘的残障人士制作备用输入设备。我需要能够控制整个Android设备 - 发送键盘,如KEYCODE_DPAD_DOWN等。将使用操纵杆或其他输入设备,理想情况下,命令将通过蓝牙发送到设备。

这就是我现在的位置:

我可以通过Monkeyrunner发送这些击键来控制一个活动设备(感谢您的帮助,Roman R.!)。问题是,这需要将计算机连接到设备并配置为对其进行编程。我想完全从系统中删除计算机,并允许个人对其Android设备进行完全(远程)控制。也许通过在后台运行的应用或服务,处理蓝牙交换并产生相应的关键事件。

到目前为止我的研究:

可以发送KeyEvents,但这似乎只允许与您自己的应用程序进行交互 - 例如,将文本输入EditText框。 (link

也可以(据我所知)在设备上捕获物理键事件并执行一些操作以响应该事件。

最后,看起来谷歌确切地知道我正在尝试做什么,但出于安全原因而不允许它。 (link - 在页面底部有人链接到this博客,其中声明不允许这样做。)

我知道实现这样的事情可能存在安全问题,但该项目的整个目标是让用户完全(远程)控制Android系统。显然,有必要明确要求用户授权此控件。这种控制已经可用,他们称之为Device Administration。这允许应用程序控制系统的非常密切的部分,并且正确地需要明确的授权。这个遥控系统也不例外。

在我的情况下,它将用于帮助身体残疾的姐姐。您可以使用它来创建飞行控制系统或其他类似游戏手柄的控制器。实现这种接口有很多理由。

最后,谷歌正在不断更新Android,上面的博客条目指出这是不可能的,已经超过两年了。从那以后,很多事都发生了变化......

有谁知道怎么做?如果还没有完成,您是否知道如何正式请求将新功能添加到Android系统中,以便在以后的版本中允许它?

谢谢!

1 个答案:

答案 0 :(得分:2)

嗨glenn我很感激你的想法。

设备管理也可以远程完成,因为你说它可以访问系统级别,不幸的是它只能访问很少的系统级功能,如擦除设备,锁定和应用程序的其他密码设置。但远程控制,不,我不认为设备管理有帮助。

我认为使用控制设备的USB配件。看看这个

http://www.microchip.com/stellent/idcplg?IdcService=SS_GET_PAGE&nodeId=1406&dDocName=en553673

以下链接(软件支持)对入门非常有帮助

http://ww1.microchip.com/downloads/en/DeviceDoc/Android%20Library%20Help.pdf

他们还有一个配件开发套件......希望它可以帮到你。