Android 代碼修改網(wǎng)絡(luò)強制使用3G

權(quán)限

??<uses-permission android:name="android.permission.WRITE_SECURE_SETTINGS" />

強制使用3G網(wǎng)絡(luò):

mode = 6;// EvDo only

public void setNetworkType(Context context, int mode){

Settings.Secure.putInt(context.getContentResolver(), "preferred_network_mode", mode);

Intent intent =new Intent("com.android.phone.CHANGE_NETWORK_MODE");

intent.putExtra("com.android.phone.NEW_NETWORK_MODE", mode);

context.sendBroadcast(intent);

}

查詢方式:

public int getNetworkType(Context context) {

try {

return Settings.Secure.getInt(context.getContentResolver(), "preferred_network_mode");

? ? }catch (Settings.SettingNotFoundException e) {

e.printStackTrace();

? ? }

return 0;

}

其中mode參考如下:

/* NETWORK_MODE_* See ril.h RIL_REQUEST_SET_PREFERRED_NETWORK_TYPE */

int NETWORK_MODE_WCDMA_PREF? ? = 0; /* GSM/WCDMA (WCDMA preferred) */

int NETWORK_MODE_GSM_ONLY? ? ? = 1; /* GSM only */

int NETWORK_MODE_WCDMA_ONLY? ? = 2; /* WCDMA only */

int NETWORK_MODE_GSM_UMTS? ? ? = 3; /* GSM/WCDMA (auto mode, according to PRL)

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? AVAILABLE Application Settings menu*/

int NETWORK_MODE_CDMA? ? ? ? ? = 4; /* CDMA and EvDo (auto mode, according to PRL)

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? AVAILABLE Application Settings menu*/

int NETWORK_MODE_CDMA_NO_EVDO? = 5; /* CDMA only */

int NETWORK_MODE_EVDO_NO_CDMA? = 6; /* EvDo only */

int NETWORK_MODE_GLOBAL? ? ? ? = 7; /* GSM/WCDMA, CDMA, and EvDo (auto mode, according to PRL)

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? AVAILABLE Application Settings menu*/

int NETWORK_MODE_LTE_CDMA_EVDO? = 8; /* LTE, CDMA and EvDo */

int NETWORK_MODE_LTE_GSM_WCDMA? = 9; /* LTE, GSM/WCDMA */

int NETWORK_MODE_LTE_CMDA_EVDO_GSM_WCDMA = 10; /* LTE, CDMA, EvDo, GSM/WCDMA */

int NETWORK_MODE_LTE_ONLY? ? ? = 11; /* LTE Only mode. */

int NETWORK_MODE_LTE_WCDMA? ? ? = 12; /* LTE/WCDMA */

int NETWORK_MODE_TD_SCDMA_ONLY? ? ? ? ? ? = 13; /* TD-SCDMA only */

int NETWORK_MODE_TD_SCDMA_WCDMA? ? ? ? ? = 14; /* TD-SCDMA and WCDMA */

int NETWORK_MODE_TD_SCDMA_LTE? ? ? ? ? ? = 15; /* TD-SCDMA and LTE */

int NETWORK_MODE_TD_SCDMA_GSM? ? ? ? ? ? = 16; /* TD-SCDMA and GSM */

int NETWORK_MODE_TD_SCDMA_GSM_LTE? ? ? ? = 17; /* TD-SCDMA,GSM and LTE */

int NETWORK_MODE_TD_SCDMA_GSM_WCDMA? ? ? = 18; /* TD-SCDMA, GSM/WCDMA */

int NETWORK_MODE_TD_SCDMA_WCDMA_LTE? ? ? = 19; /* TD-SCDMA, WCDMA and LTE */

int NETWORK_MODE_TD_SCDMA_GSM_WCDMA_LTE? = 20; /* TD-SCDMA, GSM/WCDMA and LTE */

int NETWORK_MODE_TD_SCDMA_CDMA_EVDO_GSM_WCDMA? = 21; /*TD-SCDMA,EvDo,CDMA,GSM/WCDMA*/

int NETWORK_MODE_TD_SCDMA_LTE_CDMA_EVDO_GSM_WCDMA = 22; /* TD-SCDMA/LTE/GSM/WCDMA, CDMA, and



需要注意的是:需要把app弄成系統(tǒng)應(yīng)用不然會報錯


感謝~ 轉(zhuǎn)載android網(wǎng)絡(luò)類型之2G-3G切換_weixin_33874713的博客-CSDN博客

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

推薦閱讀更多精彩內(nèi)容