2010-07-14 60 views
4

我打算放弃呼叫,我觉得这是解决方法之一。 如何通过代码激活飞行模式?如何将AIRPLANE_MODE_ON设置为“True”或ON?

这样我会根据某些事件放弃呼叫。

+2

请注意,开/关切换飞行模式不再可能由于Android 4.2(果冻豆主要版本1)的。这是因为Google采用了BAN​​DAGE解决方案来解决Android中的缺陷,而不是重新检查其安全模型。 – ChuongPham 2012-11-24 17:07:05

回答

15

查看博客文章Android: Controlling Airplane Mode

只能高达API 16

// 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); 

其中isEnabled是飞行模式是否启用。

+0

我无法部署它。此代码是否在Broadcastreceiver类 – 2010-07-14 21:18:48

+1

中发布?无论您需要执行此操作,它都可以使用。不过请记住,您需要WRITE_SETTINGS权限来执行此操作。 – Jess 2010-07-15 05:08:28

+0

我仍然收到像Settings.System错误\t解决 – 2010-07-15 21:01:12

0
public static boolean getAirplaneMode(Context context) { 
     try { 
     int airplaneModeSetting = Settings.System.getInt(context.getContentResolver(), Settings.System.AIRPLANE_MODE_ON); 
     return airplaneModeSetting==1?true:false; 
    } catch (SettingNotFoundException e) { 
     return false; 
    } 
    } 
相关问题