毕业设计之两眼抓瞎

用AS/TCP开发手机程序----接收树莓派上的定位和视频信息

这是我的毕业项目

因为自己不是软件和计算机类的学生,对这方面的接触也比较少。CSDN上的高手云集,因此在这里写博客来请教各位。

一、为什么我的Android程序,一点连接按钮就会闪退!!!

我怀疑是我自己写的继承自Thread的用于连接的类和按钮按钮函数那里的消息处理事件有问题。还望各位能帮我看看,谢谢!

1、用线程创建Socket连接,并且继承自Thread

// 用线程创建Socket连接
class ConnectThread extends Thread{
   public void run(){
       // 定义变量,存储ip
       InetAddress inetAddress;
       try {
           // 判断socket的状态,防止重复执行
           if(socket == null){
                // 获取输入的ip地址
               inetAddress = InetAddress.getByName(ipEdit.getText().toString());
               // 获取输入的端口
               int port = Integer.valueOf(portEdit.getText().toString());
               // 新建socket
               socket = new Socket(inetAddress,port);
               // 获取socket的输入流和输出流
               inputStream = socket.getInputStream();
               outputStream = socket.getOutputStream();
               // 新建线程,读取数据
               ReadThread readThread = new ReadThread();
               readThread.start();
           }
       } catch (UnknownHostException e) {
           e.printStackTrace();
       } catch (IOException e) {
           e.printStackTrace();
       }
   }
}

2、按钮消息处理事件

public void connect(View view) throws IOException {
     // 判断按钮状态
    if(butState == true){
        // 按钮没有按下
        butState = false;
        RD = true;
        // 创建线程,初始化socket
        ConnectThread connectThread = new ConnectThread();
        connectThread.start();
        // 改变按钮标题
        connectBut.setText("断开连接");
    }
    else{
        butState = true;
        RD = false;
        connectBut.setText("CONNECT");
        //关闭连接
        try
        {
            socket.close();
            socket=null;
        }
        catch (IOException e)
        {
            e.printStackTrace();
        }
    }
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值