我开发了一个Android应用程序并在设备中安装了apk。它连接到一个控制的wifi路由器时工作正常。但是,当我将我的Android设备切换到移动数据包时,应用程序停止工作。除了清单文件中的 <uses-permission android:name="android.permission.INTERNET" />
之外,我应该提供一些额外的权限吗?
帮助表示赞赏。提前谢谢。
答案 0 :(得分:0)
要执行本课程中描述的网络操作,您的应用程序清单必须包含以下权限:
< uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
此代码段测试移动设备的网络连接。它确定这些网络接口是否可用(即,是否可以进行网络连接)和/或连接(即,是否存在网络连接以及是否可以建立套接字并传递数据):
private static final String DEBUG_TAG = "NetworkStatusExample";
...
ConnectivityManager connMgr = (ConnectivityManager)
getSystemService(Context.CONNECTIVITY_SERVICE);
NetworkInfo networkInfo = connMgr.getNetworkInfo(ConnectivityManager.TYPE_WIFI);
boolean isWifiConn = networkInfo.isConnected();
networkInfo = connMgr.getNetworkInfo(ConnectivityManager.TYPE_MOBILE);
boolean isMobileConn = networkInfo.isConnected();
Log.d(DEBUG_TAG, "Wifi connected: " + isWifiConn);
Log.d(DEBUG_TAG, "Mobile connected: " + isMobileConn);