如果應用程式需要與其他應用程式互動才能達到其用途,測試 Android 11 (API 級別 30) 以上版本套件瀏覽權限的變更對應用程式的影響,會很有幫助。
本指南也會提供建議,讓您瞭解如何測試行為變更情形,也會協助您設定記錄訊息,更精細地判斷應用程式可能受到的影響。
測試瀏覽權限變更
如要測試此行為變更是否會影響到您的應用程式,請完成下列步驟:
- 安裝 Android Studio 3.6.1 或以上版本。
- 安裝 Android Studio 支援的最新版 Gradle。
- 請將應用程式的
targetSdkVersion
設為30
或以上。 - 請勿在應用程式資訊清單檔案中加入
<queries>
元素。 - 請撥
getInstalledApplications()
或getInstalledPackages()
。這兩種方法在成功時都會傳回篩選清單。 - 查看應用程式的哪些功能無法運作。
- 導入適當的
<queries>
項目來修正這些功能。
設定套件篩選的記錄訊息
如要進一步瞭解應用程式的預設瀏覽權限對應用程式有何影響,您可以啟用套件篩選的記錄訊息。如果您在 Android Studio 中開發測試應用程式或可進行偵錯的應用程式,系統記錄會為您提供了這項功能。或者,您也可以在終端機視窗中執行下列指令,手動啟用該功能:
adb shell pm log-visibility --enable PACKAGE_NAME
然後,每當從 PackageManager
物件的傳回值中篩選套件時,您會在 Logcat 中看到類似以下內容的訊息:
I/AppsFilter: interaction: PackageSetting{7654321 \ com.example.myapp/12345} -> PackageSetting{...} BLOCKED