當前位置:首頁 » 安卓系統 » android檢查許可權

android檢查許可權

發布時間: 2022-05-27 17:00:27

1. android開發 彈出許可權提示框 檢查是否具有某個許可權

一般你添加了許可權,在第一次安裝運行時就會提醒,你也可以強制,比如照相機許可權檢查

java">finalprivateintREQUEST_CODE_ASK_PERMISSIONS=123;//許可權請求碼
//在執行掃描二維碼之前檢查是否具有打開照相機的許可權
try{
inthasWriteContactsPermission=context.checkSelfPermission(Manifest.permission.CAMERA);//許可權檢查
if(hasWriteContactsPermission!=PackageManager.PERMISSION_GRANTED){
requestPermissions(newString[]{Manifest.permission.CAMERA},
REQUEST_CODE_ASK_PERMISSIONS);
return;//沒有許可權,結束
}else{
//做自己的操作
}
}catch(Exceptione){
e.printStackTrace();
ToastUtil.defaultToast(getContext().getApplicationContext(),"許可權異常");
}
//回調函數,無論用戶是否允許都會調用執行此方法@Override
(intrequestCode,@NonNullString[]permissions,@NonNullint[]grantResults){
switch(requestCode){
caseREQUEST_CODE_ASK_PERMISSIONS:
if(grantResults[0]==PackageManager.PERMISSION_GRANTED){
//PermissionGranted用戶允許許可權繼續執行(我這里執行的是二維碼掃描,檢查的是照相機許可權)
Intentintent=newIntent(getActivity(),
CaptureActivity.class);
startActivityForResult(intent,REQUEST_CODE_SCAN);
}else{
//PermissionDenied拒絕
ToastUtil.defaultToast(context.getApplicationContext(),"獲取許可權失敗,無法掃描");
}
break;
default:
super.onRequestPermissionsResult(requestCode,permissions,grantResults);
}
}

2. 怎麼用代碼判斷android手機是否開啟了ROOT許可權

android手機開啟了root許可權,主要是根據root之後,獲取了手機的最高許可權,底層linux系統就會生成一個以su結尾的文件,su代表super超級許可權,如下代碼:
/**
* 判斷當前手機是否有ROOT許可權
* @return
*/
public boolean isRoot(){
boolean bool = false;

try{
if ((!new File("/system/bin/su").exists()) && (!new File("/system/xbin/su").exists())){
bool = false;
} else {
bool = true;
}
Log.d(TAG, "bool = " + bool);
} catch (Exception e) {

}
return bool;
}
android底層是使用linux進行編譯和一些驅動、網路管理的,所以可以根據linux的許可權特性來判斷是否root,許可權的管理在linux裡面很多,包括讀寫、刪除文件的許可權,也有關於訪問網路的許可權,這些許可權都需要開通才能有。

3. 怎麼用代碼判斷android手機是否開啟了ROOT 許可權

如果android手機開啟了root許可權,就和Linux系統的root許可權一樣,主要就是活動了管理員許可權(最高許可權)。在android系統中,如果手機已經root,linux系統就會在底層生成一個以su結尾的文件,su是super的意思,代表超級許可權(也叫完全設備管理許可權),這時就代表手機開啟了root,如下圖所示:

代碼如下:

public static boolean isRoot()throws Exception{
boolean isRoot = false;
File su=new File("/system/bin/su");
File su2=new File("/system/bin/su");
if (su.exists() && su2.exists()){
isRoot = true;
} else {
isRoot = false;
}
return isRoot;
}

4. android 用代碼如何檢查自己是哪種許可權

檢測許可權的代碼:

PackageManagerpm=getPackageManager();
booleanpermission=(PackageManager.PERMISSION_GRANTED==
pm.checkPermission("android.permission.RECORD_AUDIO","packageName"));
if(permission){
showToast("有這個許可權");
}else{
showToast("沒有這個許可權");
}

獲取許可權清單代碼:

try{
PackageInfopack=pm.getPackageInfo("packageName",PackageManager.GET_PERMISSIONS);</span>
String[]permissionStrings=pack.requestedPermissions;
showToast("許可權清單--->"+permissionStrings.toString());
}catch(NameNotFoundExceptione){
e.printStackTrace();
}

一般先獲取許可權清單再檢測許可權。

5. android判斷應用是否有某個許可權

可以使用以下方法:
1、判斷應用是否具有某個許可權
PackageManager pm = getPackageManager();
boolean permission = (PackageManager.PERMISSION_GRANTED ==
pm.checkPermission("android.permission.RECORD_AUDIO", "packageName"));
if (permission) {
showToast("有這個許可權");
}else {
showToast("木有這個許可權");
}
2、獲取某個應用的許可權清單
PackageInfo pack = pm.getPackageInfo("packageName",PackageManager.GET_PERMISSIONS);
String[] permissionStrings = pack.requestedPermissions;

6. Android怎麼判斷當前應用是否有root許可權

需要使用代碼來驗證。看能否在data分區創建文件,如果能夠在data分區創建文件,那麼應用具有root許可權。

7. 開發中怎樣查看Android應用所需許可權

設置 → 應用 → 找到你要查看的應用 → 許可權 即可
Android Studio 或 eclipse 在 AndroidManifest.xml 文件里可以查看,<uses-permission... 開頭的標簽就是用戶所需要的許可權

8. Android怎樣檢測哪些許可權沒有用到

Android4.0以後,可以在設置,應用中心,打開應用看到應用申請的許可權,打叉的是拒絕的許可權,需要說明的是:
1、不同手機,查看許可權管理的地方可能不一樣,因為Android手機眾多不能一一列舉,建議可以網路查找相應的方法。
2、下載LBE或者360安全管家,可以直接查看到許可權控制,只是在4.0之前可能沒辦法直接更改,需要root才能更改,4.0之後不需要root。

9. android 如何檢測應用需要什麼許可權

就我所知道的知識,目前只能是這樣獲取root許可權,但是你不是得到了process了嗎,通過執行su得到的這個process是具有root許可權的,你可以把你想做的事情在這個process中去做,說白了就是往這個process的輸入輸出流裡面寫點可執行的東西。 但是你得了解什麼樣的操作是需要root許可權的,拿到root許可權的僅有這樣一個process,而這個process只能做一些簡單的事情,復雜的事情需要自己來協調。 比如 Runtime runtime = Runtime.getRuntime(); Process proc = runtime.exec("su"); //這個proc就是具有root許可權的,你可以通過以下這種方式執行一些root許可權才能做得事。 PrintWriter pw = new PrintWriter(proc.getOutputStream()); pw.println("cd /system"); pw.flush(); pw.close(); 如果需要「重定向輸入輸出」或者是「管道」操作都是需要自己在代碼中協調的,畢竟這個process並不是解釋器,而是執行器,需要解釋的東西它還是不懂的。如果只是想要部分功能給用戶彈個提示框什麼的,在執行su這個process的時候就會彈出了,以上的幫助我想足夠了。 如果說要給自己整個應用都附上root許可權,不太好辦到,但是技術上是可行的,前提是你了解android的底層(linux)構造,會自己編寫linux應用,知道如何將一個應用的許可權通過linux的授權方式在符合android的運行框架內授權為root許可權,這樣你的應用就算是完全獲得root許可權了。 知識有限,幫不了太多,希望對你有所幫助。

熱點內容
python二維 發布:2024-09-21 08:40:05 瀏覽:231
安卓電視上如何下載電視家 發布:2024-09-21 08:29:57 瀏覽:293
php字元串引號 發布:2024-09-21 08:17:03 瀏覽:783
androidduration 發布:2024-09-21 08:17:03 瀏覽:402
大話西遊2華山論劍什麼時候開的伺服器 發布:2024-09-21 08:00:15 瀏覽:530
編程馬鞍數 發布:2024-09-21 07:48:32 瀏覽:727
新建文件夾dos命令 發布:2024-09-21 07:44:13 瀏覽:131
舞蹈解壓介紹 發布:2024-09-21 07:40:04 瀏覽:974
qq如何顯示密碼 發布:2024-09-21 07:22:26 瀏覽:566
安卓導航如何調大mlc音量 發布:2024-09-21 06:59:21 瀏覽:34