Android Studio模擬器的root權限
阿新 • • 發佈:2018-10-04
found oot 網上 root權限 安卓 內核版本 華為手機 androi 測試 通過
前言
一個安卓練習中用自帶的sqlite3數據庫查看數據的時候,需要通過adb shell進入/data/data/[包名]/databases/目錄中,通過查看創建的數據庫來查看相應的數據或者表。起初是打算在實機上進行測試的,在這裏提一句,如果在實機上測試,則手機必須具有root最高權限。但是由於自己用的是華為手機,如果需要root的話,必須需要到官網上去申請解鎖碼才能利用一鍵root工具來root,總之非常麻煩,而且刷機也不能保證一定成功,所以考慮再三決定使用Android Studio中的模擬器進行測試。但是發現仍然出現了和實機一樣的錯誤"permission denied",雖然搜索了相關教程,提示說可以把su
adb pull
傳到模擬器內部;而且無法進入adb root
模式.....但是操作實在復雜,好在筆者找到一個方法,當然可能只是個例,但是如果有人也遇到這個問題並且網上方法都試過的話,不妨試一試我的辦法。
分析問題
我們通過adb shell直接進入的時候顯示的是這樣的:
@generic_x86:/ $
但是這恰恰表示不是root身份,如果顯示的為:
root@generic_x86:/ #
就說明你已經是以root身份運行的了,不用再繼續看這篇文章了。
問題提示:
/system/bin/sh: su: not found
這並不是找不到su命令,而是因為沒有root權限,也執行不了su命令,這是一個錯誤的循環:想要進入root,但是必須使用只有root權限的命令進入root。
解決方法
查看一下你的模擬器內核版本是不是Android7.0或者以上的,如果是,那是因為Android 7.0的模擬器是沒有root權限的,所以只需要重新安裝一個非Android 7.0版本的模擬器,比如6.0就行了。安裝好模擬器後,通過adb root
進入root模式,然後正常操作就好了。
Android Studio模擬器的root權限