【发布时间】:2015-09-16 07:44:53
【问题描述】:
如您所知,Android 中有飞行模式功能设置。 如果您执行此功能,您将无法使用数据、互联网、呼叫、消息等。如何在应用中实现飞行模式功能?
- 我不想通过我的应用程序使用互联网、数据、通话、搞乱。
喜欢飞行模式。
【问题讨论】:
如您所知,Android 中有飞行模式功能设置。 如果您执行此功能,您将无法使用数据、互联网、呼叫、消息等。如何在应用中实现飞行模式功能?
喜欢飞行模式。
【问题讨论】:
请在清单文件中添加权限
<uses-permission android:name="android.permission.WRITE_SETTINGS" />
以及来自this BLOG的代码
检查是否启用:
boolean isEnabled = Settings.System.getInt(
context.getContentResolver(),
Settings.System.AIRPLANE_MODE_ON, 0) == 1;
切换它:
// toggle airplane mode
Settings.System.putInt(
context.getContentResolver(),
Settings.System.AIRPLANE_MODE_ON, isEnabled ? 0 : 1);
// Post an intent to reload
Intent intent = new Intent(Intent.ACTION_AIRPLANE_MODE_CHANGED);
intent.putExtra("state", !isEnabled);
sendBroadcast(intent);
要获得有关状态变化的通知:
IntentFilter intentFilter = new IntentFilter("android.intent.action.SERVICE_STATE");
BroadcastReceiver receiver = new BroadcastReceiver() {
@Override
public void onReceive(Context context, Intent intent) {
Log.d("AirplaneMode", "Service state changed");
}
}
context.registerReceiver(receiver, intentFilter);
【讨论】: