当应用程序注意力不集中时,活动方法不起作用

时间:2018-07-08 20:28:49

标签: android android-activity android-service android-mediaprojection

我遇到了一个问题,请多多指教。我正在Android Studio中编写一个小的Android程序,该程序使用MediaProjection抓取整个屏幕的屏幕截图,然后要将该屏幕截图作为位图传递给我的系统叠加层(基于chatheads示例)。当MediaProjection运行并且Imagereader创建位图时,我正在将位图传递到类全局变量中,以便可以将其传递到系统覆盖服务中并显示它。我遇到的问题是,如果我“跳出”到另一个应用程序,我的方法将从MainActivity停止工作。当我的应用程序处于焦点状态时,一切运行良好;当另一个应用程序处于焦点状态时,系统叠加层会像应有的那样收缩和扩展,但是不再拍摄屏幕截图。我的理解是,因为我的应用程序因为没有被关注而变得“睡着了”。谁能推荐解决方案?我可以暂时唤醒mainActivity以便截屏吗?我可以保持我的活动不因应用程序切换而睡着吗?我可以将焦点移到我的应用程序上,截取屏幕截图,然后将焦点切换到上一个应用程序吗?还有其他方法吗?

我的代码可以在这里找到:https://github.com/asheron21/FacebookLikeChathead

MainActivity:https://github.com/asheron21/FacebookLikeChathead/blob/master/app/src/main/java/com/example/chatheads/MainActivity.java

服务:https://github.com/asheron21/FacebookLikeChathead/blob/master/app/src/main/java/com/example/chatheads/ChatHeadService.java

全局变量:https://github.com/asheron21/FacebookLikeChathead/blob/master/app/src/main/java/com/example/chatheads/Globals.java

谢谢!

0 个答案:

没有答案