Android4.0(API level 14)之前处理方案
//监听后台数据设置变化
registerReceiver(new BroadcastReceiver(){
@Override
public void onReceive(Context context, Intent intent) {
//获取后台数据设置
boolean backgroundEnabled = connectivity.getBackgroundDataSetting();
if(backgroundEnabled){
//TODO: 允许后台数据传输
}else{
//TODO: 禁用后台数据传输
}
}
},
new IntentFilter(ConnectivityManager.ACTION_BACKGROUND_DATA_SETTING_CHANGED));
Android4.0之后处理方案
创建一个Preference Activity来允许用户修改应用程序的数据使用方法,那么用户就可以在系统设置中检查并修改你的应用程序的数据使用方法。
<activity android:name=".MyPreferences">
<intent-filter>
<action android:name="android.intent.action.MANAGE_NETWORK_USAGE" />
<category android:name="android.intent.category.DEFAULT" />
</intent-filter>
</activity>
设置好以后,系统设置中的View Application Settings按钮可启动你的Preference Activity,让用户调整应用程序的数据使用方法,而不是限制或禁用它。