0
我的應用程序中有一個自定義的BroadcastReceiver,用於在網絡連接更改時接收意圖。但出於某種原因,只要連接發生變化,它就會運行兩次,我不知道爲什麼。爲什麼我的BroadcastReceiver onReceive()運行兩次?
我該如何解決這個問題,以便它只在網絡更改時觸發一次?
注意: 不,它不在清單中兩次。
謝謝!
編輯: 這裏的接收器代碼:
public class NetworkStateReceiver extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
// Do stuff; This is running twice!
}
}
而這裏的清單中的位:
<receiver android:name="NetworkStateReceiver">
<intent-filter>
<action android:name="android.net.conn.CONNECTIVITY_CHANGE"/>
</intent-filter>
</receiver>
您可以加入一些代碼嗎? (相關代碼) – staaar 2013-03-19 09:45:36
Dude添加你的代碼你試過的。 – 2013-03-19 09:47:30
如果沒有一些代碼來找到問題,很難給出答案。你可以嘗試使用單例模式來避免創建多個接收器對象,但我認爲你的問題在代碼中的某處,你應該修復它,而不是找到一個解決方法 – Xavjer 2013-03-19 09:48:20