2012-06-06 18 views
1

在Android冰淇淋三明治版本中,按键组合VolumeDown + Power按钮可实现screencapture。我试图通过发送来自背景android服务的关键事件来编程。但也有2个问题,模拟VolumeDown + Power按钮以从我的Android服务以编程方式捕获屏幕

  1. 我,直到按下电源按钮来保存VolumeDown关键,但我没有发现任何仪器API sendKeysSync()等。其中仅发送键按下按钮\键码的情况下。
  2. 发送KEYCODE_POWER根本不起作用。

请让我知道,如果这些是由于各种原因的Android ICS(冰淇淋三明治)版本本身的限制,或者它可能吗?

此外,如果有这样的背景抓屏没有生根手机的任何其他方式,让我知道..

-Thx在进阶 -rahul

回答

1

服务不允许注入事件(关键,触摸等)进入活动。这是系统设计人员做出的选择,以防止软件将设备“控制”在远离用户的地方。

如果在后台运行的软件能够做到这一点,那么执行令人难以置信的恶意事情将变得轻而易举。

+0

那么在这种情况下,这可以通过Activity来完成吗? –

+0

您可以使用[Instrumentation APIs](http://developer.android.com/reference/android/app/Instrumentation.html)将事件注入到您自己的活动中。您不能将事件注入任何不属于您自己的活动股票设备使用公共API。 – FoamyGuy

相关问题