基于Android 6.0 的蓝牙开发-- 发送数据,接收数据,实现改变色板功能

别裁伪体亲风雅,转益多师是汝师。这篇文章主要讲述基于Android 6.0 的蓝牙开发-- 发送数据,接收数据,实现改变色板功能相关的知识,希望能为你提供帮助。
  一、发送数据

public static OutputStream os;

os = socket.getOutputStream(); //获取输出流 os.write(message1.getBytes()); os.flush(); //将输出流的数据强制提交

此处发送数据可以封装为一个方法,并设置为一个按键事件。设置按键事件的写法可以参考上一篇   链接!!!!!!
二、接收数据
此步骤放置于一个新的子线程中
InputStream is = socket.getInputStream();

然后将接收数据的代码放于一个永真循环中
int count = 0; while (count == 0) { count = is.available(); if (!bluetoothAdapter.isEnabled()) { is.close(); if (os != null) { os.close(); } } } byte buf[] = new byte[count]; if (buf != null) { is.read(buf, 0, count); message = new String(buf); handler.post(RefreshTextView); }

其中的message应定义为static
handler.post(RefreshTextView); 是利用Handler机制将接收到数据显示在界面
private static Handler handler = new Handler() { @Override public void handleMessage(Message msg) { super.handleMessage(msg); if (msg.what == UPDATE) ; textView.setText(String.valueOf(msg.obj)); } };

 
private static Runnable RefreshTextView = new Runnable() { @Override public void run() { textView.setText(message); } };

【基于Android 6.0 的蓝牙开发-- 发送数据,接收数据,实现改变色板功能】 

    推荐阅读