ACCESS_CHECKIN_PROPERTIES
允許讀/寫登記數據庫(checkin database),中的“properties”表,用來改變他的值來上傳東西。這個權限第三方應用無法使用。注:
- 這個權限貌似出現在google map中
- 這個權限不能添加到Manifest文件中的Application標簽下,否則應用無法安裝而且不會報錯
1 <application 2 android:name="android.permission.ACCESS_CHECKIN_PROPERTIES" 3 android:allowBackup="true" 4 android:icon="@drawable/ic_launcher" 5 android:label="@string/app_name" 6 android:theme="@style/AppTheme" > 7 <activity 8 android:name=".MainActivity" 9 android:label="@string/app_name" > 10 <intent-filter> 11 <action android:name="android.intent.action.MAIN" /> 12 13 <category android:name="android.intent.category.LAUNCHER" /> 14 </intent-filter> 15 </activity> 16 </application>
ACCESS_COARSE_LOCATION
允許程序通過訪問網絡來大致確定自己設備的位置,如通過wifi或是蜂窩網絡。
例:
- 當使用LoactionManager來獲取設備位置信息時,需要此權限
ACCESS_FINE_LOCATION
允許通過訪問信息源來精確的獲得設備的地理位置,如功過GPS,wifi或是蜂窩網絡。
例:
- 當使用LoactionManager來獲取設備位置信息時,需要此權限
注:
- 這個權限和上面的權限比較像,在使用的時候推薦使用這個權限
ACCESS_LOCATION_EXTRA_COMMANDS
允許應用可以訪問額外的位置命令。這個通常是供應商提供的新API。
例:
- LocationManager中有一個方法sendExtraCommand(String provider,String commond,Bundle extras),在使用這個方法的時候需要此權限。
ACCESS_MOCK_LOCATION
允許應用能夠模擬地理位置提供者,在開發地圖類應用的時候,需要此權限。
例:
- 開發地理應用的時候,比如人在中國,但是需要美國的地理位置,就可以使用這個權限來模擬地理位置。
- Demo地址http://www.cnblogs.com/qinghuaideren/p/3860972.html
注:
- 如果開發的時候使用了這個模擬地理位置的權限,在發布應用的時候,需要剔除掉這些東西。
ACCESS_NETWORK_STATE
允許應用程序訪問網絡信息
例:
- 我想開發過Android應用的同學們,對這個權限應該不會陌生了,沒有他就沒法聯網。
- 獲取網絡狀態的時候需要添加這個權限。
ACCESS_SURFACE_FLINGER
允許應用程序使用SurfaceFlinger較低的特性。
第三方不能使用這個權限。
例:
- 系統的截圖功能需要這個權限。
ACCESS_WIFI_STATE
允許應用程序訪問網絡wifi的信息。
BATTERY_STATS
允許一個應用程序獲取電池使用的統計信息(剩余電量、電池的耗電情況(各主要應用程序耗電占總耗電的百分比等)等。
例:
@Override public void onCreate() { BroadcastReceiver batteryReceiver = new BroadcastReceiver() { int scale = -1; int level = -1; int voltage = -1; int temp = -1; @Override public void onReceive(Context context, Intent intent) { level = intent.getIntExtra(BatteryManager.EXTRA_LEVEL, -1); scale = intent.getIntExtra(BatteryManager.EXTRA_SCALE, -1); temp = intent.getIntExtra(BatteryManager.EXTRA_TEMPERATURE, -1); voltage = intent.getIntExtra(BatteryManager.EXTRA_VOLTAGE, -1); Log.e("BatteryManager", "level is "+level+"/"+scale+", temp is "+temp+", voltage is "+voltage); } }; IntentFilter filter = new IntentFilter(Intent.ACTION_BATTERY_CHANGED); registerReceiver(batteryReceiver, filter); }
BLUETOOTH
允許應用程序連接到已經配對的藍牙設備上。
例:
Android藍牙使用的Demo:http://www.cnblogs.com/wenjiang/p/3200138.html
BLUETOOTH_ADMIN
允許應用程序能夠發現和配對藍牙設備。
例:
Android藍牙使用的Demo:http://www.cnblogs.com/wenjiang/p/3200138.html
注:
在使用這個權限之前需要獲得BLUETOOTH的權限。
BRICK
申請可以關閉設備,很危險的權限。
不能被第三方應用使用。
注:
這個權限目前為止,還沒有發現在哪里使用過。
BROADCAST_PACKAGE_REMOVED
當一個應用被移除的時候,允許應用程序發送一條廣播。
第三方無法使用這個權限。
注:
雖然無法發送應用卸載的廣播,但是可以接受這個系統發送的廣播http://jasonshieh.iteye.com/blog/858402
BROADCAST_STICKY
通過使用這個權限,能夠使發送的廣播繼續存在,這個樣廣播接受者能快速的獲得廣播的內容。
例:
Intent intent = new Intent("some.custom.action"); intent.putExtra("some_boolean", true); sendStickyBroadcast(intent);
CALL_PHONE
允許應用不通過啟動電話的鍵盤輸入界面而直接打電話。
例:
Intent intentcall = new Intent(); intentcall.setAction(Intent.ACTION_CALL); intentcall.setData(Uri.parse("tel:" + phonenumber)); // set the Uri startActivity(intentcall);注:
在使用這個方法之前需要確認設備是否支持打電話功能,否則會報錯。
<uses-feature android:name="android.hardware.telephony" android:required="false" />
CALL_PRIVILEGED
能撥打任何電話號碼,而不通過號碼鍵盤。
這個權限不能被第三方使用。
CAMERA
能夠訪問設備的相機。
例:當手機中有個攝像頭的時候,打開其中的一個http://www.cnblogs.com/qinghuaideren/p/3878522.html
注:
在使用之前需要添加下面這個東西
<uses-feature android:name="android.hardware.camera" android:required="false" /> <uses-feature android:name="android.hardware.camera.front" android:required="false" />