Android から htttp または https 経由で通信する必要があり、アプリの「wifi のみ」の設定が必要です。通信制限です。そのようなことを実装する方法は?AndroidHttpClient が Wifi または 3G でのみ動作すること、およびそれを制限する方法に関する情報が見つかりません。
1427 次
4 に答える
2
このコードは、wifi 接続を確認します。
public static boolean hasWIFIConnection(Context context)
{
ConnectivityManager cm = (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE);
NetworkInfo wifiNetwork = cm.getNetworkInfo(ConnectivityManager.TYPE_WIFI);
if (wifiNetwork != null && wifiNetwork.isConnected())
{
return true;
}
return false;
}
于 2013-05-22T10:46:35.600 に答える
2
setNetworkPreference(int preference)
サービスのメソッドについて聞いたことがありConnectivityManager
ます。十分に文書化されていませんが、このメソッドはネットワーク タイプを表す整数定数で使用できるようです。
このような定数への参照は ConnectivityManager クラスにあります。
- TYPE_MOBILE
- TYPE_WIFI
- ...
私はこのように掘り始めます。
編集 :
次の権限を付与する必要があります。
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE"></uses-permission>
<uses-permission android:name="android.permission.CHANGE_WIFI_STATE"></uses-permission>
<uses-permission android:name="android.permission.CHANGE_NETWORK_STATE"></uses-permission>
于 2013-05-22T10:49:23.340 に答える
1
このようにしてみてください
ConnectivityManager cm = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE);
NetworkInfo[] netInfo = cm.getAllNetworkInfo();
for (NetworkInfo ni : netInfo)
{
if (ni.getTypeName().equalsIgnoreCase("WIFI"))
if (ni.isConnected())
haveConnectedWifi = true;
if (ni.getTypeName().equalsIgnoreCase("MOBILE"))
if (ni.isConnected())
haveConnectedMobile = true;}
于 2013-05-22T10:49:35.290 に答える