原生Android开发—蓝牙
来源:互联网 发布:2016淘宝开店教程 编辑:程序博客网 时间:2024/06/12 20:35
从刚开始看郭霖大神的第一行代码到现在,接触android也将近一年多了,但是设计到蓝牙的开发还是第一次,在此记录一些使用蓝牙的过程,没有详细代码,只有部分代码以及思路。
此次使用蓝牙主要是实现类似于蓝牙聊天室的功能:
所以整个项目分为服务端以及客户端
服务端1.声明蓝牙权限<user-permission android:name="android.permission.BLUETOOTH"/><user-permission android:name="android.permission.BLUETOOTH_ADMIN"/>2.使用到的类(具体可以看官方文档)[官方文档](https://developer.android.google.cn/guide/topics/connectivity/bluetooth.html) (1).BluetoothAdapter :能够操作本地蓝牙设备。 常用方法: 获取一个默认的蓝牙设备 getDefaultAdapter(); 获取本地蓝牙设备名称 getName(); 获取本地蓝牙设备MAC地址 getAddress(); 打开/关闭 蓝牙 enable();/disable(); 检测蓝牙是否打开 isEnable(); 开始/停止 搜索附近蓝牙设备 startDiscovering();/cancleDiscovering(); 检查蓝牙是否正在执行搜索 isDiscovering(); 获取一个BluetoothServerSocket listenUsingRfcommWithServiceRecord(String Name,UUID myUUID); (2).BluetoothServerSocket :服务端必须使用此类。 常用方法 accept();阻塞线程(行为),等待客户端BluetoothSocket接入,并返回一个BluetoothSocket对象。 accept(int timeout);等待客户端接入或者超过timeout设定的时间。 close();关闭该监听器 (3).BluetoothSocket :发送以及接受信息使用此类。 常用方法 getInputStream(); 获取输入流 getOutputStream(); 获取输出流 connect(); 连接 close; 关闭 (4).BluetoothDevice :与BlueAdapter不同的是,此类可以获取远程蓝牙设备的信息。 常用方法 getName();获取当前远程设备的名称 getAddress();获取当前远程设备的MAC地址 getBondState();获取当前远程设备状态码 (5)注册服务(一般在初始化的时候就注册好) IntentFilter intentfilter = new IntentFilter(); intentfilter.addAction("广播名"); registerReceiver(receiver,intentfilter); (6)BroadcastReceiver 监听系统发出的广播(如蓝牙连接中断等) 根据不同的广播编写对应的逻辑。 (7)onDestroy() 活动或服务销毁时不要忘记取消注册 unregisterReceiver(receiver);
阅读全文
0 0
- 原生Android开发—蓝牙
- 【android 蓝牙开发——传统蓝牙】
- 蓝牙----Android的蓝牙开发
- Android 蓝牙开发-蓝牙通信
- Android蓝牙开发——蓝牙操作的步骤
- 【android 蓝牙开发——BLE(低功耗)蓝牙】
- Android蓝牙开发小实例—打开关闭蓝牙
- 原生Android开发—Jar包生成
- 原生Android开发—aar包生成
- Android蓝牙开发【三】蓝牙Hid开发
- android蓝牙开发——基本概念
- android蓝牙开发——二
- android蓝牙开发——基本概念
- Android开发笔记——蓝牙
- Android蓝牙开发——搜索设备
- Android开发——蓝牙(三)
- android 蓝牙开发——基础知识
- Android蓝牙开发
- php html界面基本组件
- Git安装过程详解
- 取石子问题--巴什博弈
- 使用线程池导出Excel数据
- C语言实验——余弦
- 原生Android开发—蓝牙
- Scala高阶函数
- LeetCode 152.Maximum Product Subarray
- ELK日志分析系统(一)
- ngork完整使用步骤总结最新2017
- JavaScript02_函数和window对象
- 039day(类和对象的基本概念的进一步学习)
- Bailian4013 中位数【中位数】
- Scala中的breakable