Co oznaczają uprawnienia aplikacji na Androida?

26

Podczas instalowania aplikacji aplikacja wyświetla listę uprawnień niezbędnych do wykonywania jej funkcji.

Przykładowy ekran uprawnień

Tworzę tę listę uprawnień zdefiniowanych przez system i opis ich znaczenia. To wiki społeczności, więc jeśli nowe uprawnienia zostaną dodane w przyszłości, można je dodać do tej listy.

Ryan Conrad
źródło
W google: android application permissions. Drugi link.
ArtemStorozhuk,
1
@Zapisz to wiki społeczności dla tego, co oznacza każde pozwolenie. dlatego wszystkie są już wymienione poniżej.
Ryan Conrad
dlaczego nie po prostu skopiować i wkleić link?
ArtemStorozhuk
Podstawową listę można również znaleźć na stronie programistów . Jeśli ktoś szuka niemieckiej listy, można ją znaleźć tutaj (ujawnienie: jestem autorem powiązanej książki, która jest również dostępna do pobrania tutaj jako epub / pdf / mobi za darmo).
Izzy
Poniższe listy są świetne, ale byłoby lepiej dla użytkowników, gdyby każde pozwolenie zawierało korelację z tym, co widać w Sklepie Play lub w czasie instalacji.
CatShoes,

Odpowiedzi:

21

To są wszystkie dostępne uprawnienia, których może wymagać aplikacja. Z tej listy są takie, które mogą być „wymagane” tylko przez aplikacje „System”. Aplikacje, które nie są aplikacjami systemowymi, nie będą mogły żądać uprawnień do „Uprawnienia systemu”. Tylko aplikacje znajdujące się w lokalizacji / system / app i podpisane za pomocą klucza systemowego mogą żądać tych konkretnych uprawnień systemowych.

Są to nazwy, które są używane przez programistę aplikacji do żądania pozwolenia, ale nazwa wyświetlana podczas instalacji powinna mieć podobne brzmienie do nazwy.


Uprawnienia

  • ACCESS_CHECKIN_PROPERTIES
    • Umożliwia dostęp do odczytu / zapisu do tabeli „właściwości” w bazie danych meldowań (zabezpieczenia Unix), aby zmienić przesyłane wartości.
    • Grupa: LOKALIZACJA
    • Poziom: SYSTEM
  • ACCESS_COARSE_LOCATION
    • Zezwala aplikacji na dostęp do przybliżonej lokalizacji pochodzącej ze źródeł lokalizacji sieciowych, takich jak wieże komórkowe i Wi-Fi.
    • Grupa: LOKALIZACJA
    • Z tego uprawnienia zwykle korzystają aplikacje, które wyświetlają reklamy oparte na lokalizacji przez wydawców takich jak AdMob (Google).
  • ACCESS_FINE_LOCATION
    • Zezwala aplikacji na dostęp do dokładnej lokalizacji ze źródeł lokalizacji, takich jak GPS, wieże komórkowe i Wi-Fi.
    • Grupa: LOKALIZACJA
    • Z tego uprawnienia mogą korzystać aplikacje, które wyświetlają reklamy oparte na lokalizacji przez wydawców takich jak AdMob (Google). Jest również używany przez aplikacje, które chcą twojej dokładnej lokalizacji. Przykładami mogą być aplikacje do nawigacji, aplikacje do odprawy, takie jak 4square.
  • ACCESS_LOCATION_EXTRA_COMMANDS
    • Zezwala aplikacji na dostęp do dodatkowych poleceń dostawcy lokalizacji.
      Dobry przykład słabej dokumentacji, ponieważ nawet książki o stanie rozwoju aplikacji na Androida : Dokumentacja Androida nie mówi nam, które polecenia lokalizacji są „dodatkowe”, więc poprosimy o wszystkie.
    • Grupa: LOKALIZACJA
  • ACCESS_MOCK_LOCATION
    • Zezwala aplikacji na tworzenie fałszywych dostawców lokalizacji do testowania i jest przeznaczona do użytku programistycznego np. W emulatorze Androida (aby uchronić programistę przed bieganiem i sprawdzaniem, czy pozycje są wyświetlane poprawnie). Przypadki, w których jest to potrzebne w aplikacji gotowej dla użytkowników końcowych, powinny być rzadkie.
    • Pozwala to aplikacji na sfałszowanie informacji o lokalizacji.
    • Grupa: LOKALIZACJA
  • ACCESS_NETWORK_STATE
    • Zezwala aplikacjom na dostęp do informacji o sieciach.
    • Informacje, w tym informacje o tym, czy sieć jest dostępna (lub po prostu się łączy), z jakim typem sieci jest podłączone urządzenie, jeśli w ogóle (WiFi, 3G, LTE), jeśli jest w roamingu, a także powody nieudanej próby połączenia (jeśli taka istnieje) .
    • Dobre wykorzystanie: aplikacja może sprawdzić stan twojego połączenia przed próbą uzyskania dostępu do Internetu i np. Ograniczyć się do Wi-Fi dla niektórych działań.
    • Niewłaściwe użycie: Tylko w połączeniu z innymi uprawnieniami (np. Zbieranie danych do profilowania).
    • Grupa: SIEĆ
  • ACCESS_SURFACE_FLINGER
    • Zezwala aplikacji na korzystanie z funkcji niskiego poziomu SurfaceFlinger.
      SurfaceFlinger jest częścią środowiska medialnego Androida. Zapewnia kompozytor, który dba o renderowanie w buforach ramek (więc ma to związek z grafiką).
    • Grupa: SYSTEM_TOOLS
    • Poziom: SYSTEM
  • ACCESS_WIFI_STATE
    • Zezwala aplikacjom na dostęp do informacji o sieciach Wi-Fi
    • Grupa: SIEĆ
    • Może tego wymagać dowolna aplikacja korzystająca z dostępu do Internetu. Aplikacja może sprawdzić stan połączenia przed próbą uzyskania dostępu do Internetu.
    • Dobre / złe użycie: patrz ACCESS_NETWORK_STATE powyżej.
  • MENADŻER KONTA
    • Zezwala aplikacjom na dzwonienie do AccountAuthenticators. Tylko system może uzyskać to uprawnienie.
      Account manager to usługa działająca za kulisami i dbająca o to, aby wszystko działało zgodnie z oczekiwaniami.
    • Grupa: RACHUNKI
    • Poziom: SYSTEM
    • To uprawnienie jest zastrzeżone dla aplikacji systemowych.
  • ADD_VOICEMAIL (4.0+)
    • Zezwala aplikacji na dodawanie wiadomości głosowych do systemu.
    • Grupa: PERSONAL_INFO
  • AUTHENTICATE_ACCOUNTS
    • Zezwala aplikacji na działanie jako AccountAuthenticator dla AccountManager
    • Grupa: RACHUNKI
    • Dotyczy to aplikacji, które uwierzytelnią Cię w ich serwisie.
      Aplikacja korzystająca z tego uprawnienia zazwyczaj zapewnia interfejs do obsługi określonego typu konta (który nie jest znany w preinstalowanym systemie Android), takim jak Dropbox. Dostarczony system Android nie wie, jak zalogować się do Dropbox i jak postępować z kontem Dropbox - więc aplikacja Dropbox zapewnia ten mechanizm. Ponadto „osoba uwierzytelniająca konto” może ograniczyć działania, które aplikacja może wykonywać na koncie (więc można by np. Zarządzać tym za pomocą interfejsu sieciowego oferowanego przez usługę).
  • BATTERY_STATS
    • Zezwala aplikacji na zbieranie statystyk baterii
    • Widżety baterii i inne narzędzia do informacji o baterii korzystają z tego uprawnienia
    • Grupa: SYSTEM_TOOLS
  • BIND_APPWIDGET
    • Zezwala aplikacji na informowanie usługi AppWidget, która aplikacja może uzyskać dostęp do danych AppWidget. Normalny przepływ użytkowników polega na tym, że użytkownik wybiera AppWidget, aby przejść do określonego hosta, tym samym dając tej aplikacji dostęp do prywatnych danych z aplikacji AppWidget. Aplikacja, która ma to uprawnienie, powinna uszanować tę umowę. Bardzo niewiele aplikacji powinno wymagać korzystania z tego uprawnienia.
    • Grupa: PERSONAL_INFO
    • Poziom: SYSTEM
  • BIND_DEVICE_ADMIN ( 2.2+ )
  • Musi być wymagany przez odbiornik administracyjny urządzenia, aby zapewnić, że tylko system może z nim współdziałać.
    • Grupa: SYSTEM_TOOLS
    • Poziom: SYSTEM
  • BIND_INPUT_METHOD
    • Musi być wymagany przez InputMethodService, aby zapewnić, że tylko system może się z nim powiązać.
    • Grupa: SYSTEM_TOOLS
    • Poziom: SYSTEM
  • BIND_REMOTEVIEWS ( 3.0+ )
    • Musi być wymagany przez RemoteViewsService, aby mieć pewność, że tylko system może się z nim połączyć.
    • Poziom: SYSTEM
  • BIND_TEXT_SERVICE (4.0+)
    • Wymagany przez TextService (np. SpellCheckerService), aby mieć pewność, że tylko system może się z nim połączyć.
    • Grupa: SYSTEM_TOOLS
    • Poziom: SYSTEM
  • BIND_VPN_SERVICE (4.0+)
    • Musi być wymagany przez usługę VPN, aby zapewnić, że tylko system może się z nią połączyć.
    • Grupa: SYSTEM_TOOLS
    • Poziom: SYSTEM
  • BIND_WALLPAPER ( 2.2+ )
    • Wymagane przez WallpaperService, aby mieć pewność, że tylko system może się z nim połączyć.
    • Grupa: SYSTEM_TOOLS
    • Poziom: SYSTEM
  • WIĄZAĆ_*
    • wiele innych podobnych do powyższych dla różnych usług, takich jak NFC, PrintService i inne
  • BLUETOOTH
    • Zezwala aplikacjom na łączenie się ze sparowanymi urządzeniami Bluetooth
    • Grupa: SIEĆ
  • BLUETOOTH_ADMIN
    • Zezwala aplikacjom na wykrywanie i parowanie urządzeń Bluetooth
    • Grupa: SYSTEM_TOOLS
  • BLUETOOTH_PRIVILEGED (4.4+)
    • Zezwala aplikacjom na parowanie urządzeń Bluetooth bez interakcji użytkownika. To nie jest dostępne dla aplikacji stron trzecich.
  • CEGŁA
    • Wymagane, aby móc wyłączyć urządzenie
    • Grupa: SYSTEM_TOOLS
    • Poziom: SYSTEM
  • BROADCAST_PACKAGE_REMOVED
    • Zezwala aplikacji na emisję powiadomienia o usunięciu pakietu aplikacji.
    • Grupa: SYSTEM_TOOLS
    • Poziom: SYSTEM
  • BROADCAST_SMS
    • Zezwala aplikacji na nadawanie powiadomienia o otrzymaniu wiadomości SMS
    • Grupa: WIADOMOŚCI
    • Poziom: SYSTEM
  • BROADCAST_STICKY
    • Zezwala aplikacji na nadawanie lepkich zamiarów. Są to transmisje, których dane są zatrzymywane przez system po zakończeniu, dzięki czemu klienci mogą szybko odzyskać te dane bez konieczności oczekiwania na kolejną transmisję.
    • Grupa: SYSTEM_TOOLS
  • BROADCAST_WAP_PUSH
    • Zezwala aplikacji na nadawanie powiadomienia o otrzymaniu WAP PUSH
    • Grupa: WIADOMOŚCI
    • Poziom: SYSTEM
  • CALL_PHONE
    • Zezwala aplikacji na inicjowanie połączenia telefonicznego bez przechodzenia przez interfejs użytkownika aplikacji Dialer, aby użytkownik mógł potwierdzić połączenie.
    • Grupa: COST_MONEY
    • Umożliwi to aplikacji „monitowanie” o nawiązanie połączenia. Nie będziesz musiał wprowadzać numeru, ale będziesz musiał umieścić przycisk „zadzwoń”. Będziesz mógł zobaczyć numer, który jest wywoływany.
  • CALL_PRIVILEGED
    • Zezwala aplikacji na łączenie się z dowolnym numerem telefonu, w tym z numerami alarmowymi, bez przechodzenia przez interfejs użytkownika aplikacji Dialer w celu potwierdzenia nawiązania połączenia.
    • Grupa: WIADOMOŚCI
    • Poziom: SYSTEM
  • APARAT FOTOGRAFICZNY
    • Wymagany, aby mieć dostęp do urządzenia z kamerą.
    • Grupa: HARDWARE_CONTROLS
    • Każda aplikacja korzystająca z tylnych lub przednich kamer.
  • CAPTURE_AUDIO_OUTPUT (4.4+)
    • Zezwala aplikacji na przechwytywanie wyjścia audio. Nie do użytku przez aplikacje innych firm.
  • CAPTURE_SECURE_VIDEO_OUTPUT (4.4+)
    • Zezwala aplikacji na przechwytywanie bezpiecznego wyjścia wideo. Nie do użytku przez aplikacje innych firm.
  • CAPTURE_VIDEO_OUTPUT (4.4+)
    • Zezwala aplikacji na przechwytywanie wyjścia wideo. Nie do użytku przez aplikacje innych firm.
  • CHANGE_COMPONENT_ENABLED_STATE
    • Pozwala aplikacji na zmianę, czy składnik aplikacji (inny niż jego własny) jest włączony, czy nie.
    • Grupa: SYSTEM_TOOLS
    • Poziom: SYSTEM
  • CHANGE_CONFIGURATION
    • Zezwala aplikacji na modyfikowanie bieżącej konfiguracji, na przykład ustawień regionalnych.
    • Grupa: SYSTEM_TOOLS
  • CHANGE_NETWORK_STATE
    • Zezwala aplikacjom na zmianę stanu połączenia sieciowego
    • Grupa: SYSTEM_TOOLS
  • CHANGE_WIFI_MULTICAST_STATE
    • Zezwala aplikacjom na przejście do trybu multiemisji Wi-Fi
    • Grupa: SYSTEM_TOOLS
  • CHANGE_WIFI_STATE
    • Zezwala aplikacjom na zmianę stanu łączności Wi-Fi
    • Grupa: SYSTEM_TOOLS
  • CLEAR_APP_CACHE
    • Zezwala aplikacji na czyszczenie pamięci podręcznej wszystkich zainstalowanych aplikacji na urządzeniu.
    • Grupa: SYSTEM_TOOLS
  • CLEAR_APP_USER_DATA
    • Zezwala aplikacji na czyszczenie danych użytkownika
    • Grupa: SYSTEM_TOOLS
    • Poziom: SYSTEM
  • CONTROL_LOCATION_UPDATES
    • Umożliwia włączanie / wyłączanie powiadomień o aktualizacji lokalizacji z radia. Nie do użytku przez zwykłe aplikacje.
    • Grupa: LOKALIZACJA
    • Poziom: SYSTEM
  • DELETE_CACHE_FILES
    • Zezwala aplikacji na usuwanie plików pamięci podręcznej.
    • Grupa: SYSTEM_TOOLS
    • Poziom: SYSTEM
  • DELETE_PACKAGES
    • Zezwala aplikacji na usuwanie pakietów.
    • Grupa: SYSTEM_TOOLS
    • Poziom: SYSTEM
  • DEVICE_POWER
    • Umożliwia niskopoziomowy dostęp do zarządzania energią
    • Grupa: SYSTEM_TOOLS
    • Poziom: SYSTEM
  • DIAGNOSTYCZNY
    • Zezwala aplikacjom na dostęp do zasobów diagnostycznych.
    • Grupa: SYSTEM_TOOLS
    • Poziom: SYSTEM
  • DISABLE_KEYGUARD
    • Zezwala aplikacjom na wyłączenie blokady klawiatury
    • Grupa: SYSTEM_TOOLS
  • WYSYPISKO
    • Zezwala aplikacji na pobieranie informacji o zrzutach stanu z usług systemowych.
    • Grupa: SYSTEM_TOOLS
    • Poziom: SYSTEM
  • EXPAND_STATUS_BAR
    • Zezwala aplikacji na rozwijanie lub zwijanie paska stanu.
    • Grupa: SYSTEM_TOOLS
  • TEST FABRYCZNY
    • Uruchom jako aplikacja testowa producenta, działająca jako użytkownik root. Dostępne tylko, gdy urządzenie działa w trybie testowym producenta.
    • Grupa: SYSTEM_TOOLS
    • Poziom: SYSTEM
  • LATARKA
    • Umożliwia dostęp do latarki
    • Grupa: HARDWARE_CONTROLS
    • Zezwala aplikacji na sterowanie lampą błyskową LED z aparatu i sprawienie, aby działała jak latarka.
  • FORCE_BACK
    • Zezwala aplikacji na wymuszenie operacji POWRÓT dla dowolnej aktywności.
    • Grupa: SYSTEM_TOOLS
    • Poziom: SYSTEM
  • GET_ACCOUNTS
    • Umożliwia dostęp do listy kont w usłudze Konta
    • Aplikacje wymagające pewnego rodzaju uwierzytelnienia z kont „podłączonych” do urządzenia. Lista kont jest zwykle wyświetlana, dzięki czemu możesz wybrać konto do użycia z aplikacją. Aby naprawdę korzystać z tych poświadczeń, USE_CREDENTIALSwymagane jest zezwolenie.
    • Grupa: RACHUNKI
    • zobacz także: Co oznacza uprawnienie „odkryj znane konta”?
  • GET_PACKAGE_SIZE
    • Zezwala aplikacji na znalezienie miejsca zajmowanego przez dowolny pakiet.
    • Grupa: SYSTEM_TOOLS
  • GET_TASKS
    • Zezwala aplikacji na uzyskiwanie informacji o aktualnie lub ostatnio uruchomionych zadaniach: miniaturowe przedstawienie zadań, jakie działania są w nim wykonywane itp. Zły policjant: szpieg w poszukiwaniu możliwych wycieków bezpieczeństwa (wrażliwe aplikacje), zbieranie danych. Dobry gliniarz: sprawdź, czy działa własna usługa aplikacji, pokaż ostatnio używane aplikacje (przełącznik zadań), zapewnij zachowanie specyficzne dla aplikacji (np. Narzędzia menedżera orientacji).
    • Grupa: SYSTEM_TOOLS
  • GET_TOP_ACTIVITY_INFO (4.3+)
    • Zezwala aplikacji na pobieranie prywatnych informacji o bieżącej najwyższej aktywności, takich jak dowolny kontekst wspomagający, jaki może zapewnić. Nie do użytku przez aplikacje innych firm.
  • GLOBAL_SEARCH
    • Z tego uprawnienia można korzystać u dostawców treści, aby globalny system wyszukiwania mógł uzyskać dostęp do swoich danych. Zwykle jest używany, gdy dostawca ma pewne uprawnienia chroniące go (które nie powinny być przechowywane w wyszukiwaniu globalnym) i dodawany jako uprawnienie tylko do odczytu do ścieżki w dostawcy, w którym wykonywane są globalne zapytania wyszukiwania. Zezwolenie to nie może być przechowywane przez zwykłe aplikacje; jest używany przez aplikacje do ochrony przed wszystkimi innymi oprócz globalnego wyszukiwania.
    • Grupa: SYSTEM_TOOLS
    • Poziom: SYSTEM
  • HARDWARE_TEST
    • Umożliwia dostęp do peryferyjnych urządzeń. Przeznaczony tylko do testowania sprzętu
    • Grupa: HARDWARE_CONTROLS
  • INJECT_EVENTS
    • Zezwala aplikacji na wstrzykiwanie zdarzeń użytkownika (klawisze, dotyk, trackball) do strumienia zdarzeń i dostarczanie ich do DOWOLNEGO okna. Bez tego pozwolenia możesz dostarczać zdarzenia do okien tylko we własnym procesie. Bardzo niewiele aplikacji powinno wymagać korzystania z tego uprawnienia.
    • Grupa: SYSTEM_TOOLS
    • Poziom: SYSTEM (lub TYLKO APLIKACJA)
  • INSTALL_LOCATION_PROVIDER
    • Zezwala aplikacji na zainstalowanie dostawcy lokalizacji w Menedżerze lokalizacji
    • Grupa: LOKALIZACJA
  • PAKIETY INSTALACYJNE
    • Zezwala aplikacji na instalowanie pakietów.
    • Grupa: SYSTEM_TOOLS
    • Poziom: SYSTEM
  • INSTALL_SHORTCUT (4.4+)
    • Zezwala aplikacji na zainstalowanie skrótu w Launcherze (ekran główny)
  • INTERACT_ACROSS_USERS (4.4+?)
    • Zezwala aplikacji na wywoływanie interfejsów API, które pozwalają jej na interakcje między użytkownikami urządzenia, przy użyciu usług singleton i transmisji skierowanych do użytkowników. To uprawnienie nie jest dostępne dla aplikacji stron trzecich.
    • Grupa: SYSTEM_TOOLS
    • Poziom: SIGNATURE_OR_SYSTEM
    • zobacz także tę odpowiedź
  • INTERNAL_SYSTEM_WINDOW
    • Zezwala aplikacji na otwieranie okien, z których mogą korzystać części systemu interfejsu użytkownika. Nie do użytku przez aplikacje innych firm.
    • Grupa: SYSTEM_TOOLS
    • Poziom: SYSTEM
  • INTERNET
    • Zezwala aplikacjom na otwieranie gniazd sieciowych.
    • Grupa: SIEĆ
    • Każda aplikacja uzyskująca dostęp do Internetu z dowolnego powodu będzie musiała poprosić o to pozwolenie.
  • KILL_BACKGROUND_PROCESSES ( 2.2+ )
    • Zezwala aplikacji na dzwonienie killBackgroundProcesses
    • Grupa: SYSTEM_TOOLS
  • LOCATION_HARDWARE (4.3+)
    • Zezwala aplikacji na używanie funkcji lokalizacji w sprzęcie, takich jak interfejs geofencing. Nie do użytku przez aplikacje innych firm.
  • ZARZĄDZAJ KONTAMI
    • Zezwala aplikacji na zarządzanie listą kont w menedżerze kont AccountManager
    • Grupa: RACHUNKI
    • To uprawnienie pozwala aplikacji na dodawanie / usuwanie kont w menedżerze kont. Podobnie jak podczas logowania do Facebooka, dodaje ono Twoje konto do kont Menedżera konta. Aby uzyskać więcej informacji, zobacz: Co oznacza zezwolenie „MANAGE_ACCOUNTS”? , a także dokumentację AccountManager w witrynie dla programistów Androida.
  • MANAGE_APP_TOKENS
    • Zezwala aplikacji na zarządzanie (tworzenie, niszczenie, porządkowanie Z) tokenami aplikacji w menedżerze okien. Jest to tylko do użytku przez system.
    • Grupa: RACHUNKI
    • Poziom: SYSTEM
  • MANAGE_DOCUMENTS (4.4+)
    • Zezwala aplikacji na zarządzanie dostępem do dokumentów, zwykle jako część selektora dokumentów.
  • MANAGE_USB
    • Zezwala aplikacji na zarządzanie preferencjami i uprawnieniami dla urządzeń USB
    • Grupa: HARDWARE_CONTROLS
    • Poziom: SYSTEM
  • MANAGE_MTP
    • Zezwala aplikacji na dostęp do sterownika jądra USB MTP. Do użytku wyłącznie przez implementację MTP po stronie urządzenia.
    • Grupa: HARDWARE_CONTROLS
    • Poziom: SYSTEM
  • MASTER_CLEAR
    • Poziom: SYSTEM
  • MEDIA_CONTENT_CONTROL (4.4+)
    • Zezwala aplikacji na rozpoznawanie odtwarzanej zawartości i sterowanie jej odtwarzaniem. Nie do użytku przez aplikacje innych firm ze względu na prywatność konsumpcji mediów
  • MODIFY_AUDIO_SETTINGS
    • Zezwala aplikacji na modyfikowanie globalnych ustawień audio
    • Grupa: HARDWARE_CONTROLS
  • MODIFY_PHONE_STATE
    • Umożliwia modyfikację stanu telefonii - włączanie, mmi itp. Nie obejmuje nawiązywania połączeń.
    • Grupa: PHONE_CALLS
    • Poziom: System
  • MOUNT_FORMAT_FILESYSTEMS
    • Umożliwia formatowanie systemów plików dla pamięci wymiennej
    • Grupa: SYSTEM_TOOLS
  • MOUNT_UNMOUNT_FILESYSTEMS
    • Pozwala na montowanie i odmontowywanie systemów plików dla wymiennych pamięci
    • Grupa: SYSTEM_TOOLS
  • NFC (2.3+)
    • Zezwala aplikacjom na wykonywanie operacji we / wy przez NFC
    • Grupa: SIEĆ
  • PERSISTENT_ACTIVITY
    • Zezwól aplikacji na trwałe działanie. deprecated
    • Grupa: SYSTEM_TOOLS
  • PROCESS_OUTGOING_CALLS
    • Zezwala aplikacji na monitorowanie, modyfikowanie lub przerywanie połączeń wychodzących.
    • Grupa: PHONE_CALLS
  • READ_CALENDAR
    • Zezwala aplikacji na odczyt danych kalendarza użytkownika.
    • Grupa: PERSONAL_INFO
  • READ_CALL_LOG ( 4.1+ )
    • Zezwala aplikacji na odczyt dziennika połączeń systemowych, który zawiera informacje o połączeniach przychodzących i wychodzących.
  • READ_CONTACTS
    • Zezwala aplikacji na odczyt danych kontaktów użytkownika.
    • Grupa: PERSONAL_INFO
    • Sprawdź uprawnienia aplikacji.READ_CONTACTS, aby zobaczyć, jakie informacje można uzyskać dzięki temu uprawnieniu.
  • READ_CONTENT_PROVIDER
    • Uzyskaj dostęp do informacji o poczcie
    • Grupa: WIADOMOŚCI
    • Dotyczy to przede wszystkim dostępu do informacji na temat wiadomości e-mail w Gmailu. Programiści mogą korzystać z tego dostawcy treści, aby wyświetlać użytkownikowi informacje o etykietach.
    • zobacz także: Co kryje się za tymi uprawnieniami Gmail / GTalk?
  • READ_EXTERNAL_STORAGE ( 4.1+ )
    • Zapewnia chroniony dostęp do odczytu do pamięci zewnętrznej. W systemie Android 4.1 wszystkie aplikacje nadal mają dostęp do odczytu. Zmieniło się to w Androidzie 4.4 (API poziom 19), który teraz wymaga, aby aplikacje wyraźnie żądały dostępu do odczytu przy użyciu tego uprawnienia. Jeśli aplikacja już zażąda dostępu do zapisu, automatycznie uzyska również dostęp do odczytu.
    • Grupa: PRZECHOWYWANIE
  • READ_FRAME_BUFFER
    • Zezwala aplikacji na robienie zrzutów ekranu i bardziej ogólnie uzyskanie dostępu do danych bufora ramki
    • Grupa: SYSTEM_TOOLS
    • Poziom: SYSTEM
  • READ_GMAIL
  • READ_HISTORY_BOOKMARKS
    • Zezwala aplikacji na odczytywanie (ale nie pisanie) historii przeglądania i zakładek użytkownika.
    • Grupa: PERSONAL_INFO
    • Sprawdź aplikację READ_HISTORY_BOOKMARKS App. aby zobaczyć, jakie informacje można uzyskać za pomocą tego pozwolenia.
  • READ_INPUT_STATE
    • Zezwala aplikacji na pobieranie bieżącego stanu kluczy i przełączników. Jest to tylko do użytku przez system.
    • Grupa: SYSTEM_TOOLS
    • Poziom: SYSTEM
  • READ_LOGS
    • Zezwala aplikacji na odczyt plików dziennika niskiego poziomu. Wpisy do dziennika mogą zawierać prywatne informacje użytkownika
    • Grupa: PERSONAL_INFO
    • Nie jest już przyznawany aplikacjom użytkowników rozpoczynającym się od Androida 4.2+ (aplikacje użytkowników mogą teraz widzieć tylko własne wpisy w dzienniku). Obejścia są możliwe na zrootowanych urządzeniach.
    • Aby uzyskać szczegółowe informacje, zobacz: Czytaj dzienniki ze wszystkich aplikacji na Androida z poziomu aplikacji na Androida 4.2+
  • READ_OWNER_DATA
  • READ_PHONE_STATE
  • READ_PROFILE (4.0+)
    • Zezwala aplikacji na odczyt danych profilu osobistego użytkownika.
    • Grupa: PERSONAL_INFO
  • READ_SECURE_SETTINGS
    • Zezwala aplikacji na odczyt bezpiecznych ustawień systemu.
    • Grupa: HARDWARE_CONTROLS
  • READ_SMS
    • Zezwala aplikacji na odczytywanie wiadomości SMS.
    • Grupa: WIADOMOŚCI
    • Sprawdź uprawnienia do aplikacji.READ_SMS, aby zobaczyć, jakie informacje można uzyskać dzięki temu uprawnieniu.
  • READ_SOCIAL_STREAM (4.0+)
    • Zezwala aplikacji na odczyt ze strumienia społecznościowego użytkownika.
    • Grupa: PERSONAL_INFO
  • READ_SYNC_SETTINGS
    • Zezwala aplikacjom na odczyt ustawień synchronizacji
    • Grupa: SYSTEM_TOOLS
  • READ_SYNC_STATS
    • Zezwala aplikacjom na czytanie statystyk synchronizacji
    • Grupa: SYSTEM_TOOLS
  • READ_USER_DICTIONARY ( 4.1+ )
    • Zezwala aplikacji na odczytanie słownika użytkownika. To naprawdę powinno być wymagane tylko przez edytor IME lub edytor słowników, taki jak aplikacja Ustawienia.
    • Grupa: PERSONAL_INFO
  • RESTART
    • Wymagane, aby móc ponownie uruchomić urządzenie
    • Grupa: SYSTEM_TOOLS
    • Poziom: SYSTEM
  • RECEIVE_BOOT_COMPLETED
    • Zezwala aplikacji na odbieranie ACTION_BOOT_COMPLETEDtransmisji rozgłoszeniowej po zakończeniu uruchamiania systemu. Jeśli nie poprosisz o to pozwolenie, w tym czasie nie otrzymasz transmisji. Chociaż posiadanie tego uprawnienia nie ma wpływu na bezpieczeństwo, może mieć negatywny wpływ na wygodę użytkownika, zwiększając czas potrzebny na uruchomienie systemu i umożliwiając uruchamianie aplikacji bez wiedzy użytkownika. W związku z tym musisz jawnie zadeklarować korzystanie z tego narzędzia, aby było to widoczne dla użytkownika.
    • Grupa: SYSTEM_TOOLS
  • RECEIVE_EMERGENCY_BROADCAST
    • Zezwala aplikacji na odbieranie wiadomości alarmowych, nagrywanie lub wyświetlanie ich użytkownikowi. Zarezerwowane dla aplikacji systemowych.
    • Grupa: WIADOMOŚCI
    • Poziom: SYSTEM
    • Do czasu zatwierdzenia przez Radę API
  • RECEIVE_MMS
    • Zezwala aplikacji na monitorowanie przychodzących wiadomości MMS, nagrywanie lub wykonywanie na nich przetwarzania.
    • Grupa: WIADOMOŚCI
  • RECEIVE_SMS
  • RECEIVE_WAP_PUSH
    • Zezwala aplikacji na monitorowanie przychodzących wiadomości push WAP.
    • Grupa: WIADOMOŚCI
  • NAGRAĆ DŹWIĘK
    • Zezwala aplikacji na nagrywanie dźwięku
    • Grupa: HARDWARE_CONTROLS
  • REORDER_TASKS
    • Zezwala aplikacji na zmianę kolejności zadań w Z.
    • Grupa: SYSTEM_TOOLS
  • RESTART_PACKAGES
    • deprecated - Nie jest już obsługiwany
  • SEND_RESPOND_VIA_MESSAGE (4.3+)
    • Zezwala aplikacji (telefonowi) na wysyłanie żądania do innych aplikacji w celu obsłużenia akcji „odpowiedz za pośrednictwem wiadomości” podczas połączeń przychodzących. Nie do użytku przez aplikacje innych firm.
  • WYŚLIJ SMS
    • Zezwala aplikacji na wysyłanie wiadomości SMS.
    • Grupa: COST_MONEY
  • SEND_SMS_NO_CONFIRMATION
    • Zezwala aplikacji na wysyłanie wiadomości SMS za pośrednictwem aplikacji Messaging bez wprowadzania danych przez użytkownika ani potwierdzania.
    • Grupa: COST_MONEY
    • Poziom: SYSTEM
  • SET_ACTIVITY_WATCHER
    • Zezwala aplikacji na obserwowanie i kontrolowanie globalnego uruchamiania działań w systemie.
    • Grupa: SYSTEM_TOOLS
    • Poziom: SYSTEM
  • SET_ALARM (2.3+)
    • Zezwala aplikacji na emisję zamiaru ustawienia alarmu dla użytkownika.
    • Grupa: PERSONAL_INFO
  • SET_ALWAYS_FINISH
    • Zezwala aplikacji na kontrolowanie, czy działania są natychmiast kończone po umieszczeniu w tle.
    • Grupa: DEVELOPMENT_TOOLS
  • SET_ANIMATION_SCALE
    • Zmodyfikuj globalny współczynnik skalowania animacji.
    • Grupa: SYSTEM_TOOLS
  • SET_DEBUG_APP
    • Skonfiguruj aplikację do debugowania.
    • Grupa: DEVELOPMENT_TOOLS
  • SET_ORIENTATION
    • Umożliwia niskopoziomowy dostęp do ustawiania orientacji (faktycznie obrotu) ekranu. Nie do użytku przez zwykłe aplikacje.
    • Grupa: SYSTEM_TOOLS
    • Poziom: SYSTEM
  • SET_POINTER_SPEED (3.2+)
    • Umożliwia niskopoziomowy dostęp do ustawiania prędkości wskaźnika. Nie do użytku przez zwykłe aplikacje.
    • Grupa: SYSTEM_TOOLS
    • Poziom: SYSTEM
  • SET_PREFERRED_APPLICATIONS
    • deprecated Nie jest już przydatny
    • Grupa: SYSTEM_TOOLS
  • SET_PROCESS_LIMIT
    • Zezwala aplikacji na ustawienie maksymalnej liczby (niepotrzebnych) procesów aplikacji, które mogą być uruchomione.
    • Grupa: DEVELOPMENT_TOOLS
  • SET_TIME ( 2.2+ )
    • Zezwala aplikacjom na ustawienie czasu systemowego
    • Grupa: SYSTEM_TOOLS
    • Poziom: SYSTEM
  • SET_TIME_ZONE
    • Zezwala aplikacjom na ustawianie systemowej strefy czasowej
    • Grupa: SYSTEM_TOOLS
  • USTAWIĆ TAPETĘ
    • Zezwala aplikacjom na ustawianie tapety
    • Grupa: SYSTEM_TOOLS
  • SET_WALLPAPER_HINTS
    • Zezwala aplikacjom na ustawianie podpowiedzi do tapet
    • Grupa: SYSTEM_TOOLS
  • SIGNAL_PERSISTENT_PROCESSES
    • Zezwól aplikacji na żądanie wysłania sygnału do wszystkich trwałych procesów
    • Grupa: DEVELOPMENT_TOOLS
  • PASEK STANU
    • Zezwala aplikacji na otwieranie, zamykanie lub wyłączanie paska stanu i jego ikon.
    • Grupa: SYSTEM_TOOLS
    • Poziom: SYSTEM
  • SUBSCRIBED_FEEDS_READ
    • Zezwala aplikacji na odczyt subskrybowanych kanałów ContentProvider.
    • Grupa: SYSTEM_TOOLS
  • SUBSCRIBED_FEEDS_WRITE
    • Zezwala aplikacji na zapis do subskrybowanych kanałów ContentProvider.
    • Grupa: SYSTEM_TOOLS
  • SYSTEM_ALERT_WINDOW
    • Zezwala aplikacji na otwieranie okien przy użyciu typu TYPE_SYSTEM_ALERTpokazanego na wierzchu wszystkich innych aplikacji. Bardzo niewiele aplikacji powinno korzystać z tego uprawnienia; te okna są przeznaczone do interakcji na poziomie systemu z użytkownikiem.
    • Grupa: SYSTEM_TOOLS

kontynuuj tutaj
zbyt wiele znaków (treść jest ograniczona do 30000 znaków) , więc trzeba było ją podzielić

Ryan Conrad
źródło
1
Jaki jest powód (lub pomysł) kopiowania i wklejania oficjalnego dokumentu Androida?
ArtemStorozhuk
4
@Astor, To nie jest kopia / wklej z dokumentów Android. Chociaż niektóre z nich są informacjami stamtąd, pokaż mi, gdzie w dokumentach jest napisane, w jakiej grupie mieszkają lub czy mogą być wymagane TYLKO przez aplikacje SYSTEM.
Ryan Conrad
1
Byłoby to trochę fajne i być może pomocne dla mniej technicznych użytkowników, którzy znajdą to za pośrednictwem Google, jeśli każde z uprawnień zawiera „dobry” przypadek użycia i „zły” przypadek użycia. Na przykład: Read \ Write SMS - Good: Zezwala programowi na działanie jako program do obsługi wiadomości tekstowych. Źle: umożliwia programowi wysyłanie i odbieranie wiadomości tekstowych bez Twojej wiedzy.
Wesley Wiser
2
@ NamG.VU To dlatego, że nie jest to pobierane bezpośrednio z żadnego miejsca bezpośrednio z sieci. Pochodzi z wielu miejsc, z których jednym mogą być dokumenty systemu Android (ale nie tak naprawdę), innym są komentarze w całym kodzie źródłowym systemu Android i doświadczenie w korzystaniu / rozwijaniu z uprawnieniami.
Ryan Conrad,
1
Rozumiem. Więc zaskoczeniem, że Android właściciel nie zapewnia żadnej oficjalnej stronie, aby wyjaśnić te uprawnienia wyraźnie
Nam G VU
3

Kontynuacja od pierwszej odpowiedzi (stała się za długa, nie można jej było dłużej przedłużać)

Uprawnienia (ciąg dalszy)

  • TRANSMIT_IR (4.4+)
    • Umożliwia korzystanie z nadajnika podczerwieni urządzenia, jeśli jest dostępny
  • UNINSTALL_SHORTCUT (4.4+)
    • Zezwala aplikacji na odinstalowanie skrótu w Launcherze (ekran główny)
  • UPDATE_DEVICE_STATS
    • Zezwala aplikacji na aktualizację statystyk urządzenia. Nie do użytku przez aplikacje innych firm.
    • Grupa: SYSTEM_TOOLS
    • Poziom: SYSTEM
  • USE_CREDENTIALS
    • Zezwala aplikacji na żądanie authtokens od AccountManager
    • Grupa: RACHUNKI
    • Ta aplikacja może używać „danych logowania” do logowania się na konto. W większości przypadków „dane uwierzytelniające” oznaczają po prostu, że odpowiedni wystawca uwierzytelnienia tworzy odpowiedni token i przekazuje go dalej (choć sposób, w jaki sposób sobie z tym poradzić, pozostaje dla wystawcy). Podczas korzystania z konta po raz pierwszy Menedżer konta powinien upewnić się, że użytkownik zostanie zapytany, czy zezwala na to.
    • szczegóły: Co aplikacja może zrobić z uprawnieniem „KORZYSTAJ Z KONTA NA URZĄDZENIU”?
  • USE_SIP (2.3)
    • Zezwala aplikacji na korzystanie z usługi SIP
    • Grupa: SIEĆ
  • WIBROWAĆ
    • Umożliwia dostęp do wibratora
    • Grupa: HARDWARE_CONTROLS
  • WAKE_LOCK
    • Umożliwia korzystanie z PowerManager WakeLocks, aby zapobiec uśpieniu procesora lub przyciemnieniu ekranu
    • Grupa: SYSTEM_TOOLS
  • WRITE_APN_SETTINGS
    • Zezwala aplikacjom na zapisywanie ustawień apn
    • Grupa: SYSTEM_TOOLS
    • Poziom: SYSTEM
  • WRITE_CALENDAR
    • Zezwala aplikacji na zapisywanie (ale nie odczytywanie) danych kalendarza użytkownika.
    • Grupa: PERSONAL_INFO
  • WRITE_CALL_LOG ( 4.1+ )
    • Zezwala aplikacji na modyfikowanie rejestru połączeń systemowych przechowywanego w telefonie
  • WRITE_CONTACTS
    • Zezwala aplikacji na zapisywanie (ale nie odczytywanie) danych kontaktów użytkownika.
    • Grupa: PERSONAL_INFO
  • WRITE_EXTERNAL_STORAGE
  • WRITE_GMAIL
  • WRITE_GSERVICES
  • WRITE_HISTORY_BOOKMARKS
    • Zezwala aplikacji na zapisywanie (ale nie odczytywanie) historii przeglądania i zakładek użytkownika.
    • Grupa: PERSONAL_INFO
  • WRITE_OWNER_DATA
  • WRITE_PROFILE (4.0+)
    • Zezwala aplikacji na zapisywanie (ale nie odczytywanie) danych osobistych profilu użytkownika.
    • Grupa: PERSONAL_INFO
  • WRITE_SECURE_SETTINGS
    • Zezwala aplikacji na odczyt lub zapis bezpiecznych ustawień systemu.
    • Grupa: SYSTEM_TOOLS
    • Poziom: SYSTEM
  • WRITE_SETTINGS
    • Zezwala aplikacji na odczyt lub zapis ustawień systemu.
    • Grupa: SYSTEM_TOOLS
  • WRITE_SMS
    • Zezwala aplikacji na pisanie wiadomości SMS.
    • Grupa: WIADOMOŚCI
  • WRITE_SOCIAL_STREAM (4.0+)
    • Zezwala aplikacji na zapisywanie (ale nie odczytywanie) danych strumienia społecznościowego użytkownika.
    • Grupa: PERSONAL_INFO
  • WRITE_SYNC_SETTINGS
    • Zezwala aplikacjom na zapisywanie ustawień synchronizacji
    • Grupa: SYSTEM_TOOLS
  • WRITE_USER_DICTIONARY ( 4.1+ )
    • Zezwala aplikacji na zapisywanie w słowniku użytkownika.
    • Grupa: PERSONAL_INFO

Grupy

Poszczególne uprawnienia powyżej należą do jednej (lub więcej) z następujących grup uprawnień:

  • RACHUNKI
    • Uprawnienia do bezpośredniego dostępu do kont zarządzanych przez Menedżera konta.
  • AFFECTS_BATTERY
  • INFORMACJE O APLIKACJI
  • USTAWIENIA DŹWIĘKU
  • BLUETOOTH_NETWORK
  • ZAKŁADKI
  • KALENDARZ
  • APARAT FOTOGRAFICZNY
  • COST_MONEY
    • Służy do uprawnień, których można użyć, aby użytkownik wydał pieniądze bez jego bezpośredniego zaangażowania. Na przykład jest to grupa uprawnień, która pozwala bezpośrednio nawiązywać połączenia telefoniczne, bezpośrednio wysyłać wiadomości SMS itp.
  • NARZĘDZIA PROGRAMISTYCZNE
    • Grupa uprawnień związanych z funkcjami programistycznymi. Nie są to uprawnienia, które powinny pojawiać się w normalnych aplikacjach; chronią interfejsy API przeznaczone wyłącznie do celów programistycznych.
  • DEVICE_ALARMS
  • POKAZ
  • HARDWARE_CONTROLS
    • Służy do uprawnień zapewniających bezpośredni dostęp do sprzętu w urządzeniu. Obejmuje to dźwięk, kamerę, wibrator itp.
  • LOKALIZACJA
    • Służy do uprawnień, które umożliwiają dostęp do bieżącej lokalizacji użytkownika.
  • WIADOMOŚCI
    • Służy do uprawnień, które pozwalają aplikacji na wysyłanie wiadomości w imieniu użytkownika lub przechwytywanie wiadomości otrzymywanych przez użytkownika. Jest to przede wszystkim przeznaczone do wiadomości SMS / MMS, takich jak odbieranie lub czytanie MMS.
  • MIKROFON
  • SIEĆ
    • Służy do uprawnień zapewniających dostęp do usług sieciowych. Głównym uprawnieniem jest tutaj dostęp do Internetu, ale jest to również odpowiednia grupa do uzyskiwania dostępu lub modyfikowania dowolnej konfiguracji sieci lub innych powiązanych operacji sieciowych.
  • DANE OSOBISTE
    • Służy do uprawnień, które zapewniają dostęp do prywatnych danych użytkownika, takich jak kontakty, wydarzenia w kalendarzu, wiadomości e-mail itp. Obejmuje to zarówno odczyt, jak i zapis tych danych (które zasadniczo powinny być wyrażone jako dwa odrębne uprawnienia).
  • ROZMOWY TELEFONICZNE
    • Służy do uprawnień związanych z uzyskiwaniem dostępu i modyfikowaniem stanu telefonii: przechwytywanie połączeń wychodzących, odczytywanie i modyfikowanie stanu telefonu. Pamiętaj, że nawiązywanie połączeń telefonicznych nie znajduje się w tej grupie, ponieważ jest to ważniejsza grupa „biorąc pieniądze”.
  • BLOKADA EKRANU
  • SOCIAL_INFO
  • PASEK STANU
  • PRZECHOWYWANIE
    • Grupa uprawnień związanych z dostępem do karty SD.
  • SYNC_SETTINGS
  • ZEGAR SYSTEMOWY
  • NARZĘDZIA SYSTEMOWE
    • Grupa uprawnień związanych z interfejsami API systemu. Wiele z nich nie jest uprawnieniami, które użytkownik powinien zrozumieć, i takie uprawnienia powinny być ogólnie oznaczone jako „normalny” poziom ochrony, aby nie były wyświetlane. Można to jednak również wykorzystać do różnych funkcji zapewniających dostęp do systemu operacyjnego, takich jak zapisywanie globalnych ustawień systemu.
  • SŁOWNIK UŻYTKOWNIKA
  • GŁOS
  • TAPETA
  • WRITE_USER_DICTIONARY
Izzy
źródło