android 蓝牙的那些坑
来源:互联网 发布:mac 编译安装php fpm 编辑:程序博客网 时间:2024/06/05 06:53
本来想开发一款蓝牙软件,因为网上已经有各种教程,所以本来是没必要继续开一编文章来说些什么的,但是亲自体验过后发现,实际上Android与Android之间的蓝牙通讯实在有不少坑,唯有自己总结一下并记录下来
//采用端口进行链接,这里值得注意的是,网上基本上第二个参数都表示1,其实这个数值可以是1-30,表示通过1-30之间的某个端口来进行连接
Device.getClass().getMethod("createRfcommSocket", new Class[]{int.class}); method.invoke(device, 1);
如果手机之间通过蓝牙通信,那么必须服务器先以UUID来创建,客户端才可以用createRfcommSocketToServiceRecord…..UUID来链接获得socket,否则永远timeout,除非使用上述的端口连接,既然使用蓝牙端口连接,那么同样的道理服务端也应使用端口创建
常用的服务器名:bpssp
手机作为服务器的话,soctet.getInputStream()
会累积所有未接收的数据流缓存
蓝牙多机链接的话,允许6-8台机器对服务器进行连接,此时服务器应存在一条线程专门负责接收其他机器的链接信息,另一条线程负责处理对应机器的业务
class OtherServer implements Runnable { @Override public void run() { try { createLog("createing server"); bluetoothAdapter = BluetoothAdapter.getDefaultAdapter(); serverSoctet = bluetoothAdapter.listenUsingRfcommWithServiceRecord("btspp", UUID.fromString(uuid)); while (true) { createLog("waiting connection"); BluetoothSocket soctet = serverSoctet.accept(); new Thread(new ServerThread(soctet)).start(); } } catch (Exception e) { } } }
亲测4.0的蓝牙传输距离在无障碍的环境下,可以达到数十米
0 0
- android 蓝牙的那些坑
- android中的蓝牙那些事
- Android之蓝牙那些事
- android wear那些事--通过蓝牙调试
- 蓝牙----Android的蓝牙开发
- Android 混淆的那些坑
- Android蓝牙开发的各种坑
- Android的蓝牙
- android 蓝牙的UUID
- Android---蓝牙的使用
- android蓝牙的使用
- Android 的蓝牙简介
- Android 的蓝牙简介
- android蓝牙的使用
- Android蓝牙的开发
- Android 的蓝牙简介
- 智能家居Android技术系列之——蓝牙那些事
- Android中关于Fragment的那些事、那些坑
- ServletContext简介
- iframe 自适应全屏
- 阿里云Maven库配置
- Ionic2学习笔记--Slide欢迎界面的实现
- 2015级WCF项目设计优秀技术要点总结
- android 蓝牙的那些坑
- JQuery中的switch语句
- React-Native 之 redux 与 react-redux
- 3ds max法线贴图制作流程
- 基于 Django1.10 文档的深入学习(1)—— Settings.py 之 MEDIA_ROOT 与 MEDIA_URL
- Codeforces 798C Mike and gcd problem
- JDBC与JAVA数据库编程
- 金融数据类——债券,全球股指
- C++primer学习笔记-----4.3逻辑和关系运算符