繁体   English   中英

W/System.err: java.net.SocketException: socket failed: android 中的 EACCES(权限被拒绝)

[英]W/System.err: java.net.SocketException: socket failed: EACCES (Permission denied) in android

绑定将数据从我的应用程序推送到本地服务器。

 public class MainActivity extends AppCompatActivity {
 Socket socket;
 private static final String SERVER_IP = "127.0.0.1";//server ip

 private static final int SERVERPORT = 8000;
@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
new Thread(new ClientThread()).start();
}
private class ClientThread implements Runnable {
    @Override
    public void run() {

        try {
            InetAddress serverAddr = InetAddress.getByName(SERVER_IP);

            socket = new Socket(serverAddr, SERVERPORT);

        } catch (UnknownHostException e1) {
            e1.printStackTrace();
        } catch (IOException e1) {
            e1.printStackTrace();
        }
}

在清单文件中,我已注册以下权限

<uses-permission android:name="android.promission.INTERNET"/>
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE"/> 

出现以下错误:

  W/System.err: java.net.SocketException: socket failed: EACCES (Permission denied)
  I/zygote: NativeAllocBackground concurrent copying GC freed 2066(637KB) AllocSpace 
  objects, 0(0B) LOS objects, 73% free, 547KB/2MB, paused 13.469ms total 130.017ms
  W/System.err:     at java.net.Socket.createImpl(Socket.java:487)
  W/System.err:     at java.net.Socket.<init>(Socket.java:441)
  W/System.err:     at java.net.Socket.<init>(Socket.java:248)
  W/System.err:     at com.abc.MainActivity$ClientThread.run(MainActivity.java:85)

你能帮我解决这个问题吗?

清单中有一个拼写错误:PROmission 而不是 PERmission!

<uses-permission android:name="android.promission.INTERNET"/>

应该说

<uses-permission android:name="android.permission.INTERNET"/>

您的应用程序正在模拟器上运行。 如果您的应用程序使用本地主机地址 127.0.0.1,它会尝试连接到也在该模拟器上运行的服务器。

如果您的服务器在同一台 PC 上运行,则您的应用程序上运行的模拟器应使用 ip 地址 10.0.2.2 代替。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM