Ho un frammento di codice che sto chiamando da un servizio:registerReceiver for Broadcast solo se non è già registrato?
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));
Quello che vorrei è un modo per controllare e fare in modo che il registerReceiver
non già in attesa prima di chiamare di nuovo. È possibile?
Ad esempio se il mio snippet di codice è in un metodo e chiamo il metodo 10 volte, in questo momento il metodo onReceive
sembra essere eseguito 10 volte.
Sembra che tu abbia ragione, avevo bisogno di usare una discussione nel mio servizio per impedirgli di sparare più e più volte. – pcm2a