2017-07-08 52 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開始,並進一步分析它在何處使用。

第一個選項,您可以阻止所有其他應用程序啓動或恢復,第二種方法是,您的用戶界面將成爲狀態欄的一部分,其他應用程序將繼續照常運行。