1. 程式人生 > >Android 6.0許可權問題

Android 6.0許可權問題

專案在小米6.0上面執行時,使用打電話和獲取相簿的功能時崩潰了,但在AndroidManifest.xml中聲明瞭相關許可權

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

1.申請許可權

private static final int MY_PERMISSIONS_REQUEST_CALL = 1;
	
	private void requestCallPermission(){
		 //檢測某個許可權是否已經被授予
		 if (ContextCompat.checkSelfPermission(this,
	                Manifest.permission.CALL_PHONE)
	                != PackageManager.PERMISSION_GRANTED)
	        {
                //申請許可權
	            ActivityCompat.requestPermissions(this,
	                    new String[]{Manifest.permission.CALL_PHONE},
	                    MY_PERMISSIONS_REQUEST_CALL);
	        }
	}

遇到問題:專案使用eclipse,報錯:找不到方法checkSelfPermission和requestPermissions,更新support-v4包即可。

2.回撥處理

//回撥處理授權結果
	    @Override
	    public void onRequestPermissionsResult(int requestCode, String[] permissions, int[] grantResults)
	    {

	        if (grantResults!=null&&grantResults.length>0)
	        {
	        	switch (requestCode) {
	        	case MY_PERMISSIONS_REQUEST_CALL:
	        		 if (grantResults[0] == PackageManager.PERMISSION_GRANTED)
	 	            {
	        		//執行打電話的操作	
	 	            }
	        		break;
	        	default:
	        		break;
	        	}
	            return;
	        }
	        super.onRequestPermissionsResult(requestCode, permissions, grantResults);
	    }
3.使用

在需要打電話操作前請求許可權

/**
		 * 判斷是否為6.0及其以上系統
		 */
		if(Build.VERSION.SDK_INT >= 23){
			requestCallPermission();
		}




相關推薦

android 6.0許可權管理

轉載 https://blog.csdn.net/android2me/article/details/69525975 private void checkPermission() { //檢查許可權(NEED_PERMISSION)是否被授權 PackageManager.

android 6.0 + 許可權之 打電話

下面看看我怎麼調出去的… 第一步,我們還是要在AndroidManifolest.xml裡面新增 如果你沒有判斷請求許可權會報以下錯誤 AndroidRuntime: FATAL EXCEPTION: main Process: com.example.jie.demo, PI

android 6.0許可權,onRequestPermissionsResult回撥不執行問題

許可權是目前APP必不可少的,這裡介紹一下onRequestPermissionsResult回撥不執行問題。 一,正常使用android 6.0許可權: 思路: 1.檢查判斷 如果應用具有此許可權,方法將返回PackageManager.PERMISSION_GRA

android 6 0許可權全面詳細分析和解決方案

原文: http://www.2cto.com/kf/201512/455888.html http://blog.csdn.net/yangqingqo/article/details/48371123 http://inthecheesefactory.com/blog/things-y

Android 6.0許可權機制及開發流程詳解

許可權機制變更的背景 在Android6.0之前,app在安裝時會提示使用者此app需要使用哪些許可權,但使用者只能選擇同意或拒絕安裝,而不能單獨對某項許可權進行授予或拒絕。只要使用者選擇了安裝,即表示使用者接受了app對這些許可權的使用,如果使用者不希望app獲取某些涉及隱

Android 6.0許可權管理以及動態申請,以定位許可權為例

前言: 我們都知道現在手機系統已經到了很高的版本,在我們的Android6.0以後很多許可權都被列入危險許可權,都需要使用者手動去確認 1.我們先來看一下6.0以後被列為危險級別的一些許可權

android 6.0許可權判斷 音訊 拍照 相簿

/*------------------------------------------開啟音訊許可權------------------------------------------------*/ if (PackageManager.PERMISSION_GRANT

Android 6.0 許可權的申請 與 封裝

Android 6.0 以後最大的改變就是對於許可權的管理這一塊了,以前某個App 想使用什麼許可權 只要在 manifest 檔案裡面新增申請就可以了。 Android 6.0 以後不但要在manifest 裡面新增執行的時候還會彈出一個對話方塊讓使用

android 6.0許可權全面詳細分析和解決方案

原文: http://www.2cto.com/kf/201512/455888.html http://blog.csdn.net/yangqingqo/article/details/48371123 http://inthecheesefactory.com/blog

Activity原始碼之Android 6.0許可權相關完全解析

我們都知道Android6.0以前許可權的申請非常簡單,只需要在mainfest宣告所需的許可權即可。而6.0以後,Android將許可權的管理進一步嚴格化,它要求使用者在使用某些敏感許可權時,必須在mainfest中先宣告之後再動態申請。在一定程度上約束了

android 6.0許可權動態申請

android M 的名字官方剛釋出不久,最終正式版即將來臨! android在不斷髮展,最近的更新 M 非常不同,一些主要的變化例如執行時許可權將有顛覆性影響。驚訝的是android社群鮮有談論這事兒,儘管這事很重要或許在不遠的將來會引發很嚴重的問題。 這是今天我寫

Android——Android 6.0 許可權申請機制處理

Android 6.0帶來了新的許可權管理方式,預設情況下沒有任何應用有許可權去執行對其他應用、作業系統、使用者有不利影響的操作,這涉及到android 6.0的 Security Architecture(安全體系結構),也是Android安全體系結構的核心,

android 6.0許可權開發---拍照,開啟相簿問題

android6.0的許可權機制改得跟ios類似,兩個系統之間互相模仿也是好事,取長補短。在某些許可權需要用到的時候,要先詢問使用者。 國內各大android系統對於許可權的設定機制都不大一樣,但大部分都是一些常用的許可權預設是開啟的,一些是預設關閉了,即使你在Andr

android 6.0許可權問題處理的核心程式碼--shouldShowRequestPermissionRationale正確用法

private void requestPermission(String[] permissions) { boolean isMinSdkM = Build.VERSION.SDK_INT < Build.VERSION_CODES.M; if (

Android開發——Android 6.0許可權管理機制詳解

0.前言最近在研究所實習,我負責維護Android手機取證專案的Android客戶端,有客戶反映我們的APP在Android6.0無響應,經過除錯發現SD卡讀寫許可權許可權被拒絕。但明明是在AndroidManifest.xml檔案中宣告過的。查了很多資料才知道Android

Android 6.0許可權問題

專案在小米6.0上面執行時,使用打電話和獲取相簿的功能時崩潰了,但在AndroidManifest.xml中聲明瞭相關許可權 <uses-permission android:na

專案中處理 android 6.0 許可權管理問題

android 6.0對於許可權管理比較收緊,因此在適配android 6.0的時候就很有必要考慮一些許可權管理的問題。 如果你沒適配6.0的裝置並且許可權沒給的話,就會出現類似如下的問題: java.lang.SecurityException: Permission Denial: starting I

專案中處理android 6.0許可權管理問題

android 6.0對於許可權管理比較收緊,因此在適配android 6.0的時候就很有必要考慮一些許可權管理的問題。 如果你沒適配6.0的裝置並且許可權沒給的話,就會出現類似如下的問題: java.lang.SecurityException: Permission Denial: startin

android 6.0 許可權的坑

Android 6.0 23 對應用的許可權做保護修改, 參考:  https://developer.android.com/training/permissions/requesting.html 獲取危險許可權時只能動態(彈窗)獲取授權,或者降低編譯sdk版本 降低版

Android 6.0許可權請求相關及許可權分組

Android M(6.0)API 23後加入了許可權請求設定,APP需要使用某些許可權需要主動申請。 許可權分為3類,一組是Normal許可權,無需申請,另一組是Dangerous,需申請,然後是特殊許可權,需申請。 先看下Normal許可權列表: 再看下Danger