Я определил приемник в приложении Android Android для песочницы:
<receiver
android:exported="true"
android:name="com.sandboxapplication.NetworkReceiver">
<intent-filter>
<action android:name="android.net.conn.CONNECTIVITY_CHANGE" />
</intent-filter>
</receiver>
Это довольно просто:
public class NetworkReceiver extends BroadcastReceiver {
private static final String TAG = NetworkReceiver.class.getName();
@Override
public void onReceive(Context context, Intent intent) {
Log.i(TAG, "Received Network Change event.");
}
}
Этот приемник работает нормально, если в моем файле build.gradle my targetSdkVersion равно 23. Однако, если я установил myTestVVersion на 24, приемник никогда ничего не получит. Фактически, если я помещаю точку прерывания отладки в моем приемнике, Android Studio дает мне визуальную индикацию, что он выглядит так, как класс никогда не загружается в память.
Я пропустил что-то очень простое в документации по Android N? Есть ли новый способ обнаружения событий изменения связи?