0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

自動激活Shizuku

汽車電子技術(shù) ? 來源:安卓腳本 ? 作者: 稻草人 ? 2023-03-03 13:50 ? 次閱讀

喲...好久沒更新文章了.嘿嘿, 今天得空兒,更新一篇~

關(guān)于adb權(quán)限老生常談的問題,Shizuku的激活狀態(tài)莫名其妙掉了再次激活很麻煩,所以啊在執(zhí)行需要用到ADB權(quán)限的腳本時,在腳本代碼前加上我今天講的知識,就無須擔(dān)心這個問題.檢測如果沒有adb權(quán)限.就自動去激活一下Shizuku. 首先說一下整個流程的原理.

關(guān)于無線ADB:

無線ADB就是在手機(jī)上打開一個adb的端口. 默認(rèn)是 5555, 但是開這個端口的前提是.需要手機(jī)連接電腦打開手機(jī)的adb調(diào)試之后,在電腦的終端上執(zhí)行一條命令

adb tcpip 5555

執(zhí)行之后無線ADB算是開放了.此時拔掉數(shù)據(jù)線. 在終端輸入

adb connect 192.168.1.80 #自己替換成自己手機(jī)的IP


connected to 192.168.1.80:5555 #出現(xiàn)這個提示,說明連接成功了

這就是無線的方式連接adb調(diào)試, 但是它有一個弊端.就是每次重啟后這個adb的端口就會被重置了,需要重新連接數(shù)據(jù)線進(jìn)行開啟

關(guān)于Termux:

Termux之前講過是一個Android端的終端仿真器,有很多的軟件可安裝.這里面就需要用到adb工具了, adb這個可執(zhí)行程序在android-tools這個軟件包中,需要在Termux里面先安裝它,安裝命令如下:

pkg install -y android-tools

加-y參數(shù)會直接跳過確認(rèn)提醒直接一步安裝完畢.我就不截圖了,你們自己執(zhí)行一下就好.安裝完畢后Termux的準(zhǔn)備也就完成了.

Shizuku激活命令:

adb shell sh /storage/emulated/0/Android/data/moe.shizuku.privileged.api/start.sh

圖片

執(zhí)行階段:

關(guān)于Autojs如何調(diào)用Termux. 原理和方法請參考上一篇發(fā)的文章

傳送門: 利用Autojs調(diào)用termux的內(nèi)部命令

注意這篇文章一定要看. 否則你的Termux不能從外部被調(diào)用的. 需要改包.因?yàn)锳utojs沒有調(diào)用Termux的權(quán)限.

這里我需要Ctrl+CV一下. 請騷等我一下...

圖片

好了...代碼copy完成了

//判斷autojs是否有adb權(quán)限
let adbCheck = $shell.checkAccess("adb");
if (!adbCheck) {
    console.log("沒有adb權(quán)限");
    app.launchApp("Termux");
    let szkCommand = "adb shell sh /storage/emulated/0/Android/data/moe.shizuku.privileged.api/start.sh";
    runShellToTermux(szkCommand);
} else {
    console.log("已有adb權(quán)限");
}


//將autojs的shell切換到adb權(quán)限
$shell.setDefaultOptions({adb: true});


//在此之后執(zhí)行你需要的操作










/**
 * 使用termux終端執(zhí)行shell命令
 * @param {string}  cmd          需要執(zhí)行的命令
 * @param {string}  workdir      shell的工作目錄 不填則默認(rèn) "/sdcard/腳本/"
 * @param {boolean} backgound    是否前臺運(yùn)行 不填則默認(rèn)后臺運(yùn)行
 * @return {void}   沒有返回值
 */
function runShellToTermux(cmd, workdir, backgound) {
    let shellStr = cmd;
    let workDir = workdir || "/sdcard/腳本/";
    let bg = backgound || true;

    let strArry = shellStr.split(" ");
    let strArryLength = strArry.length - 1;
    let command = strArry[0];

    let per = util.java.array('string', strArryLength);
    for (let i = 0; i < strArryLength; i++) {
        per[i] = strArry[i+1];
    }

    let intent = new Intent();
    intent.setClassName("com.termux", "com.termux.app.RunCommandService");
    intent.setAction("com.termux.RUN_COMMAND");
    intent.putExtra("com.termux.RUN_COMMAND_PATH", "/data/data/com.termux/files/usr/bin/" + command);
    intent.putExtra("com.termux.RUN_COMMAND_ARGUMENTS", per);
    intent.putExtra("com.termux.RUN_COMMAND_WORKDIR", workDir);         //工作目錄
    intent.putExtra("com.termux.RUN_COMMAND_BACKGROUND", bg);        //是否后臺運(yùn)行
    intent.putExtra("com.termux.RUN_COMMAND_SESSION_ACTION", "0");
    context.startService(intent);
}
聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 代碼
    +關(guān)注

    關(guān)注

    30

    文章

    4670

    瀏覽量

    67764
  • 腳本
    +關(guān)注

    關(guān)注

    1

    文章

    382

    瀏覽量

    14761
  • adb
    adb
    +關(guān)注

    關(guān)注

    1

    文章

    35

    瀏覽量

    10393
收藏 人收藏

    評論

    相關(guān)推薦

    windows xp SP2激活工具(詳細(xì)步驟說明怎么激活,如何操作)

    Windows的激活窗口然后等待幾秒.4)打開一個新窗口 打開,WPA.exe文件,單擊“apply/browse按鈕”,然后關(guān)閉wpa.exe窗口。 自動打開一個新的窗口,選擇“激活windows
    發(fā)表于 01-17 17:39

    黑暗激活繼電器

    黑暗激活繼電器 把
    發(fā)表于 09-22 17:26 ?595次閱讀
    黑暗<b class='flag-5'>激活</b>繼電器

    Win7旗艦版激活工具

    Win7旗艦版激活工具Windows7旗艦版激活軟件 激活工具
    發(fā)表于 03-10 11:56 ?0次下載

    NI軟件激活

    labview、multisim、CVI等軟件激活器。
    發(fā)表于 03-31 14:15 ?4次下載

    微辰金服|不激活的信用卡會自動注銷嗎

      信用卡一直不激活會不會就自動注銷了呢?下面就讓微辰金服為大家介紹一下吧?! 「鶕?jù)信用卡的有效期來看的,一般信用卡的有效期為3-5年,標(biāo)注在信用卡的正面,在此期間內(nèi),信用卡可以隨時進(jìn)行激活
    發(fā)表于 01-15 15:50 ?521次閱讀

    windows怎么激活沒有密鑰

    首先,檢查Win10專業(yè)版的激活狀態(tài):點(diǎn)擊桌面左下角的“Windows”按鈕,從擴(kuò)展面板依次點(diǎn)擊“設(shè)置”—“更新與安全”,切換到“激活”選項(xiàng)卡,可以查看當(dāng)前系統(tǒng)激活狀態(tài)。
    的頭像 發(fā)表于 12-23 15:20 ?5.4w次閱讀

    iphone跳過id激活教程

     iphone如何跳過id來進(jìn)行激活呢?iphone跳過id激活方法如下:
    的頭像 發(fā)表于 09-18 10:53 ?5.4w次閱讀

    win10激活工具免費(fèi)激活

    win10激活工具一鍵永久激活免費(fèi)版下載入口。
    發(fā)表于 04-07 14:43 ?0次下載

    具有自動亮度調(diào)節(jié)功能的運(yùn)動激活

    電子發(fā)燒友網(wǎng)站提供《具有自動亮度調(diào)節(jié)功能的運(yùn)動激活燈.zip》資料免費(fèi)下載
    發(fā)表于 11-14 10:18 ?0次下載
    具有<b class='flag-5'>自動</b>亮度調(diào)節(jié)功能的運(yùn)動<b class='flag-5'>激活</b>燈

    S7-1500從站的激活與取消激活

    通過指令“D_ACT_DP”,可根據(jù)需要取消激活激活所組態(tài)的 DP 從站/PROFINET IO 設(shè)備。另外,還可查詢每個指定的 DP 從站或 PROFINET IO 設(shè)備當(dāng)前是啟用還是禁用。
    的頭像 發(fā)表于 01-11 11:17 ?1622次閱讀

    Shizuku的啟動

    首先使用MT管理器提取出shizuku的apk安裝包.點(diǎn)擊定位跳轉(zhuǎn)到安裝包的提取位置. 點(diǎn)擊提取的安裝包,在彈出的懸浮窗中選擇"查看"按鈕
    的頭像 發(fā)表于 03-03 13:49 ?4793次閱讀
    <b class='flag-5'>Shizuku</b>的啟動

    Windows激活工具

    直接激活Windows7,8,10 家庭版,專業(yè)版還可激活office 2010,2013,2016,2019 及各版本專業(yè)增強(qiáng)版
    發(fā)表于 04-17 11:20 ?5次下載

    激活CPU的系統(tǒng)診斷并在HMI上調(diào)用

    這里將激活“S7-300 Master”CPU 的系統(tǒng)診斷。 如果激活了系統(tǒng)診斷,則在下一次編譯硬件時將自動生成診斷所需的所有報警和塊。
    的頭像 發(fā)表于 04-15 10:13 ?593次閱讀

    一個簡單的設(shè)備激活器電路

    設(shè)備激活器是能夠使用簡單組件切換大功率電器的電路。通常,設(shè)備激活器電路使用簡單的按鈕和開關(guān)作為激活元件來觸發(fā)設(shè)備的操作。然而,在這個設(shè)備激活器中,一個簡單的家用遙控器將充當(dāng)
    的頭像 發(fā)表于 06-29 16:05 ?752次閱讀
    一個簡單的設(shè)備<b class='flag-5'>激活</b>器電路

    自動M&M啟動器-使用Alexa激活

    電子發(fā)燒友網(wǎng)站提供《全自動M&M啟動器-使用Alexa激活.zip》資料免費(fèi)下載
    發(fā)表于 07-04 10:03 ?0次下載
    全<b class='flag-5'>自動</b>M&M啟動器-使用Alexa<b class='flag-5'>激活</b>