我在一个沙盒Android N应用程序中定义了一个接收器:
<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文件中的targetSdkVersion为23,则此接收器正常工作。但是,如果我将targetSdkVersion设置为24,则接收器永远不会接收任何内容。实际上,如果我在我的接收器中放置一个调试断点,Android Studio会给我视觉提示,看起来该类甚至从未加载到内存中。
我在Android N文档中漏掉了一些非常基本的东西吗?是否有一种新的方法来检测连接更改事件?