Uwaga: w niektórych przypadkach wymagane uprawnienia
do <uses-permission>
może wpływać na sposób filtrowania przez Google Play
aplikacji. Jeśli poprosisz o uprawnienia związane ze sprzętem, takie jak
CAMERA
, Google Play zakłada, że Twoja
aplikacja wymaga odpowiedniej funkcji sprzętowej i filtruje aplikację
z urządzeń, które nie oferują tej funkcji.
Aby kontrolować filtrowanie, zawsze jawnie deklaruj
funkcje sprzętowe w elementach <uses-feature>
, a nie
dzięki Google Play wymagania
<uses-permission>
elementów. Następnie, jeśli chcesz wyłączyć
pod kątem konkretnej cechy, możesz dodać
android:required="false"
do zbioru danych
<uses-feature>
.
Dla listy uprawnień, które sugerują,
funkcji sprzętu można znaleźć w dokumentacji
<uses-feature>
.
- składnia:
<uses-permission android:name="string" android:maxSdkVersion="integer" />
- zawarte w:
<manifest>
- description:
- Określa uprawnienia systemowe, które użytkownik musi przyznać
aby aplikacja działała prawidłowo. Użytkownik przyznaje uprawnienia, gdy
instalowania aplikacji na urządzeniach z Androidem 5.1 lub starszym oraz podczas działania aplikacji na urządzeniach z Androidem 6.0 lub nowszym.
Więcej informacji o uprawnieniach znajdziesz tutaj: Uprawnienia w omówieniu manifestu aplikacji oraz Przewodnik po uprawnieniach na Androidzie. Lista uprawnień zdefiniowana przez platformę podstawową znajduje się na stronie
android.Manifest.permission
- atrybuty:
android:name
- Nazwa uprawnienia. Może to być uprawnienie określone przez
aplikacji w programie
<permission>
, uprawnienie zdefiniowane przez inną aplikację lub jedno z standardowych uprawnień systemowych, takich jak"android.permission.CAMERA"
lub"android.permission.READ_CONTACTS"
. Jak widać na tych przykładach, nazwa uprawnienia zwykle zawiera jako prefiks nazwę pakietu. android:maxSdkVersion
- Najwyższy poziom interfejsu API, na którym przyznano aplikacji to uprawnienie.
Ustawienie tego atrybutu jest przydatne, jeśli uprawnienia wymagane przez aplikację nie są już potrzebne
na określonym poziomie interfejsu API.
Na przykład od Androida 4.4 (poziom interfejsu API 19) aplikacja nie jest już potrzebna aby poprosić o
WRITE_EXTERNAL_STORAGE
do zapisu w pamięci zewnętrznej we własnych katalogach aplikacji, które są źródło:getExternalFilesDir()
.Pamiętaj jednak: uprawnienie jest wymagane w przypadku interfejsu API na poziomie 18 lub niższym. Możesz więc zadeklarować, uprawnienia są potrzebne tylko do poziomu interfejsu API 18 z deklaracją podobną do tej:
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" android:maxSdkVersion="18" />
W ten sposób, począwszy od poziomu interfejsu API 19, system nie będzie już przyznawać aplikacji Uprawnienie
WRITE_EXTERNAL_STORAGE
.Dodano w interfejsie API poziomu 19.
- wprowadzone w:
- Poziom API 1
- zobacz też: