Mam aplikację, która miała tylko niewielkie zmiany w ciągu ostatnich kilku lat. Wczoraj wydałem poprawkowym do Google Play, i zauważyłem, że moja aplikacja wymaga nagle 5 nowych uprawnień:Moja aplikacja na Androida nagle wymaga uprawnień, które nie są ustawione w AndroidManifest.xml. Czemu?
- android.permission.ACCESS_COARSE_LOCATION
- android.permission.GET_ACCOUNTS
- android.permission.READ_EXTERNAL_STORAGE maxSdkVersion = 18
- android.permission.USE_CREDENTIALS
- android.permission.WRITE_EXTERNAL_STORAGE
Nie wprowadziłem żadnych zmian w AndroidManifest.xml, więc te 5 uprawnień nie jest tam wymienionych.
Używam biblioteki rozliczeń Google (com.android.billing) do zakupów w aplikacji. Mogło to zostać automatycznie zaktualizowane przez Android Studio.
Mam zmodernizowane tych bibliotek, a także:
- com.android.support:appcompat-v7:22.1.1 -> 22.2.0
- com.android.support:support-v4:22.1 0,1 -> 22.2.0
- com.google.android.gms: plac usługi: 7.3.0 -> 7.5.0
Czy ktoś wie dlaczego tak się stało?
aktualizacja z ODPOWIEDŹ
@ ahmad-Nawaz ma rację, a jego odpowiedź doprowadziła mnie do tego dojść. Oto bardziej szczegółowa odpowiedź na moje pytanie:
Biblioteka, która chciała uzyskać dodatkowe uprawnienia, to Usługi Google Play.
W Google Play w wersji 6.5 i nowszych, można (i prawdopodobnie powinien) określić, jakie konkretne API trzeba, zamiast po prostu importowanie cały pakiet.
W moim przypadku, po prostu przy użyciu play-usługi-Analytics, więc zmieniłem to w moim build.gradle
compile 'com.google.android.gms:play-services:7.5.0'
do tego
compile 'com.google.android.gms:play-services-analytics:7.5.0'
Po tej zmianie wszystkich 5 uprawnienia wymienione w pierwotnym pytaniu zniknęły.
Oto pełna lista poszczególnych API Usług Google Play: https://developers.google.com/android/guides/setup#split
to naprawdę pomogło mi mam ten sam problem, a ja po prostu 'importowany play-services-analytics' zamiast całego pakietu i wszystkie nagłe wg uprawnień dla konta i wykorzystania rachunków get zniknął :) – hadi