我想制作一个基于 android 的信使,我正在设计这样一种方式,即彼此聊天的两个用户都是彼此的服务器和客户端。访问具有一个基于公共 IP 的路由器且设备具有本地 IP 地址的不同网络中的设备时存在问题。我可以向公共 IP 设备发送消息,但我无法使用公共接口路由器访问本地网络内的设备。说发件人 IP:130.190.93.68 路由器 IP 是:130.190.09.54 路由器专用网络中接收者的 IP:192.168.15.186
发送方想与接收方通信。如何使用套接字编程实现它。
从评论编辑代码:
public class SocketClient extends Activity {
private Socket socket;
private String serverIpAddress = "192.168.15.186";
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
bt = (Button) findViewById(R.id.myButton);
tv = (TextView) findViewById(R.id.myTextView);
InetAddress serverAddr = InetAddress.getByName(serverIpAddress);
socket = new Socket(serverAddr, 5000);