2013-04-03 46 views
2

檢測飛行模式的波紋管代碼在果凍束版本中不起作用。如何檢測飛機模式,特別是果凍束?

// Check for Airplane Mode 
    boolean isEnabled = Settings.System.getInt(getContentResolver(),Settings.System.AIRPLANE_MODE_ON,0) == 1; 

if (isEnabled) { 
// toggle airplane mode 
Settings.System.putInt(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); 
} 

請分享您對我的懷疑的建議。在此先感謝

+0

您發佈的代碼不僅嘗試檢測飛行模式。相反,如果它被關閉,它會嘗試開啓它。如果您向我們提供了哪些信息哪些部分不適合您,那將會很好。 –

回答

5

這是代碼段是低於JB

/** 
* Gets the state of Airplane Mode. 
* 
* @param context 
* @return true if enabled. 
*/ 
private static boolean isAirplaneModeOn(Context context) { 

    return Settings.System.getInt(context.getContentResolver(), 
      Settings.System.AIRPLANE_MODE_ON, 0) != 0; 

} 

果凍豆4.2,這個設置已經轉移到Settings.Global

+0

@ Usman - 我們如何改變上面的代碼在果凍豆版本中工作? – Vishnu

+2

用JB代替'Settings.System.AIRPLANE_MODE_ON,0' 這個'Settings.Global.AIRPLANE_MODE_ON,0',它會正常工作 –

+0

Jellybean 4.2是api 17或者'Build.VERSION_CODES.JELLYBEAN_MR2' – peter

相關問題