Android 前后臺切換通知實(shí)現(xiàn)
1.背景:
我們在做應(yīng)用開發(fā)的時候,經(jīng)常需要對應(yīng)用監(jiān)聽判斷,當(dāng)前應(yīng)用是否處于前臺還是后臺,包括如果切到后臺收到通知做一些功能。以前我們常見的做法通過方法來判斷,其實(shí)還有其他的簡單方法,接下來我們將使用一些常規(guī)比較穩(wěn)當(dāng)?shù)姆椒ā?/strong>
onTrimMemory和
registerActivityLifecycleCallbacks
2.詳解
2.1public void onTrimMemory(int level)(前臺切到后臺) 這個方法屬于application的方法,我們只要對方法進(jìn)行覆蓋即可,父類已提供,在level標(biāo)識中,
TRIM_MEMORY_UI_HIDDEN:標(biāo)識當(dāng)前UI不可見,也就是我們把a(bǔ)pp切到后臺了。這個時候我們通過eventgBus或者其他的方法通知其他Activity做相應(yīng)的操作,這個方法提供的是判斷切到后臺

2.2registerActivityLifecycleCallbacks(后臺切回前臺)
public void registerActivityLifecycleCallbacks(ActivityLifecycleCallbacks callback),只注冊該方法,接口回調(diào)如下
void onActivityCreated(Activity activity, Bundle savedInstanceState);
void onActivityStarted(Activity activity);
void onActivityResumed(Activity activity);
void onActivityPaused(Activity activity);
void onActivityStopped(Activity activity);
void onActivitySaveInstanceState(Activity activity, Bundle outState);
void onActivityDestroyed(Activity activity);
我們只需要在onActivityStarted回調(diào)中進(jìn)行處理從后臺切回前臺的通知即可

最后,在基類中,接收該通知,注意:如果App混淆了,需要keep一下基本的eventBus接收類。
小黑板:
*App混淆不清的可以訪問我這篇文檔:android一站式解決混淆
本文僅代表作者觀點(diǎn),版權(quán)歸原創(chuàng)者所有,如需轉(zhuǎn)載請在文中注明來源及作者名字。
免責(zé)聲明:本文系轉(zhuǎn)載編輯文章,僅作分享之用。如分享內(nèi)容、圖片侵犯到您的版權(quán)或非授權(quán)發(fā)布,請及時與我們聯(lián)系進(jìn)行審核處理或刪除,您可以發(fā)送材料至郵箱:service@tojoy.com





