java.net.BindException:绑定失败:EACCES(权限被拒绝)TCP服务器

时间:2017-01-05 19:58:34

标签: java android networking tcp tcpserver

首先,我知道,有些人遇到同样的问题,但他们的修复程序对我不起作用。

所以我得到的例外是:

  

java.net.BindException:bind failed:EACCES(Permission denied)on the line“serverSocket = new ServerSocket(port);”我无法弄清楚问题出在哪里。我试过了:

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

检查暂停:

if (ContextCompat.checkSelfPermission(this, Manifest.permission.INTERNET) != PackageManager.PERMISSION_GRANTED) {
它返回了授予

的许可

我尝试的最后一件事是使用不同的端口,包括1024以下和以上。

请帮助

编辑:我刚刚有Facepalm时刻,我创建了对话框,我输入端口但是我忘了传递值,所以它一直试图通过端口1000连接(这在linux中是不可靠的和unix系统),所以无论如何,感谢你停止了这个帖子,我很抱歉浪费你们任何人的时间

1 个答案:

答案 0 :(得分:0)

我认为您并不需要检查是否授予INTERNET权限。如果您在MANIFEST中定义它,它总是被授予。也许您在测试中遇到错误:只需尝试卸载并再次安装您的应用程序。我最近编写了一段运行TCP服务器的代码而没有遇到这个问题。