Mam aplikację systemową, która używa uprawnień systemowych i mam te uprawnienia wymienione w manifeście. Eclipse wyświetla następujący błąd, gdy próbuję utworzyć kompilację (działa kompilacja z wiersza poleceń):
Uprawnienie jest przyznawane tylko aplikacjom systemowym
Wiem już, że moja aplikacja wymaga uprawnień systemowych i nie stanowi to dla mnie problemu, ponieważ moja aplikacja będzie używana tylko na zrootowanych telefonach. Więc chcę stłumić ten błąd, ktoś wie jak?
EDYTUJ
Mój projekt już dobrze kompiluje się w wierszu poleceń, instaluje się, uruchamia itd. Mój problem polega na tym, że zaćmienie wyświetla błąd dla prawidłowego pliku manifestu.
Odpowiedzi:
W Eclipse:
Na liście znajdź wpis z
ID = ProtectedPermission
. Ustaw wartość istotności na mniejszą niż błąd. W ten sposób nadal możesz skompilować projekt za pomocą Eclipse.W Android Studio:
Pod
Android Lint
, zlokalizujUsing system app permission
. Usuń zaznaczenie pola wyboru lub wybierz poziom ważności niższy niż błąd.źródło
Android > Lint > Correctness
dla mnie pod.Aby zignorować ten błąd tylko dla jednej instancji, dodaj
tools:ignore="ProtectedPermissions"
atrybut do deklaracji uprawnień. Oto przykład:Musisz dodać
tools
przestrzeń nazw w głównym elemencie manifestuźródło
Od czasu do czasu mam ten sam błąd (kiedy ustawiam lokalizację instalacji na „preferuj zewnętrzną” w manifeście). Po prostu wyczyść i przebuduj projekt. Pracuje dla mnie.
źródło
kiedy twoje zezwolenie na dodawanie w manifeście, potem w eclipse, przejdź do projektu i clic
k na czysty projekt
źródło
Spróbuj dodać ten atrybut do tego uprawnienia.
źródło
Preferencje -> EditorEditor -> Inspekcje -> Android Lint -> odznacz pozycję Korzystanie z aplikacji systemowej permissio
źródło
Ścieżka w Android Studio na komputerze Mac:
Android Studio -> Preferencje -> Edytor -> Inspekcje
Rozwiń Android -> Rozwiń Lint -> Rozwiń poprawność
Usuń zaznaczenie pola wyboru Korzystanie z uprawnień aplikacji systemowej
Kliknij „ZASTOSUJ” -> „OK”
źródło