簡體   English   中英

如何檢測到某個特定的應用程序已啟動?

[英]How can I detect that a particular application has been launched?

上下文

有一個與我的應用程序競爭的應用程序,其硬件資源應該是互斥鎖,但不是。 硬件資源在公共Android SDK中沒有API,並且競爭的應用程序有望成為有需要的唯一應用程序。 硬件資源的控制固件也希望一次只能被一個應用程序獲取。

問題

固件無法很好地處理硬件資源上的沖突,並且如果用戶在我的應用程序運行時啟動競爭應用程序,我的測試設備通常需要重新啟動(我可以使用ActivityManager.getRunningServices檢查競爭應用程序的服務() ,如果用戶在競爭應用程序運行時啟動了我的應用程序,則可以停止我的應用程序嘗試獲取硬件資源)。
我無權訪問競爭應用程序的源代碼或系統映像源代碼,因此我的應用程序必須負責處理競爭應用程序的不良行為和/或固件對硬件資源競爭的不良處理。

問題

當啟動具有已知組件名稱的應用活動或服務時,是否可以讓運行在Android Marshmallow上的常規(即非系統)應用接收回調?

當啟動具有已知組件名稱的應用活動或服務時,是否可以讓運行在Android Marshmallow上的常規(即非系統)應用接收回調?

不會。事實上,出於隱私和安全原因,Android 5.0+會竭盡全力向您隱藏其他正在運行的應用程序的實時知識。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM