无法连接到UNIX套接字,Android

时间:2013-01-08 13:08:31

标签: android sockets unix

我在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:拒绝连接

我努力解决这个问题,但没有运气。在这方面的任何帮助将受到高度赞赏。

1 个答案:

答案 0 :(得分:0)

您是否在Android清单文件中获得了Internet权限?如果没有,那么你的第一个套接字连接本身就会失败..(一个正确编码的android应用程序在其清单中声明网​​络权限可以接受未成熟端口上的连接,因为设备上没有防火墙。)

将以下行添加到AndroidManifest.xml

如果在模拟器上进行测试,则使用10.0.2.2代替localhost(10.0.2.2是在模拟器中运行应用程序时使用的“神奇”IP地址。)