測試套件瀏覽權限行為

如果應用程式需要與其他應用程式互動才能達到其用途,測試 Android 11 (API 級別 30) 以上版本套件瀏覽權限的變更對應用程式的影響,會很有幫助。

本指南也會提供建議,讓您瞭解如何測試行為變更情形,也會協助您設定記錄訊息,更精細地判斷應用程式可能受到的影響。

測試瀏覽權限變更

如要測試此行為變更是否會影響到您的應用程式,請完成下列步驟:

  1. 安裝 Android Studio 3.6.1 或以上版本。
  2. 安裝 Android Studio 支援的最新版 Gradle。
  3. 請將應用程式的 targetSdkVersion 設為 30 或以上。
  4. 請勿在應用程式資訊清單檔案中加入 <queries> 元素。
  5. 請撥 getInstalledApplications()getInstalledPackages()。這兩種方法在成功時都會傳回篩選清單。
  6. 查看應用程式的哪些功能無法運作。
  7. 導入適當的 <queries> 項目來修正這些功能。

設定套件篩選的記錄訊息

如要進一步瞭解應用程式的預設瀏覽權限對應用程式有何影響,您可以啟用套件篩選的記錄訊息。如果您在 Android Studio 中開發測試應用程式或可進行偵錯的應用程式,系統記錄會為您提供了這項功能。或者,您也可以在終端機視窗中執行下列指令,手動啟用該功能:

adb shell pm log-visibility --enable PACKAGE_NAME

然後,每當從 PackageManager 物件的傳回值中篩選套件時,您會在 Logcat 中看到類似以下內容的訊息:

I/AppsFilter: interaction: PackageSetting{7654321 \
  com.example.myapp/12345} -> PackageSetting{...} BLOCKED