<uses-permission>

Nota : in alcuni casi, le autorizzazioni richieste tramite <uses-permission> può influire sul modo in cui Google Play filtra i tuoi un'applicazione. Se richiedi un'autorizzazione relativa all'hardware, ad esempio CAMERA, Google Play presuppone che le tue richiede la funzionalità hardware sottostante e filtra l'applicazione stessa da dispositivi che non li offrono.

Per controllare i filtri, dichiara sempre esplicitamente funzionalità hardware negli elementi <uses-feature>, anziché fare affidamento su Google Play per "scoprire" i requisiti in Elementi <uses-permission>. Se poi vuoi disattivare per un determinato elemento, puoi aggiungere android:required="false" al <uses-feature>.

Per un elenco di autorizzazioni che implicano funzionalità hardware, consulta la documentazione relativa a <uses-feature>.

sintassi:
<uses-permission android:name="string"
        android:maxSdkVersion="integer" />
contenuto in:
<manifest>
description:
Specifica un'autorizzazione di sistema che l'utente deve concedere che l'app funzioni correttamente. L'utente concede le autorizzazioni quando installazioni di app, su dispositivi con Android 5.1 e versioni precedenti o durante l'esecuzione dell'app su dispositivi con Android 6.0 e versioni successive.

Per ulteriori informazioni sulle autorizzazioni, consulta Autorizzazioni nella panoramica del file manifest dell'app e Guida alle autorizzazioni su Android. Un elenco di autorizzazioni definite dalla piattaforma di base è disponibile all'indirizzo android.Manifest.permission.

attributi:
android:name
Il nome dell'autorizzazione. Può essere un'autorizzazione definita con l'<permission> un'autorizzazione definita da un'altra applicazione o uno degli alle autorizzazioni di sistema standard, "android.permission.CAMERA" o "android.permission.READ_CONTACTS". Come mostrano questi esempi, il nome di un'autorizzazione di solito include il nome del pacchetto come prefisso.
android:maxSdkVersion
Il livello API massimo a cui viene concessa questa autorizzazione alla tua app. L'impostazione di questo attributo è utile se l'autorizzazione richiesta dalla tua app non è più necessaria a partire dall'inizio a un determinato livello API.

Ad esempio, a partire da Android 4.4 (livello API 19) non è più necessario per la tua app per richiedere WRITE_EXTERNAL_STORAGE scrivere nelle proprie directory specifiche dell'applicazione sullo spazio di archiviazione esterno, fornita da getExternalFilesDir().

Tuttavia, l'autorizzazione è richiesta per le API di livello 18 e precedenti. Puoi quindi dichiarare l'autorizzazione è necessaria solo fino al livello API 18 con una dichiarazione come la seguente:

<uses-permission
     android:name="android.permission.WRITE_EXTERNAL_STORAGE"
     android:maxSdkVersion="18" />

In questo modo, a partire dal livello API 19, il sistema non concede più alla tua app Autorizzazione WRITE_EXTERNAL_STORAGE.

Aggiunto nel livello API 19.

introdotto in:
Livello API 1
vedi anche: