2012-06-20 78 views
1

我的應用程序執行WiFi操作,因此需要在整個會話期間保持在同一連接上。喜歡通過WiFi連接移動

我看了ConnectivityManager類,但還沒有弄清楚它是否是一個好主意。

有什麼辦法讓應用程序更喜歡通過WiFi連接移動?

ConnectivityManager.startUsingNetworkFeature將強制所有應用程序使用移動連接嗎? ConnectivityManager.setNetworkPreference如何?

當我完成後,我應該調用ConnectivityManager.stopUsingNetworkFeature嗎?

requestRouteToHost如何工作?它是否向路由表添加條目?如果是這樣,這會嘗試使指定主機的所有數據都將通過該接口?

感謝

+0

「我的應用程序執行WiFi操作,因此需要在整個會話期間保持同一連接。」 - 這是不可能的。你不能強迫用戶不動。 – CommonsWare

回答

1

有沒有什麼辦法,使應用程序更喜歡手機通過WiFi連接 ?

您可以設置首選項。

ConnectivityManager connectivityManager = (ConnectivityManager)getSystemService(Context.CONNECTIVITY_SERVICE); 

connectivityManager.setNetworkPreference(ConnectivityManager.TYPE_MOBILE); // Preferring mobile over wifi 



Dont forget to change it to default in onStop or onDestroy 

connectivityManager.setNetworkPreference(ConnectivityManager.DEFAULT_NETWORK_PREFERENCE); 
+0

它會迫使整個系統或只有應用程序使用移動連接? – Manipulator