vgo*_*anz 3 java sockets android android-manifest
我在 ubuntu 上使用 eclipse + android SDK,并使用套接字运行测试活动服务器。
我的清单有互联网权限
<uses-permission android:name="INTERNET"/>
Run Code Online (Sandbox Code Playgroud)
但是当我使用以下方法在设备上查找我的 IP 时:
// gets the ip address of your device
private String getLocalIpAddress()
{
try
{
for (Enumeration<NetworkInterface> en = NetworkInterface.getNetworkInterfaces(); en.hasMoreElements();)
{
NetworkInterface intf = en.nextElement();
for (Enumeration<InetAddress> enumIpAddr = intf.getInetAddresses(); enumIpAddr.hasMoreElements();)
{
InetAddress inetAddress = enumIpAddr.nextElement();
if (!inetAddress.isLoopbackAddress()) { return inetAddress.getHostAddress().toString(); }
}
}
}
catch (SocketException ex)
{
Log.e("ServerActivity", ex.toString());
}
return null;
}
Run Code Online (Sandbox Code Playgroud)
我在 Logcat 上遇到异常:
Java.net.SocketException: Permission denied
Run Code Online (Sandbox Code Playgroud)
标签:MyActivity,但我对清单有互联网许可。
如果我尝试手动放置 IP,当我使用套接字时,我也会遇到 TAG 异常:System.err
关于这个问题的一些想法?
提前致谢。
我认为您必须在清单 xml 中以这种方式编写权限:
<uses-permission android:name="android.permission.INTERNET"/>
Run Code Online (Sandbox Code Playgroud)
而不仅仅是“互联网”。试试看以防万一。
归档时间: |
|
查看次数: |
1460 次 |
最近记录: |