我是套接字网络编程的初学者。我想在同一网络(使用 java(下执行简单的网络连接,并尝试将我的 android 手机(客户端(连接到我的笔记本电脑(服务器(两天,但没有积极的结果。
我尝试了很多方法,例如:
1( 包括清单用户权限
2(关闭防火墙
3( 通过检查 cmd 中的 ipconfig 来确认服务器 IP 地址
4( 确保客户端和服务器在同一网络上
5( 确保服务器中的端口号和 IP 地址正确(例如:192.168.x.x(
6( 试用公共 IP 地址
所有这些都以"不幸的是,连接已停止"这句话结束。当我在智能手机中运行我的应用程序时。
错误:android.os.NetworkOnMainThreadException。
客户端上的代码:
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
SetGUI();
send.setOnClickListener(this);
}
public void onClick(View view) {
try {
Socket socket = new Socket(serverName,serverPortNumber);
} catch (UnknownHostException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
public void SetGUI(){
send = (Button) findViewById(R.id.btn_send);
readText = (TextView) findViewById(R.id.tv_read);
writeText = (EditText) findViewById(R.id.et_write);
}
请帮助并展示任何可能的解决方案。 对不起,如果我的英语让你难以理解内容。
由于android.os.NetworkOnMainThreadException错误。在我的 android 中为处理连接的代码应用线程后,一切都很好:D