Note that there are some explanatory texts on larger screens.

plurals
  1. POANDROID - Crash when I call sendBroadcast to check the network
    text
    copied!<p>I have a broadcast to check the network, when the network changes state, I notify my activity with onNetworkActivated() or onNetworkInactivated():</p> <pre><code>public class NetworkBroadcastReceiver extends BroadcastReceiver { private OnNetworkListener currentActivity = null; public NetworkBroadcastReceiver(FragmentActivity activity) { try { currentActivity = (OnNetworkListener) activity; } catch (ClassCastException e) { throw new ClassCastException(activity.toString() + " doit implémenter OnNetworkListener"); } } @Override public void onReceive(Context context, Intent intent) { ConnectivityManager connectivity = (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE); if (connectivity == null) { currentActivity.onNetworkInactivated(); return; } else { NetworkInfo info = connectivity.getActiveNetworkInfo(); if (info != null &amp;&amp; info.getState() == NetworkInfo.State.CONNECTED) { currentActivity.onNetworkActivated(); return; } } currentActivity.onNetworkInactivated(); } public interface OnNetworkListener { public void onNetworkActivated(); public void onNetworkInactivated(); } } </code></pre> <p>In my Activity, when I I need to call for various reasons sendBroadcast the first time, but Android crash :s</p> <pre><code>public class Earthquake extends FragmentActivity implements OnNetworkListener { private FragmentManager fragmentManager; private NetworkBroadcastReceiver networkbroadcastreceiver; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); fragmentManager = getSupportFragmentManager(); networkbroadcastreceiver = new NetworkBroadcastReceiver(Earthquake.this); this.registerReceiver(networkbroadcastreceiver, new IntentFilter(ConnectivityManager.CONNECTIVITY_ACTION)); this.sendBroadcast(new Intent(ConnectivityManager.CONNECTIVITY_ACTION)); } @Override protected void onDestroy() { this.unregisterReceiver(networkbroadcastreceiver); super.onDestroy(); } public void onNetworkActivated() { Log.e("onNetworkActivated", "onNetworkActivated"); } public void onNetworkInactivated() { Log.e("onNetworkInactivated", "onNetworkInactivated"); } } </code></pre> <p>What is the problem ?</p> <p>Thank you in advance</p>
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload