1. 程式人生 > >跳轉至系統網路設定介面

跳轉至系統網路設定介面

雖然專案還沒要求,但是我對這個比較好奇就去寫了。

一開始是這樣寫的(測試寫在按鈕點選事件中):

Intent intent=new Intent(Settings.ACTION_DATA_ROAMING_SETTINGS);
ComponentName cName = new ComponentName("com.android.phone","com.android.phone.Settings");
intent.setComponent(cName);
startActivity(intent);
報異常java.lang.SecurityException: Permission Denial: 

網上查了下,把com.android.phone.Settings改為com.android.phone.MobileNetWorkSettings

在vivo手機上可以執行,但是在小米上就報錯了(小米改了些系統東西):頁面沒有找到

後來再去網上找了下,有解決方案:

//跳轉到系統的網路設定介面
Intent intent = null;
// 先判斷當前系統版本
if(android.os.Build.VERSION.SDK_INT > 10){  // 3.0以上
intent = new Intent(android.provider.Settings.ACTION_WIRELESS_SETTINGS
); }else{ intent = new Intent(); intent.setClassName("com.android.settings", "com.android.settings.WirelessSettings"); } startActivity(intent);

這樣寫就可以了,時代變化太快,跟不上節奏啊!沒有深入研究,以後找個時間去研究下哈!

2016.08.30補充筆記


我想開啟這個頁面:

Intent intentSettings;
if(android.os.Build.VERSION.SDK_INT > 10){//判斷版本(3.0以上)
intentSettings = new 
Intent(Settings.ACTION_SETTINGS); }else{ intentSettings = new Intent(); intentSettings.setClassName("com.android.phone","com.android.phone.MobileNetWorkSettings"); } startActivity(intentSettings);