Android代碼實(shí)現(xiàn)重啟系統(tǒng)

問題描述:

在某種情況下,觸發(fā)重啟函數(shù),重啟安卓系統(tǒng)

問題分析:

涉及到Android系統(tǒng)的重啟,必然需要申請(qǐng)root權(quán)限。

申請(qǐng)權(quán)限則有代碼申請(qǐng)和將應(yīng)用打包成系統(tǒng)應(yīng)用兩種方式。代碼申請(qǐng)的話必然需要設(shè)備root,并且會(huì)彈框告知用戶是否同意;封裝成系統(tǒng)app,添加android.uid.system,再進(jìn)行系統(tǒng)簽名。
我根據(jù)我們的需求,采用的是后者。

Android并沒有給出明顯的重啟系統(tǒng)的方法給我們調(diào)用,反倒是可以用使用Runtime的shell命令來實(shí)現(xiàn)重啟系統(tǒng)

解決辦法

  1. 在manifest中添加android.uid.system
  2. 添加權(quán)限?(這里記不清了。小伙伴們可以在調(diào)試報(bào)錯(cuò)的時(shí)候加上)
  3. 封裝重啟方法,核心代碼如下
((ActivityManager) context.getSystemService(Context.ACTIVITY_SERVICE))
                    .killBackgroundProcesses(context.getPackageName());
Runtime.getRuntime().exec("su");
Runtime.getRuntime().exec("reboot");
  1. 系統(tǒng)簽名你的應(yīng)用??蓞⒄瘴业牧硪黄恼?a href="http://www.itdecent.cn/p/5984c81a369a" target="_blank">Android應(yīng)用添加系統(tǒng)簽名
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • Android 自定義View的各種姿勢(shì)1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 179,143評(píng)論 25 708
  • Android 是一個(gè)特權(quán)分離(privilege-separated)操作系統(tǒng),在其中每個(gè)應(yīng)用都以一個(gè)不同的系統(tǒng)...
    DanieX閱讀 4,186評(píng)論 0 3
  • 快樂的小秘密 快樂是個(gè)調(diào)皮 鬼 偷偷來偷偷走 她是個(gè)自在小精靈 人生風(fēng)景無限好 帶著快樂向前跑 讓快樂在你屁股后邊...
    大愛于華閱讀 198評(píng)論 0 0
  • 我想放棄周先生很久了。 是從哪天開始有這個(gè)念頭的呢?具體的日子我也想不起來,我只知道,我對(duì)他不再抱有任何希望。 我...
    一記沉年閱讀 537評(píng)論 0 1
  • 景點(diǎn)篇 我們?nèi)チ藘商欤才诺氖堑谝惶煜挛绾屯砩先ヌ缴娇匆咕?,第二天上午和下午去海洋公園,第二天晚上回深圳。這...
    家私陳閱讀 466評(píng)論 0 1

友情鏈接更多精彩內(nèi)容