2017-07-08 38 views
0

我正在尝试为Android创建附件。当连接到手机时,它将启动一个应用程序来显示一些信息。到现在为止还挺好。我得到了这个运行的演示。在Android中连接配件时获取屏幕或屏幕的一部分

我希望这个应用程序可见,不能关闭,除非你删除附件。我发现了一些方法来做到这一点,但他们不能保证工作。在其他应用程序上绘图需要启用特定的用户操作,如监视正在运行的进程。

enter image description here

是否有这类问题的非哈克的解决方案?

我可以编译我自己的Android版本,我可以用系统签名签署我的应用程序,如果这可以有所作为。

回答

1

如果您有选择编辑Android源代码,请编辑core/java/android/app/ActivityThread.java文件以修改handleMessage()方法。这个地方发起,恢复,停止和销毁活动。这种方法的作用远不止于此,而是针对您的用例,您可以在其中添加检查以查看您的硬件是否连接到Android手机,然后选择处理或忽略适当的消息。

如果您有选择编辑Android源代码的方法,另一种方法是修改状态栏本身并在状态栏上方添加您的视图。状态栏由SystemUI包管理,该包位于frameworks/base/packages/SystemUI/下,我将以此文件/frameworks/base/packages/SystemUI/res/layout/super_status_bar.xml开始,并进一步分析它在何处使用。

第一个选项,您可以阻止所有其他应用程序启动或恢复,第二种方法是,您的用户界面将成为状态栏的一部分,其他应用程序将继续照常运行。