gpt4 book ai didi

c# - Android与C#进程间通信

转载 作者:太空狗 更新时间:2023-10-29 16:24:29 24 4
gpt4 key购买 nike

尝试在 Android 和 C# 之间执行套接字通信我似乎被卡住了。

这基本上就是我到目前为止的代码。

安卓:

public void onClick(View v) {
try {
InetAddress serverAddr = InetAddress.getByName("localhost");
Socket mySocket = new Socket(serverAddr, 666);
} catch (UnknownHostException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}

C#:

TcpListener listener = new TcpListener(System.Net.IPAddress.Parse("127.0.0.1"), 666);
listener.Start();

using (Socket socket = listener.AcceptSocket())
{
using (Stream stream = new NetworkStream(socket))
{
}
}

在我的 Android 应用程序中点击行 Socket mySocket = new Socket(serverAddr, 666); 时,出现以下错误。

"java.net.ConnectException: localhost/127.0.0.1:666 - Connection refused"

谁能指导我我做错了什么?

PS:我正在通过模拟器对此进行测试,所以想知道我与机器上运行的其他进程通信的能力是否可能存在某种限制?

最佳答案

在仿真机内部地址127.0.0.1不是主机的环回接口(interface),它是仿真机自己的环回接口(interface)。

根据emulator documentation可以通过特殊地址10.0.2.2访问主机的loopback接口(interface)。

关于c# - Android与C#进程间通信,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5622787/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com