申请打开蓝牙

<!-- 蓝牙权限 -->
<uses-permission android:name="android.permission.BLUETOOTH" />
<uses-permission android:name="android.permission.BLUETOOTH_ADMIN" />
private final int BLUE_REQUEST_CODE = 551;
public void showBLEDialog() {final Intent enableIntent = new Intent(BluetoothAdapter.ACTION_REQUEST_ENABLE);startActivityForResult(enableIntent, BLUE_REQUEST_CODE);
}

申请结果返回。。。。。

    @Overrideprotected void onActivityResult(int requestCode, int resultCode, Intent data) {super.onActivityResult(requestCode, resultCode, data);if (requestCode == 551){if (resultCode != RESULT_OK){LgqLogPlus.e("蓝牙返回失败。啦啦啦啦");
//                showOpenBlue();}else {}}

1、实现效果

          

2、主要实现方法

(1)创建服务端:

//先用本地蓝牙适配器创建一个serversocket
serSocket= bluetoothAdapter.listenUsingRfcommWithServiceRecord(bluetoothAdapter.getName(), UUID.fromString("00001101-0000-1000-8000-00805F9B34FB"));
Utils.sonUiStateMsg("正在等待连接");
if(socket!=null){Utils.sonUiStateMsg("连接成功");}
//等待连接,该方法阻塞
socket=serSocket.accept();

(2)创建客户端

//创建一个socket尝试连接,UUID用正确格式的String来转换而成
socket = device.createRfcommSocketToServiceRecord(UUID.fromString("00001101-0000-1000-8000-00805F9B34FB"));
Utils.sonUiStateMsg("正在连接,请稍后......");
//该方法阻塞,一直尝试连接
socket.connect();

(3)接收消息线程:

class ReadMsg extends Thread{@Overridepublic void run(){byte[] buffer = new byte[1024];//定义字节数组装载信息int bytes;//定义长度变量InputStream in=null;try {//使用socket获得输入流in = socket.getInputStream();//一直循环接收处理消息while(true){if((bytes=in.read(buffer))!=0){byte[] buf_data = new byte[bytes];for (int i = 0; i < bytes; i++){buf_data[i]=buffer[i];}String msg=new String(buf_data);//最后得到String类型消息Utils.sonUiInfoMsg(msg);TestObServernotice.getInstance().notifyObserver(0,2,msg);}}} catch (IOException e) {// TODO Auto-generated catch blocke.printStackTrace();Utils.sonUiStateMsg("连接已断开");}finally{try {in.close();} catch (IOException e) {// TODO Auto-generated catch blocke.printStackTrace();}}}
}

(4)发送消息方法

OutputStream out=socket.getOutputStream();
out.write(msg.getBytes());//将消息字节发出

3、实现demo

demo:Android蓝牙开发,实现发送信息,接收消息demo_蓝牙发送消息app,android蓝牙信息-Android代码类资源-CSDN下载

demo云盘:百度网盘 请输入提取码

在线bug交流:QQ1085220040

Android 蓝牙开发,申请打开蓝牙相关推荐

  1. Android 蓝牙开发(一) -- 传统蓝牙聊天室

    Android 蓝牙开发(一) – 传统蓝牙聊天室 Android 蓝牙开发(三) – 低功耗蓝牙开发 项目工程BluetoothDemo 一.蓝牙概览 以下是蓝牙的介绍,来自维基百科: 蓝牙(英语: ...

  2. Android 蓝牙开发(三) -- 低功耗蓝牙开发

    Android 蓝牙开发(一) – 传统蓝牙聊天室 Android 蓝牙开发(三) – 低功耗蓝牙开发 项目工程BluetoothDemo 前面已经学习了经典蓝牙开发,学习了蓝牙的配对连接和通信,又通 ...

  3. Android蓝牙开发系列文章-蓝牙设备类型知多少?

    在写<Android蓝牙开发系列文章-蓝牙音箱连接>时,计划细化出一篇讲解蓝牙设备类型的文章,现在它来了~ 阅读其他内容,可以点击<Android蓝牙开发系列文章-策划篇>,或 ...

  4. Android蓝牙开发系列文章-蓝牙mesh(一)

    在<Android蓝牙开发系列文章-策划篇>中我们对蓝牙专题的内容进行整体规划,现在让我们一点点揭开他的面纱~ 本文是关于蓝牙mesh的首篇文章,由好友CSDN博主yk150915提供,在 ...

  5. Android蓝牙开发系列文章-蓝牙音箱连接

    经过一段时间的折腾,我的Android Studio终于可以正常工作了,期间遇到的坑记录在了文章<创建Android Studio 3.5第一个工程遇到的坑>. 我们在<Androi ...

  6. Android 移动开发 近场通信 蓝牙通信

    Android 近场通信 蓝牙通信 一.近场通信介绍 1.三种主要近场通信技术的特点 2.比较 3.近场通信技术的未来发展 二.蓝牙通信 1.核心 2.布局 3.功能 其他配置 最终显示 一.近场通信 ...

  7. Android底层开发之旅—蓝牙系统分析

    2019独角兽企业重金招聘Python工程师标准>>> Android蓝牙系统分为四个层次,内核层.BlueZ库.BlueTooth的适配库.BlueTooth的JNI部分.Java ...

  8. android nfc 配对蓝牙 开发,NFC和蓝牙两种配对方式_配件评测-中关村在线

    在功能上方面,OVEVO SH03B蓝牙耳机除了支持蓝牙连接之外,还支持NFC(近距离无线通讯技术)功能.用户只需打开手机的NFC功能,与耳机背面的"NFC"字符区域进行对碰即可配 ...

  9. Qt低功耗蓝牙系列一(什么是低功耗蓝牙开发,低功耗蓝牙的通信机制原理)

    文章目录 前言 Android 蓝牙 BLE 低功耗蓝牙协议栈简介 蓝牙的选用 BLE 低功耗蓝牙模块具体应用场景 蓝牙灯控方案 BLE 蓝牙智能锁方案 蓝牙 MAC 地址扫描打印解决方案 蓝牙 Me ...

最新文章

  1. 报名 | 加密金融生态大咖私享会
  2. 联想K系引领智能电视潮流,Android 4.0将成行业标配
  3. Ubuntu 14.04 分区方案
  4. java——什么是浅表副本
  5. 前端利器倚天剑之sublime
  6. linux 内存一直在增加,linux – 缓存内存和共享内存总和超过总内...
  7. Java并发编程实战_阿里P9整理分享的亿级流量Java高并发与网络编程实战PDF
  8. 一些Arduino 测试代码
  9. lg手机历史机型_lg手机大全【详细介绍】
  10. fgo日服服务器维护,FGO国服和日服哪个福利更好 圣晶石维护补偿对比
  11. 眼图测试(硬件测试、信号完整性测试)
  12. 新入职软件安装-win10
  13. 计算机软件系统的三个层次,计算机软硬件系统
  14. 百度糯米用大数据重塑O2O产业
  15. 快搜搜:在网上找工作如何防骗!
  16. 有道云笔记markdown教程
  17. Jaeger入门简介
  18. 微信小程序之js模块化
  19. 威纶触摸屏使用U盘/SD卡上传或下载程序步骤及编译失败处理对策
  20. 云计算系统测试之技术概念

热门文章

  1. [vue] watch的属性用箭头函数定义结果会怎么样?
  2. 前端学习(2348):tabber
  3. 前端学习(1732):前端系列javascript之状态切换
  4. oracle之单行函数1
  5. 前端学习(1412):多人管理32修改
  6. 前端学习(577):margin等其他属性扩展
  7. 前端学习(294):rem小实例
  8. 前端学习(41):背景实现视觉差效果
  9. 第四十八期:你太菜了,竟然不知道Code Review?
  10. 第三十三期:对于人工智能的恐惧及其5个解决方法