我在MainActivity里面开启了一个线程监听连接,客户端使用 PC机,通过WIFI相连
1、希望这个线程accept连接后,将这个socket传递给一个新的Activity,在新的Activity里面再开一个线程接收数据,但是貌似Bundle支持的数据类型里面没有socket啊,刚接触ANDROID开发,基础不牢。。。
2、在线程里面:
//A模块连接处理线程
private void startServerA() throws IOException
{
ServerSocketA.Listen(9220);
ModuleAConnected=1;
while(ServerSocketA.socket.isConnected()==true)
{
;
}
ModuleAConnected=0;
}
但是如果在这个函数里面加上对界面操作的语句,例如
TextView.setText("msg");程序立马挂掉,这是为什么?
3、用VB的Winsock控件 winsock.SendData "Hello" 如何在Android上解析?书上的例子解析不出来。。。。
------解决方案--------------------
1。为什么要传递socket,线程可以独立于activity的,会为什么要设计成在Activity里呢,java有这么多的设计模式呢。
2。线程不能直接操作UI
3。正常的java socket接收就行
------解决方案--------------------
1.首先消息有没有发过来,是接收不对还是没发过来
2.人为断开把socket也释放吧,如果要检测网络是否连接正常,加上心跳
3.关键你socket有没有close,如果没有close,那么连接通道还是存在。