在Android真機上調試程序有一個前提,就是這個apk包必須有 debuggable=true 的屬性才行。而除了本身開發的apk可以控制打包屬性以外,其餘的程序發行以後顯然不會設這個值爲 true 的(否則隨隨便便就能被Debug ,豈不是很沒安全感 )。爲了調試這些第三方的apk,咱們能夠從整個手機系統入手 —— 由於除了每一個apk中的 debuggable 標誌之外,這個標誌還能夠在系統中全局指定,換句話說,只要把系統裏的 debuggable 值設爲true,那麼無論apk的這個屬性是什麼值 均可以被調試了。html
Android手機系統的 ro.debuggable 這一配置位於 /default.prop 文件中,而 /default.prop 又來源於手機每次啓動時 boot.img 中 ramdisk 的掛載,因此想要直接經過修改 /default.prop 是不可行的,可是系統文件是隻讀的,改了也沒用。網上流傳較廣的是改 boot.img ,然而錘子並無解鎖 bootloader ,改了的話會變磚的。好在Magisk 有一個模塊可以助咱們實現這個修改,且看操做(默認手機已經 root 且安裝了 Magisk ):shell
一、打開並在模塊界面中搜索 MagiskHide Props Config ,並安裝。安全
二、用PC 鏈接 Android 手機,在PC端 打開命令行或終端,依次輸入如下指令(如圖):bash
adb shell //adb進入命令行模式
su //切換至超級用戶
magisk resetprop ro.debuggable 1 //設置debuggable
stop;start; //必定要經過該方式重啓
待手機重啓事後,如同開啓「上帝模式「,任意調試手機裏的任何程序了!ide
參考資料:spa
一、渲染逆向工程:打造一臺調試任意Android遊戲的設備 https://zhuanlan.zhihu.com/p/100583752命令行
二、Android修改ro.debuggable 華爲真機adb調試全部進程 https://www.renyiwei.com/archives/1704.htmldebug
三、安卓8.0 Magisk 修改ro.debuggable 1的簡單方法 https://bbs.pediy.com/thread-248322.htm調試