簡體   English   中英

如何訪問另一個應用程序的權限屏幕?

[英]How to access permission screen of another app?

PermissionQ 應用程序主屏幕

PermissionQ應用程序如何訪問另一個應用程序的權限屏幕,因為在stackoverflow上有一個關於權限屏幕的問題的答案it is not possible

根據 Android Docs,有一個名為PackageManager的類可以幫助您查看手機上已安裝的軟件包。 此外,它還有以下方法可以回答您的問題。

getPackageInfo(String packageName, int flags) :檢索有關系統上安裝的應用程序包的整體信息。

當與標志PackageManager.GET_PERMISSIONS結合使用時,您可以檢索包的權限。


現在關於某個應用程序的權限的實際更改,我檢查了執行您詢問的應用程序之一。

該應用程序擁有的是它自己的可訪問性服務,可以為您關閉權限。

那么,發生的事情是

  1. 您將通過意圖和包名稱以編程方式被發送到某個應用程序的權限屏幕。
Intent intent = new Intent(Settings.ACTION_APPLICATION_DETAILS_SETTINGS);
Uri uri = Uri.fromParts("package", packageName, null);
intent.setData(uri);
startActivity(intent);
  1. 然后他們擁有的無障礙服務會為您關閉指定的權限。 它指出無障礙服務需要Observe your actions ,這可能用於知道某個應用程序的權限屏幕已打開。 然后它使用Retrieve window content來查看激活按下並與之交互所需的復選框或切換。

您必須從設置中切換輔助功能服務,否則它不會啟動。 這是我所知道的您可以在沒有 root 權限的情況下執行此類操作的唯一方法。

暫無
暫無

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

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