我正在尝试让我的Android应用程序通过互联网连接到服务器上的套接字。我注意到,当我在手机中打开Wi-Fi时,应用程序可以成功连接到端口,但是如果我关闭了Wi-Fi,我会在连接上抽出时间。当wi-fi关闭时,我可以无缝访问和浏览手机上的互联网,但连接到该服务器总是失败。
我已经验证服务器正在侦听该端口,如果启用了Wi-Fi,我可以随时通过互联网和手机连接任何其他计算机。
我想知道使用无线连接和手机连接到达该位置之间会有什么不同。我用来连接地址的IP是一个公共地址。
Button SendButton = (Button) findViewById(R.id.SendButton);
SendButton.setOnClickListener(new Button.OnClickListener() {
@Override
public void onClick(View v) {
Socket kkSocket = null;
PrintWriter out = null;
try {
kkSocket = new Socket("X.X.X.X", 4444);
out = new PrintWriter(kkSocket.getOutputStream(), true);
} catch (UnknownHostException e) {
System.err.println("Don't know about host: X.X.X.X");
} catch (IOException e) {
System.err.println("Couldn't get I/O for the connection to: X.X.X.X");
}