我選取的是極光推送,當把程序殺死時候就接受不到推送過來的訊息。這是因為我使用的是小公尺手機,小公尺和華為手機屬於那種深度定製安卓系統,需要使用者的操作才能夠實現應用「保活」的目的。
小公尺【miui】
自啟動管理:需要把應用加到【自啟動管理】列表,否則殺程序或重新開機後程序無法開啟
通知欄設定:應用預設都是顯示通知欄通知,如果關閉,則收到通知也不會提示
網路助手:可以手動禁止已安裝的第三方程式訪問2g/3g和wifi的網路和設定以後新安裝程式是否允許訪問2g/3g和wifi的網路
miui 7 神隱模式: 允許應用進行自定義配置模式,應用在後台保持聯網可用,否則應用進入後台時,應用無法正常接收訊息。【設定】下電量和效能中【神隱模式】
華為【emotion】
自啟動管理:需要把應用加到【自啟動管理】列表,否則殺程序或重新開機後程序不會開啟,只能手動開啟應用
後台應用保護:需要手動把應用加到此列表,否則裝置進入睡眠後會自動殺掉應用程序,只有手動開啟應用才能恢復執行
魅族【flyme】
自啟動管理:需要把應用加到【自啟動管理】列表,否則殺程序或重新開機後程序無法開啟
通知欄推送:關閉應用通知則收到訊息不會有任何展示
省電管理: 安全中心裡設定省電模式,在【待機耗電管理】中允許應用待機時,保持允許,否則手機休眠或者應用閒置一段時間,無法正常接收訊息。
vivo【funtouch os】
記憶體一鍵清理:需要將應用加入【白名單】列表,否則系統自帶的「一鍵加速」,會殺掉程序
自啟動管理:需要將應用加入「i管家」中的【自啟動管理】列表,否則重啟手機後程序不會自啟。但強制手動殺程序,即使加了這個列表中,後續程序也無法自啟動。
oppo【coloros】
凍結應用管理:需要將應用加入純淨後台,否則鎖屏狀態下無法及時收到訊息
自啟動管理:將應用加入【自啟動管理】列表的同時,還需要到設定-應用程式-正在執行裡鎖定應用程序,否則殺程序或者開機後程序不會開啟,只能手動開啟應用
獲取品牌的系統:
開啟自啟動頁面:
/*開啟自啟動管理頁*/
public static void openstart(context context)
string system = getsystem();
intent intent = new intent();
if(system.equals(sys_emui))else if(system.equals(sys_miui))
trycatch (exception e)
}
程序保活方法
mysql proxy原始碼中,使用了一種程序保活的方法。這種方法的基本原理是 當父程序完成基本的初始化後,建立子程序,由子程序繼續後面的主體邏輯。而父程序wait子程序的退出狀態。一旦發現子程序是由於收到訊號而退出的,則重啟子程序。這種方法的實現 如下 include include includ...
Android程序保活
2個方法 1.不讓殺 2.殺了復活 程序優先順序 1.前台程序 resume 2.可見程序 pause 4.後台程序 5.空程序 不被殺提公升優先順序1.前台服務 啟用2個前台服務,消除通知 變成可見程序 2.廣播監聽鎖屏解鎖,啟動1畫素活動 儘量減少記憶體占用,在相同oom adj的情況下,也更加...
Android程序保活
對於程式被殺死,一般我們能做到兩個方面優化 保證程序的優先順序 當程序被殺死之後的喚醒 程序的優先順序 程序根據優先順序區分可以分為 前台程序 可見程序 服務程序 後台程序 空程序 程序中有個較為具體的值oom adj,其數值越小對應的優先順序越高 紅色部分是易於被 的 4 16 綠色部分是不易被 ...