1. 程式人生 > >App如何跳轉到MIUI神隱模式詳細設定介面,而非所有app的神隱模式介面

App如何跳轉到MIUI神隱模式詳細設定介面,而非所有app的神隱模式介面

App如何跳轉到MIUI神隱模式詳細設定介面

發這篇文章的原因是因為,最近在研究MIUI後臺如何保活。

但是網上找到的程式碼,只能進到所有app的神隱模式配置介面,就像這樣

傳統做法:

public void openBigGodMode(View v){
Intent intent = new Intent();
intent.setComponent(new ComponentName("com.miui.powerkeeper",
"com.miui.powerkeeper.ui.HiddenAppsContainerManagementActivity"));
startActivityForResult(
intent,GOD_MODE_ALL); }
這種做法開啟的介面是這樣的

這麼麻煩的,載入時間長不說,還要使用者手動做選擇,體驗是非常不好的。

經過一些搜尋,還是無果,最後反編譯了PowerKeeper的原始碼,找到了兩個線索:


這裡的v1就是putExtra時的name,預設值是v2也就是“android”,哈,那現在就知道了Extra是怎麼傳值的。

我先寫這麼一個介面


最好的做法:(使用者體驗最佳)

public void openGodMode(View v){
Intent intent = new Intent();
intent.setComponent(new 
ComponentName("com.miui.powerkeeper", "com.miui.powerkeeper.ui.HiddenAppsConfigActivity")); intent.putExtra("package_name", "test.cn.tellyouwhat.androidtest"); intent.putExtra("package_label", "AndroidTest"); startActivity(intent); }

這樣的話,啟動的介面直接就是這樣了:


最後,叮囑一句,用StartActivityForResult啟動那個intent,不管在神隱模式的介面怎麼操作,返回的resultCode總是0,也就是RESULT_CANCELED
,所以無法判斷使用者是否關了神隱模式