Android總結(jié)篇系列之Permission

前言:權(quán)限是一種安全機(jī)制。Android權(quán)限主要用于限制應(yīng)用程序內(nèi)部某些具有限制性特性的功能使用以及應(yīng)用程序之間的組件訪問(wèn)。對(duì)于用戶來(lái)說(shuō),這無(wú)疑是一種對(duì)自身安全的保障,用戶在安裝程序的時(shí)會(huì)提示用戶此程序需要哪些權(quán)限,比如連網(wǎng),發(fā)短信等等,這些權(quán)限完全由用戶來(lái)選擇是否給予權(quán)限。


在開發(fā)Android過(guò)程中,當(dāng)我們使用了某些系統(tǒng)特性的功能,且此類特性需要包含相應(yīng)權(quán)限時(shí),如果在AndroidManifest.xml文件中沒有相應(yīng)申明權(quán)限的話,則運(yùn)行會(huì)出現(xiàn)錯(cuò)誤且提示:****java.lang.SecurityException: Permission Denial ****


  • Android權(quán)限列表簡(jiǎn)介
訪問(wèn)登記屬性  android.permission.ACCESS_CHECKIN_PROPERTIES   讀取或?qū)懭氲怯沜heck-in數(shù)據(jù)庫(kù)屬性表的權(quán)限
獲取錯(cuò)略位置  android.permission.ACCESS_COARSE_LOCATION  通過(guò)WiFi或移動(dòng)基站的方式獲取用戶錯(cuò)略的經(jīng)緯度信息,定位精度大概誤差在30~1500米
獲取精確位置  android.permission.ACCESS_FINE_LOCATION  通過(guò)GPS芯片接收衛(wèi)星的定位信息,定位精度達(dá)10米以內(nèi)
訪問(wèn)定位額外命令    android.permission.ACCESS_LOCATION_EXTRA_COMMANDS  允許程序訪問(wèn)額外的定位提供者指令
獲取模擬定位信息    android.permission.ACCESS_MOCK_LOCATION  獲取模擬定位信息,一般用于幫助開發(fā)者調(diào)試應(yīng)用
獲取網(wǎng)絡(luò)狀態(tài)  android.permission.ACCESS_NETWORK_STATE  獲取網(wǎng)絡(luò)信息狀態(tài)
訪問(wèn)Surface Flinger   android.permission.ACCESS_SURFACE_FLINGER   Android平臺(tái)上底層的圖形顯示支持,一般用于游戲或照相機(jī)預(yù)覽界面和底層模式的屏幕截圖
獲取WiFi狀態(tài)    android.permission.ACCESS_WIFI_STATE   獲取當(dāng)前WiFi接入的狀態(tài)以及WLAN熱點(diǎn)的信息
驗(yàn)證賬戶    android.permission.AUTHENTICATE_ACCOUNTS   允許一個(gè)程序通過(guò)賬戶驗(yàn)證方式訪問(wèn)賬戶管理ACCOUNT_MANAGER相關(guān)信息
電量統(tǒng)計(jì)    android.permission.BATTERY_STATS   獲取電池電量統(tǒng)計(jì)信息
使用藍(lán)牙    android.permission.BLUETOOTH   允許程序連接配對(duì)過(guò)的藍(lán)牙設(shè)備
藍(lán)牙管理    android.permission.BLUETOOTH_ADMIN   允許程序進(jìn)行發(fā)現(xiàn)和配對(duì)新的藍(lán)牙設(shè)備
應(yīng)用刪除時(shí)廣播 android.permission.BROADCAST_PACKAGE_REMOVED   當(dāng)一個(gè)應(yīng)用在刪除時(shí)觸發(fā)一個(gè)廣播
收到短信時(shí)廣播 android.permission.BROADCAST_SMS   當(dāng)收到短信時(shí)觸發(fā)一個(gè)廣播
連續(xù)廣播    android.permission.BROADCAST_STICKY   允許一個(gè)程序收到廣播后快速收到下一個(gè)廣播
WAP PUSH廣播  android.permission.BROADCAST_WAP_PUSH   WAP PUSH服務(wù)收到后觸發(fā)一個(gè)廣播
撥打電話    android.permission.CALL_PHONE   允許程序從非系統(tǒng)撥號(hào)器里輸入電話號(hào)碼
通話權(quán)限    android.permission.CALL_PRIVILEGED   允許程序撥打電話,替換系統(tǒng)的撥號(hào)器界面
拍照權(quán)限    android.permission.CAMERA   允許訪問(wèn)攝像頭進(jìn)行拍照
改變組件狀態(tài)  android.permission.CHANGE_COMPONENT_ENABLED_STATE   改變組件是否啟用狀態(tài)
改變配置    android.permission.CHANGE_CONFIGURATION   允許當(dāng)前應(yīng)用改變配置,如定位
改變網(wǎng)絡(luò)狀態(tài)  android.permission.CHANGE_NETWORK_STATE   改變網(wǎng)絡(luò)狀態(tài)如是否能聯(lián)網(wǎng)
改變WiFi多播狀態(tài)  android.permission.CHANGE_WIFI_MULTICAST_STATE   改變WiFi多播狀態(tài)
改變WiFi狀態(tài)    android.permission.CHANGE_WIFI_STATE   改變WiFi狀態(tài)
清除應(yīng)用緩存  android.permission.CLEAR_APP_CACHE   清除應(yīng)用緩存
清除用戶數(shù)據(jù)  android.permission.CLEAR_APP_USER_DATA   清除應(yīng)用的用戶數(shù)據(jù)
底層訪問(wèn)權(quán)限  android.permission.CWJ_GROUP   允許CWJ賬戶組訪問(wèn)底層信息
手機(jī)優(yōu)化大師擴(kuò)展權(quán)限  android.permission.CELL_PHONE_MASTER_EX    手機(jī)優(yōu)化大師擴(kuò)展權(quán)限
控制定位更新  android.permission.CONTROL_LOCATION_UPDATES   允許獲得移動(dòng)網(wǎng)絡(luò)定位信息改變
刪除緩存文件  android.permission.DELETE_CACHE_FILES   允許應(yīng)用刪除緩存文件
刪除應(yīng)用    android.permission.DELETE_PACKAGES   允許程序刪除應(yīng)用
電源管理    android.permission.DEVICE_POWER   允許訪問(wèn)底層電源管理
應(yīng)用診斷    android.permission.DIAGNOSTIC   允許程序到RW到診斷資源
禁用鍵盤鎖   android.permission.DISABLE_KEYGUARD   允許程序禁用鍵盤鎖
轉(zhuǎn)存系統(tǒng)信息  android.permission.DUMP   允許程序獲取系統(tǒng)dump信息從系統(tǒng)服務(wù)
狀態(tài)欄控制   android.permission.EXPAND_STATUS_BAR   允許程序擴(kuò)展或收縮狀態(tài)欄
工廠測(cè)試模式  android.permission.FACTORY_TEST   允許程序運(yùn)行工廠測(cè)試模式
使用閃光燈   android.permission.FLASHLIGHT   允許訪問(wèn)閃光燈
強(qiáng)制后退    android.permission.FORCE_BACK   允許程序強(qiáng)制使用back后退按鍵,無(wú)論Activity是否在頂層
獲取應(yīng)用大小  android.permission.GET_PACKAGE_SIZE,獲取應(yīng)用的文件大小
獲取任務(wù)信息  android.permission.GET_TASKS   允許程序獲取當(dāng)前或最近運(yùn)行的應(yīng)用
允許全局搜索  android.permission.GLOBAL_SEARCH   允許程序使用全局搜索功能
注射事件    android.permission.INJECT_EVENTS   允許訪問(wèn)本程序的底層事件,獲取按鍵、軌跡球的事件流
安裝定位提供  android.permission.INSTALL_LOCATION_PROVIDER   安裝定位提供
安裝應(yīng)用程序  android.permission.INSTALL_PACKAGES   允許程序安裝應(yīng)用
內(nèi)部系統(tǒng)窗口  android.permission.INTERNAL_SYSTEM_WINDOW   允許程序打開內(nèi)部窗口,不對(duì)第三方應(yīng)用程序開放此權(quán)限
訪問(wèn)網(wǎng)絡(luò)    android.permission.INTERNET   訪問(wèn)網(wǎng)絡(luò)連接,可能產(chǎn)生GPRS流量
結(jié)束后臺(tái)進(jìn)程  android.permission.KILL_BACKGROUND_PROCESSES   允許程序調(diào)用
killBackgroundProcesses(String).方法結(jié)束后臺(tái)進(jìn)程
管理賬戶    android.permission.MANAGE_ACCOUNTS   允許程序管理AccountManager中的賬戶列表
管理程序引用  android.permission.MANAGE_APP_TOKENS   管理創(chuàng)建、摧毀、Z軸順序,僅用于系統(tǒng)
高級(jí)權(quán)限    android.permission.MTWEAK_USER   允許mTweak用戶訪問(wèn)高級(jí)系統(tǒng)權(quán)限
社區(qū)權(quán)限    android.permission.MTWEAK_FORUM   允許使用mTweak社區(qū)權(quán)限
軟格式化    android.permission.MASTER_CLEAR   允許程序執(zhí)行軟格式化,刪除系統(tǒng)配置信息
修改聲音設(shè)置  android.permission.MODIFY_AUDIO_SETTINGS   修改聲音設(shè)置信息
修改電話狀態(tài)  android.permission.MODIFY_PHONE_STATE   修改電話狀態(tài),如飛行模式,但不包含替換系統(tǒng)撥號(hào)器界面
格式化文件系統(tǒng) android.permission.MOUNT_FORMAT_FILESYSTEMS   格式化可移動(dòng)文件系統(tǒng),比如格式化清空SD卡
掛載文件系統(tǒng)  android.permission.MOUNT_UNMOUNT_FILESYSTEMS   掛載、反掛載外部文件系統(tǒng)
允許NFC通訊 android.permission.NFC   允許程序執(zhí)行NFC近距離通訊操作,用于移動(dòng)支持
永久Activity  android.permission.PERSISTENT_ACTIVITY   創(chuàng)建一個(gè)永久的Activity,該功能標(biāo)記為將來(lái)將被移除
處理?yè)艹鲭娫? android.permission.PROCESS_OUTGOING_CALLS   允許程序監(jiān)視,修改或放棄播出電話
讀取日程提醒  android.permission.READ_CALENDAR   允許程序讀取用戶的日程信息
讀取聯(lián)系人   android.permission.READ_CONTACTS   允許應(yīng)用訪問(wèn)聯(lián)系人通訊錄信息
屏幕截圖    android.permission.READ_FRAME_BUFFER   讀取幀緩存用于屏幕截圖
讀取收藏夾和歷史記錄  com.android.browser.permission.READ_HISTORY_BOOKMARKS   讀取瀏覽器收藏夾和歷史記錄
讀取輸入狀態(tài)  android.permission.READ_INPUT_STATE   讀取當(dāng)前鍵的輸入狀態(tài),僅用于系統(tǒng)
讀取系統(tǒng)日志  android.permission.READ_LOGS   讀取系統(tǒng)底層日志
讀取電話狀態(tài)  android.permission.READ_PHONE_STATE   訪問(wèn)電話狀態(tài)
讀取短信內(nèi)容  android.permission.READ_SMS   讀取短信內(nèi)容
讀取同步設(shè)置  android.permission.READ_SYNC_SETTINGS   讀取同步設(shè)置,讀取Google在線同步設(shè)置
讀取同步狀態(tài)  android.permission.READ_SYNC_STATS   讀取同步狀態(tài),獲得Google在線同步狀態(tài)
重啟設(shè)備    android.permission.REBOOT   允許程序重新啟動(dòng)設(shè)備
開機(jī)自動(dòng)允許  android.permission.RECEIVE_BOOT_COMPLETED   允許程序開機(jī)自動(dòng)運(yùn)行
接收彩信    android.permission.RECEIVE_MMS   接收彩信
接收短信    android.permission.RECEIVE_SMS   接收短信
接收Wap Push  android.permission.RECEIVE_WAP_PUSH   接收WAP PUSH信息
錄音  android.permission.RECORD_AUDIO   錄制聲音通過(guò)手機(jī)或耳機(jī)的麥克
排序系統(tǒng)任務(wù)  android.permission.REORDER_TASKS   重新排序系統(tǒng)Z軸運(yùn)行中的任務(wù)
結(jié)束系統(tǒng)任務(wù)  android.permission.RESTART_PACKAGES   結(jié)束任務(wù)通過(guò)restartPackage(String)方法,該方式將在外來(lái)放棄
發(fā)送短信    android.permission.SEND_SMS   發(fā)送短信
設(shè)置Activity觀察其   android.permission.SET_ACTIVITY_WATCHER,設(shè)置Activity觀察器一般用于monkey測(cè)試
設(shè)置鬧鈴提醒  com.android.alarm.permission.SET_ALARM   設(shè)置鬧鈴提醒
設(shè)置總是退出  android.permission.SET_ALWAYS_FINISH   設(shè)置程序在后臺(tái)是否總是退出
設(shè)置動(dòng)畫縮放  android.permission.SET_ANIMATION_SCALE   設(shè)置全局動(dòng)畫縮放
設(shè)置屏幕方向  android.permission.SET_ORIENTATION,設(shè)置屏幕方向?yàn)闄M屏或標(biāo)準(zhǔn)方式顯示,不用于普通應(yīng)用
設(shè)置應(yīng)用參數(shù)  android.permission.SET_PREFERRED_APPLICATIONS,設(shè)置應(yīng)用的參數(shù),已不再工作具體
查看addPackageToPreferred(String) 介紹
設(shè)置進(jìn)程限制  android.permission.SET_PROCESS_LIMIT   允許程序設(shè)置最大的進(jìn)程數(shù)量的限制
設(shè)置系統(tǒng)時(shí)間  android.permission.SET_TIME   設(shè)置系統(tǒng)時(shí)間
設(shè)置系統(tǒng)時(shí)區(qū)  android.permission.SET_TIME_ZONE   設(shè)置系統(tǒng)時(shí)區(qū)
設(shè)置桌面壁紙  android.permission.SET_WALLPAPER   設(shè)置桌面壁紙
設(shè)置壁紙建議  android.permission.SET_WALLPAPER_HINTS   設(shè)置壁紙建議
發(fā)送永久進(jìn)程信號(hào)    android.permission.SIGNAL_PERSISTENT_PROCESSES   發(fā)送一個(gè)永久的進(jìn)程信號(hào)
狀態(tài)欄控制   android.permission.STATUS_BAR   允許程序打開、關(guān)閉、禁用狀態(tài)欄
訪問(wèn)訂閱內(nèi)容  android.permission.SUBSCRIBED_FEEDS_READ   訪問(wèn)訂閱信息的數(shù)據(jù)庫(kù)
寫入訂閱內(nèi)容  android.permission.SUBSCRIBED_FEEDS_WRITE   寫入或修改訂閱內(nèi)容的數(shù)據(jù)庫(kù)
顯示系統(tǒng)窗口  android.permission.SYSTEM_ALERT_WINDOW   顯示系統(tǒng)窗口
更新設(shè)備狀態(tài)  android.permission.UPDATE_DEVICE_STATS   更新設(shè)備狀態(tài)
使用證書    android.permission.USE_CREDENTIALS   允許程序請(qǐng)求驗(yàn)證從AccountManager
使用SIP視頻 android.permission.USE_SIP   允許程序使用SIP視頻服務(wù)
使用振動(dòng)    android.permission.VIBRATE   允許振動(dòng)
喚醒鎖定    android.permission.WAKE_LOCK   允許程序在手機(jī)屏幕關(guān)閉后后臺(tái)進(jìn)程仍然運(yùn)行
寫入GPRS接入點(diǎn)設(shè)置 android.permission.WRITE_APN_SETTINGS   寫入網(wǎng)絡(luò)GPRS接入點(diǎn)設(shè)置
寫入日程提醒  android.permission.WRITE_CALENDAR   寫入日程,但不可讀取
寫入聯(lián)系人   android.permission.WRITE_CONTACTS   寫入聯(lián)系人,但不可讀取
寫入外部存儲(chǔ)  android.permission.WRITE_EXTERNAL_STORAGE    允許程序?qū)懭胪獠看鎯?chǔ),如SD卡上寫文件
寫入Google地圖數(shù)據(jù)    android.permission.WRITE_GSERVICES   允許程序?qū)懭隚oogle Map服務(wù)數(shù)據(jù)
寫入收藏夾和歷史記錄  com.android.browser.permission.WRITE_HISTORY_BOOKMARKS   寫入瀏覽器歷史記錄或收藏夾,但不可讀取
讀寫系統(tǒng)敏感設(shè)置    android.permission.WRITE_SECURE_SETTINGS   允許程序讀寫系統(tǒng)安全敏感的設(shè)置項(xiàng)
讀寫系統(tǒng)設(shè)置  android.permission.WRITE_SETTINGS   允許讀寫系統(tǒng)設(shè)置項(xiàng)
編寫短信    android.permission.WRITE_SMS   允許編寫短信
寫入在線同步設(shè)置    android.permission.WRITE_SYNC_SETTINGS   寫入Google在線同步設(shè)置

****以下的權(quán)限列表為系統(tǒng)權(quán)限或少用權(quán)限****

賬戶管理    android.permission.ACCOUNT_MANAGER   獲取賬戶驗(yàn)證信息,主要為GMail賬戶信息,只有系統(tǒng)級(jí)進(jìn)程才能訪問(wèn)的權(quán)限
綁定小插件   android.permission.BIND_APPWIDGET   允許一個(gè)程序告訴appWidget服務(wù)需要訪問(wèn)小插件的數(shù)據(jù)庫(kù),只有非常少的應(yīng)用才用到此權(quán)限
綁定設(shè)備管理  android.permission.BIND_DEVICE_ADMIN   請(qǐng)求系統(tǒng)管理員接收者receiver,只有系統(tǒng)才能使用
綁定輸入法   android.permission.BIND_INPUT_METHOD ,請(qǐng)求InputMethodService服務(wù),只有系統(tǒng)才能使用
綁定RemoteView    android.permission.BIND_REMOTEVIEWS,必須通過(guò)RemoteViewsService服務(wù)來(lái)請(qǐng)求,只有系統(tǒng)才能用
綁定壁紙    android.permission.BIND_WALLPAPER,必須通過(guò)WallpaperService服務(wù)來(lái)請(qǐng)求,只有系統(tǒng)才能用
變成磚頭    android.permission.BRICK,能夠禁用手機(jī),非常危險(xiǎn),顧名思義就是讓手機(jī)變成磚頭
訪問(wèn)賬戶Gmail列表 android.permission.GET_ACCOUNTS,訪問(wèn)GMail賬戶列表
硬件測(cè)試    android.permission.HARDWARE_TEST   訪問(wèn)硬件輔助設(shè)備,用于硬件測(cè)試
設(shè)置調(diào)試程序  android.permission.SET_DEBUG_APP   設(shè)置調(diào)試程序,一般用于開發(fā)
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容