7

Kiedy kompiluję moją aplikację do wydania, do mojego manifestu dodawane jest nowe uprawnienie o nazwie USE_CREDENTIALS.Android Studio dodaje mi android.permission.USE_CREDENTIALS do mojego manifestu

<uses-permission android:name="android.permission.USE_CREDENTIALS"/> 

Dlaczego? Co to za pozwolenie? Nie mogę znaleźć żadnych oficjalnych informacji na ten temat w przewodniku dla programistów Androida!

Dzięki

+0

Czy możesz podać zależności, których używasz? – ianhanniballake

+0

Używam wielu bibliotek JAR projektów słoików stron trzecich. jeśli chcesz, mogę je opublikować, ale nie będziesz wiedział, co jest w tych projektach. – NullPointerException

+0

Zwykle używasz tego, gdy pytasz o tożsamość niektórych osób, takich jak e-mail, numer telefonu, imię, nazwisko itp. –

Odpowiedz

16

dlaczego?

Prawdopodobnie otrzymujesz go via some library that you are using.

Co to za pozwolenie?

Używane jest, przed systemem Android 6.0, do używania rzeczy takich jak AccountManager.

Nie mogę znaleźć żadnych oficjalnych informacji na ten temat w przewodniku dla programistów Androida!

To dlatego, że Google pozbyło się tego pozwolenia w systemie Android 6.0, a dokumentacja pod numerem http://developer.android.com naprawdę źle radzi sobie z usuniętymi elementami interfejsu API.

+0

Czy mogę usunąć to pozwolenie z moja aplikacja z bezpiecznym wynikiem? – NullPointerException

+0

@ AndroidUser99: Nie mam sposobu, aby wiedzieć. Jeśli przeczytasz wpis na blogu, do którego się przyłączyłem w pierwszym akapicie mojej odpowiedzi, przedstawiam twoje opcje, aby spróbować go pozbyć. Ale tylko autor biblioteki, która prosi o pozwolenie, może ci powiedzieć, co możesz i czego nie możesz zrobić, jeśli nie masz takiego pozwolenia. – CommonsWare

+1

Pozbyłem się USE_CREDENTIALS i moja aplikacja rozbił się na galaktyce s5, mimo że wciąż miałem GET_ACCOUNTS i kompilowałem z target = 23 .. Sugeruję zachowanie tych starych uprawnień w twoim manifeście. –

Powiązane problemy