3
我是Android的新手。我想從一個更有經驗的程序員那裏知道我是否做得很好。一個活動裏面我用這種方式宣告一個BroadcastReceiver:活動內廣播接收器
private BroadcastReceiver locationUpdateReceiver = new BroadcastReceiver() {
@Override
public void onReceive(Context context, Intent intent) {
//Do something
}
}
};
我註冊了接收器的onResume()和註銷的onPause它()。我可以在內存泄漏中運行嗎? 如果否,如果我聲明一個擴展了BroadcastReceiver的非靜態內部類,並且我在活動內部使用它,那麼會一樣的註冊和取消註冊? (我想這就是我控制它的生命週期)。
在此先感謝。
謝謝你,你的意思是在這兩種情況下? – iacopo
是的,內部類將是相同的。對於每個onResume,一旦活動進入後臺(暫時或活動將被銷燬),就會調用onPause,您可以確定地知道自己的邏輯沒問題。 –
最好在onStart()而不是onResume()上註冊它。您應儘可能避免在onResume/onPause中編寫代碼,以避免應用程序之間的緩慢轉換。 – jBilbo