欧美一区二区三区老妇人-欧美做爰猛烈大尺度电-99久久夜色精品国产亚洲a-亚洲福利视频一区二区

Android怎么實現(xiàn)WIFI和GPRS網(wǎng)絡的切換

本篇內(nèi)容介紹了“Android怎么實現(xiàn)WIFI和GPRS網(wǎng)絡的切換”的有關知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領大家學習一下如何處理這些情況吧!希望大家仔細閱讀,能夠學有所成!

定襄網(wǎng)站制作公司哪家好,找創(chuàng)新互聯(lián)建站!從網(wǎng)頁設計、網(wǎng)站建設、微信開發(fā)、APP開發(fā)、成都響應式網(wǎng)站建設等網(wǎng)站項目制作,到程序開發(fā),運營維護。創(chuàng)新互聯(lián)建站于2013年成立到現(xiàn)在10年的時間,我們擁有了豐富的建站經(jīng)驗和運維經(jīng)驗,來保證我們的工作的順利進行。專注于網(wǎng)站建設就選創(chuàng)新互聯(lián)建站

在項目的開發(fā)中因為要使用到WIFI和GPRS網(wǎng)絡的切換,因此就研究了一下通過代碼打開WIFI和GPRS的工作。

無論是切換WIFI還是切換GPRS網(wǎng)絡都需要設置相應的權限,所以需要在AndroidManifest.xml文件中加入以下幾行代碼。

<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" /><uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /><uses-permission android:name="android.permission.CHANGE_WIFI_STATE" /><uses-permission android:name="android.permission.CHANGE_NETWORK_STATE" />

1、切換WIFI網(wǎng)絡

public static void toggleWiFi(Context context, boolean enabled) { WifiManager wm = (WifiManager) context.getSystemService(Context.WIFI_SERVICE); wm.setWifiEnabled(enabled); }

2、切換GPRS網(wǎng)絡

由于Android沒有提供直接切換GPRS網(wǎng)絡的方法,通過查看系統(tǒng)源碼發(fā)現(xiàn),系統(tǒng)是調用IConnectivityManager類中的setMobileDataEnabled(boolean)方法來設置GPRS網(wǎng)絡的,由于方法不可見,只能采用反射來調用,代碼如下。

public static void toggleMobileData(Context context, boolean enabled) { ConnectivityManager conMgr = (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE); Class<?> conMgrClass = null; // ConnectivityManager類 Field conMgrField = null; // ConnectivityManager類中的字段 Object iConMgr = null; // IConnectivityManager類的引用 Class<?> iConMgrClass = null; // IConnectivityManager類 Method setMobileDataEnabledMethod = null; // setMobileDataEnabled方法 try { // 取得ConnectivityManager類 conMgrClass = Class.forName(conMgr.getClass().getName()); // 取得ConnectivityManager類中的對象mService conMgrField = conMgrClass.getDeclaredField("mService"); // 設置mService可訪問 conMgrField.setAccessible(true); // 取得mService的實例化類IConnectivityManager iConMgr = conMgrField.get(conMgr); // 取得IConnectivityManager類 iConMgrClass = Class.forName(iConMgr.getClass().getName()); // 取得IConnectivityManager類中的setMobileDataEnabled(boolean)方法 setMobileDataEnabledMethod = iConMgrClass.getDeclaredMethod("setMobileDataEnabled", Boolean.TYPE); // 設置setMobileDataEnabled方法可訪問 setMobileDataEnabledMethod.setAccessible(true); // 調用setMobileDataEnabled方法 setMobileDataEnabledMethod.invoke(iConMgr, enabled); } catch (ClassNotFoundException e) { e.printStackTrace(); } catch (NoSuchFieldException e) { e.printStackTrace(); } catch (SecurityException e) { e.printStackTrace(); } catch (NoSuchMethodException e) { e.printStackTrace(); } catch (IllegalArgumentException e) { e.printStackTrace(); } catch (IllegalAccessException e) { e.printStackTrace(); } catch (InvocationTargetException e) { e.printStackTrace(); } }

根據(jù)以上所寫就可以做到WIFI網(wǎng)絡和GPRS網(wǎng)絡的切換了。

“Android怎么實現(xiàn)WIFI和GPRS網(wǎng)絡的切換”的內(nèi)容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業(yè)相關的知識可以關注創(chuàng)新互聯(lián)網(wǎng)站,小編將為大家輸出更多高質量的實用文章!

當前標題:Android怎么實現(xiàn)WIFI和GPRS網(wǎng)絡的切換
URL網(wǎng)址:http://chinadenli.net/article32/gojspc.html

成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供外貿(mào)網(wǎng)站建設軟件開發(fā)網(wǎng)站收錄小程序開發(fā)手機網(wǎng)站建設標簽優(yōu)化

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉載內(nèi)容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯(lián)

手機網(wǎng)站建設