Мой широковещательный приемник
public class ConnectionChangeReceiver extends BroadcastReceiver {
private Context mContext;
@Override
public void onReceive(Context context, Intent intent) {
ConnectivityManager connectivityManager = (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE);
NetworkInfo activeNetInfo = connectivityManager.getActiveNetworkInfo();
Intent mIntent = new Intent(context, PlayerService.class);
if (activeNetInfo != null && activeNetInfo.isConnectedOrConnecting()) {
Log.i("TEST", "true");
context.startService(mIntent);
}
listener.onConnected(true);
} else {
Log.i("TEST", "false");
context.stopService(mIntent);
listener.onConnected(false);
}
}
interface OnConnectedListener {
void onConnected(boolean isConnected);
}
void setOnConnectedListener(OnConnectedListener listener) {this.listener = listener;}
Manifest
<receiver android:name="com.vadimfedchuk1994gmail.radio.ConnectionChangeReceiver"
android:label="NetworkConnection">
<intent-filter>
<action android:name="android.net.conn.CONNECTIVITY_CHANGE"/>
</intent-filter>
</receiver>
В действии
registerReceiver(mConnectionChangeReceiver, new IntentFilter(ConnectivityManager.CONNECTIVITY_ACTION));
Когда моя деятельность сосредоточена, приемник работает хорошо
но активность не фокусируется, в журнале не пропускается сообщение об изменении сетевого подключения, как этот Log.i ("TEST", "true");
Мне нужно, чтобы приемник работал всегда