मेरे पास कोड का एक स्निपेट है जिसे मैं एक सेवा से कॉल कर रहा हूं:ब्रॉडकास्ट के लिए रजिस्टर रिसीवर केवल तभी पंजीकृत है जब यह पहले से पंजीकृत नहीं है?
context.registerReceiver(new BroadcastReceiver() {
@Override
public void onReceive(Context context, Intent intent) {
try {
WifiManager mWm = (WifiManager) context
.getSystemService(Context.WIFI_SERVICE);
ret = mWm.isWifiEnabled();
// DO MORE STUFF HERE
} catch (Exception e) {
}
}
}, new IntentFilter(WifiManager.WIFI_STATE_CHANGED_ACTION));
मुझे यह देखने का एक तरीका है कि यह जांचने और सुनिश्चित करने के लिए कि registerReceiver
इसे पहले से कॉल करने से पहले पहले से नहीं सुन रहा है। क्या यह संभव है?
उदाहरण के लिए यदि कोड का मेरा स्निपेट एक विधि में है, और मैं विधि 10 बार कॉल करता हूं, तो अभी onReceive
विधि 10 बार चलती है।
ऐसा लगता है कि आप सही हैं, मुझे इसे बंद करने से रोकने के लिए मेरी सेवा में एक थ्रेड का उपयोग करने की आवश्यकता है। – pcm2a