1. 程式人生 > >Android 判斷手機是否root

Android 判斷手機是否root

//判斷手機是否root
public static boolean isRoot() {
    String binPath = "/system/bin/su";
    String xBinPath = "/system/xbin/su";
 
    if (new File(binPath).exists() && isCanExecute(binPath)) {
        return true;
    }
    if (new File(xBinPath).exists() && isCanExecute(xBinPath)) {
        return true;
    }
    return false;
}
 
private static boolean isCanExecute(String filePath) {
    java.lang.Process process = null;
    try {
        process = Runtime.getRuntime().exec("ls -l " + filePath);
        BufferedReader in = new BufferedReader(new InputStreamReader(process.getInputStream()));
        String str = in.readLine();
        if (str != null && str.length() >= 4) {
            char flag = str.charAt(3);
            if (flag == 's' || flag == 'x')
                return true;
        }
    } catch (IOException e) {
        e.printStackTrace();
    } finally {
        if (process != null) {
            process.destroy();
        }
    }
    return false;
}     

相關推薦

Android 判斷手機是否root

//判斷手機是否root public static boolean isRoot() {     String binPath = "/system/bin/su";     String xBinPath = "/system/xbin/su";       if (n

判斷手機是否ROOT 程式碼實現+ Android 作業系統 獲取Root許可權 原理解析

判斷手機是否具有ROOT限                                                    許多機友新購來的Android機器沒有破解過Root許可權,無法使用一些需要高許可權的軟體,以及進行一些高許可權的操作,其實破解手機Root

Android 判斷手機是否有root許可權

root許可權是安卓最高的操作許可權,俗稱superuser,簡稱su,一般來說root過的手機,系統目錄會有su目錄和系統app目錄中有Superuser.apk,或者kingroot、360Root

Android 判斷手機廠商rom

有時候需要判斷手機系統的ROM,檢測ROM是MIUI、EMUI還是Flyme,可以使用getprop命令,去系統build.prop檔案查詢是否有對應屬性來判斷是什麼ROM。build.prop的介紹可以看Android build.prop簡介

RomUtil【Android判斷手機ROM,用於判斷手機機型】

參考資料 Android判斷手機ROM 正文 有時候需要判斷手機系統的ROM,檢測ROM是MIUI、EMUI還是Flyme,可以使用getprop命令,去系統build.prop檔案查詢是否有對應屬性來判斷是什麼ROM。 build.prop的介紹可以看Android build.prop簡介 程式

android 判斷手機是否是國內的手機的方法(getSimCountryIso和getSimOperator)

有一個需求:如果手機插入了sim卡,要判斷該手機是否是大陸使用者? 方法一: /**      * 判斷國家是否是國內使用者      *       * @return      */     public static boolean isCN(Context cont

Android判斷手機是否是小米MIUI系統

public class MIUIUtils { // 檢測MIUI private static final String KEY_MIUI_VERSION_CODE = "ro.

Android 判斷手機有沒有安裝該應用的工具類

public class AppInstallUtils{ private static List<PackageInfo> cachedList; private static long lastDetectTime = 0; /** * 判斷是否安裝

Android 判斷手機裝置是否是小米,華為,魅族裝置

最近接到了需求要搞推送,但是小米和華為系統的特殊性要單獨 整合他家自己的推送,所以就去判斷下手機品牌型號! 不多說直接開擼,直接將手機品牌的小寫全拼寫上就可以 此方法目前測試對小米

android-判斷手機是否支援相機,有幾個攝像頭?

//判斷是否存在攝像頭 private boolean hasCameraSupport() { return CONTEXT.getPackageManager().hasS

Android判斷手機中的應用是否具有某些許可權(例如小米手機中是否具有懸浮窗許可權)

op 的值是 0 ~ 47,其中0代表粗略定位許可權,1代表精確定位許可權,24代表懸浮窗許可權。(具體可以看看android原始碼在android.app下就有個AppOpsManager類) uid 當前應用用到的uid ,可通過 Binder.getCallin

Android判斷手機時候有導航欄的方法

參考:https://zhidao.baidu.com/question/1241728811608853219.html             https://segmentfault.com/q/1010000004387583             http://www.cnblogs.com/

android判斷手機正在充電

package com.android.factorymode; import android.app.Activity; import android.content.BroadcastRecei

Android判斷手機裡是否有SIM卡

由於專案的需要,要判斷手機裡是否有sim卡。在網上找了一下資料結果發現,網上的資料很多都是一樣的,都是判斷sim卡的狀態,把程式碼新增進去後發現不能滿足需求。然後就自己看了一下文件。程式碼如下。 /** * @author CX- * @判斷 是否含有sim卡

android 判斷手機是否打開了允許模擬位置選項

最近看到有人問 “怎麼才能獲取到 手機是否打開了 允許模擬位置”呢? 其實很簡單,這些設定項,基本都是寫在資料庫裡,所以只要看看setting的原始碼(或者檢視logcat可能也可以得到些有用的資訊),就能知道該配置是寫了資料庫的哪個欄位。 允許模擬位置 boolean i

Android 判斷手機是否安裝指定的軟體,以及呼叫指定的軟體

1、我們經常會需要判斷當前的手機是否安裝的某個apk,來給出提示。 /** * 檢查手機上是否安裝了指定的軟體 * @param context * @param p

Android判斷手機是否已經Root

分享一下我老師大神的人工智慧教程!零基礎,通俗易懂!http://blog.csdn.net/jiangjunshow 也歡迎大家轉載本篇文章。分享知識,造福人民,實現我們中華民族偉大復興!        

Android判斷是否存在外置SD卡(獲取手機所有存儲設備的路徑)

SD卡獲取手機裏所有存儲設備盤符,首先需要得到掛載在手機上的有哪些盤符,這裏需要用到一個被系統隱藏的方法, 即StorageManager下的getVolumePaths()方法。具體通過反射得到。 方法返回值為字符串數組, getVolumeList返回所有相關信息 StorageVolume:

通過判斷瀏覽器的userAgent,用正則來判斷手機是否是ios(蘋果)和Android(安卓)客戶端

A- A+ 通過判斷瀏覽器的userAgent,用正則來判斷手機是否是 ios (蘋果)和 Android (安卓)客戶端。程式碼如下: <script type="text/java

Android判斷當前手機是否在wifi環境下

private static boolean isWifi(Context mContext) { ConnectivityManager connectivityManager = (ConnectivityManager) mContext