STM32的ESP8266 移动端App实现方法(Android)

在Android中我们使用Socket类,即“套接字”就可以进行wifi通信。由于其相关说明对程序开发没有多大帮助,故不再赘述,无论什么通信,我们只需要知道最基本的开、关、读、写四大操作就可以完成大部分功能,再使用其进行通讯需要目标的IP地址及端口号即可,假设说按一个按键来控制发送一个指令的话,直接来看代码:

    Button.setOnClickListener(new OnClickListener(){  
        @Override  
        public void onClick(View v){  
            //在子进程中完成数据的获取,在主进程中完成UI更新  
            new Thread(new Runnable(){//开启一个线程  
                    @Override  
                    public void run(){  
                        try{  
                            Socket TestSocket = new Socket();//new一个socket  
                            TestSocket.connect(new InetSocketAddress("192.168.4.1", 8080), 8000);//三个参数分别是IP、端口、超时  
                        OutputStream TestOS = TestSocket.getOutputStream();//输出流,即写操作
                            InputStream TestIS = TestSocket.getInputStream();//输入流,即读操作
                            byte send_buffer[] = {40};//输出字符数组  
                        byte rec_buffer[] = new char[10];//输入字符数组  
                            TestOS.write(buffer);//这样字符组就发送出去了
                        /*  
                           String str="Sopen_led1E";
                            byte[] strbyte = str.getBytes();
                            TestOS.write(strbyte);//这样字符就发送了
                            //也可以这样定一个S的开头和E的结尾做简单协议判断,接收端就可以获取相应的数据了
                          */  
                            for(int i = 0; i < 10; i++){  
                                rec_buffer[i] = TestIS.read();//read()方法是一个字符一个字符接收  
                            }  
                            //关闭所有流及socket  
                            TestOS.close();  
                            TestIS.close();  
                            TestSocket.close();  
                        //接下去可对收到的数据进行操作  
                        }  
                        catch(Exception e){  
                            //可以打印错误日志啥的  
                        }  
                    }  
                }).start();  
            }  
    });  

小结

通信过程就是建立一个Socket,调用connect()方法(开),通过输入输出流(读写)传递数据,最后关闭流和Socket(关)即可。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值