注意:在某些情況下,您透過 <uses-permission>
要求的權限可能會影響 Google Play 篩選應用程式的方式。如果您要求硬體相關權限 (例如 CAMERA
),Google Play 會假設您的應用程式需要基礎硬體功能,並從不支援該功能的裝置篩選應用程式。
如要控制篩選功能,請一律在 <uses-feature>
元素中明確宣告硬體功能,不要仰賴 Google Play「探索」<uses-permission>
元素的需求。然後,如要針對特定功能停用篩選,您可以在 <uses-feature>
宣告中加入 android:required="false"
屬性。
如需隱含硬體功能的權限清單,請參閱 <uses-feature>
元素的說明文件。
- 語法:
<uses-permission android:name="string" android:maxSdkVersion="integer" />
- 包含於:
<manifest>
- 說明:
- 指定使用者必須授予哪項系統權限,應用程式才能正常運作。在搭載 Android 5.1 以下版本的裝置上安裝應用程式,或在搭載 Android 6.0 以上版本的裝置上執行應用程式時,使用者皆會授予權限。
如要進一步瞭解權限,請參閱應用程式資訊清單總覽中的「權限」一節,以及「Android 中的權限」指南。您可以在
android.Manifest.permission
查看基礎平台定義的權限清單。 - 屬性:
android:name
- 權限的名稱。這可以是應用程式使用
<permission>
元素定義的權限、其他應用程式定義的權限,或是標準的系統權限,例如"android.permission.CAMERA"
或"android.permission.READ_CONTACTS"
。如這些範例所示,權限名稱通常以套件名稱做為前置字元。 android:maxSdkVersion
- 應用程式能取得此權限的最高 API 級別。如果從特定 API 級別開始就不再需要用到應用程式所需的權限,設定此屬性將非常實用。
舉例來說,自 Android 4.4 (API 級別 19) 起,應用程式不再需要請求
WRITE_EXTERNAL_STORAGE
權限,即可在外部儲存空間寫入其專屬的特定目錄 (由getExternalFilesDir()
提供)。不過,API 級別 18 以下則「需要」權限。因此,您可以透過下列宣告,聲明只有 API 級別 18 以下需要此權限:
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" android:maxSdkVersion="18" />
這樣一來,從 API 級別 19 開始,系統就不會再將
WRITE_EXTERNAL_STORAGE
權限授予您的應用程式。已在 API 級別 19 中新增。
- 導入版本:
- API 級別 1
- 另請參閱: