无法在牛轧糖和棉花糖中启用或禁用移动数据

时间:2017-01-20 10:23:40

标签: android android-6.0-marshmallow android-7.0-nougat

我已添加以下权限并定义了广播接收器

<uses-permission android:name="android.permission.INTERNET"/>
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE"/>
<application
    android:allowBackup="true"
    android:icon="@mipmap/ic_launcher"
    android:label="@string/app_name"
    android:supportsRtl="true"
    android:theme="@style/AppTheme">
    <activity
        android:name=".LoginActivity"
        android:label="@string/app_name">
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />

            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>
    <receiver android:name=".CheckLockBroadCastReciever" android:enabled="true" android:exported="false">
        <intent-filter>
            <action android:name="android.net.conn.CONNECTIVITY_CHANGE" />
            <!--<action android:name="android.net.wifi.WIFI_STATE_CHANGED" />-->
        </intent-filter>
    </receiver>
</application>`

当我在jellybeans os,KitKat操作系统和棒棒糖操作系统中打开/关闭移动数据时,我定义的接收器正在调用,但是接收器没有在棉花糖和牛轧糖中调用。

2 个答案:

答案 0 :(得分:1)

使用permission

<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>

另外,请尝试在onCreate内注册您的接收者,并且不要忘记取消注册并在onPauseonResume内注册。

答案 1 :(得分:0)

网络更改了android N和high

的侦听器实现
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.N) {
        registerReceiver(mNetworkReceiver, 
                new IntentFilter(ConnectivityManager.CONNECTIVITY_ACTION));
 }

请参阅https://developer.android.com/about/versions/nougat/android-7.0-changes.html