我在C中创建了一个unix套接字,我使用ndk编译它,然后通过adb将其从/ sd / card中推入/ data / local。我将该文件的权限更改为777并使用./执行。现在我可以在/ dev / socket中看到我自己的套接字。
现在我尝试通过以下JAVA代码连接此套接字:
mSocket = new LocalSocket();
mSockAddr = new LocalSocketAddress( "rilproxy" );
mSocket.connect( mSockAddr );
我收到以下错误:
java.io.IOException:拒绝连接
我努力解决这个问题,但没有运气。在这方面的任何帮助将受到高度赞赏。
答案 0 :(得分:0)
您是否在Android清单文件中获得了Internet权限?如果没有,那么你的第一个套接字连接本身就会失败..(一个正确编码的android应用程序在其清单中声明网络权限可以接受未成熟端口上的连接,因为设备上没有防火墙。)
将以下行添加到AndroidManifest.xml
如果在模拟器上进行测试,则使用10.0.2.2代替localhost(10.0.2.2是在模拟器中运行应用程序时使用的“神奇”IP地址。)