Android 手机应用开发-Android蓝牙通信
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
发现,握手,验证,连接
基本环境准备
表现层
业务层
Android 平台
表现层UI设计
基本环境准备
表现层
业务层
Android 平台
业务层-扫描已配对的蓝牙设备
业务层编码主要是调用平台的API。
① 获得BluetoothAdapter对象。 ② 判断当前设备中是否拥有蓝牙设备。 ③ 判断当前设备中蓝牙是否打开。 ④ 得到已经配对的蓝牙设备对象。
Android 手机应用开发 第九章 Android蓝牙操作(一)
3G软件学院
讲师: 刘彬 讲师:
复习上节课内容
① 如何实现Android 应用程序的国际化。
② 建立常驻程序的完成步骤。
第九章:
学习目标:
Android 蓝牙通信(一)
什么是蓝牙。 了解 Android 蓝牙通讯的基本结构。 掌握 Android 蓝牙通信的权限。 建立 蓝牙通讯协议配置步骤。 实例 Android扫描周围已配对的蓝牙 设备。
第四步: Android Framework 管理蓝牙连接
基本环境准备
表现层
业务层
Android 平台
第一步:设置蓝牙通信
使用 BluetoothAdapter 类,获得 BluetoothAdapter 对象与启动蓝牙通信。 1)取得 BluetoothAdapter 类
2) 启动蓝牙通信
基本环境准备
1 . 服务端连接 2. 客户端连接
基本环境准备
表现层
业务层
Android 平台
第四步:管理蓝牙连接
当成功连接一个或多个蓝牙设备时,每一个蓝牙设备都 有一条连接BluetoothSocket, 此时蓝牙设备彼此间可以传递数据。
1) 调用Android 平台 getInputStream() 和 getOutputStream() API 获得Socket 的 InputStream 和 OutputStream 。 2) 调用 read(byte[]) and write(byte[]) API 完成数据传递。
说明 蓝牙适配器(代表本地蓝牙适配器) 蓝牙适配器(代表本地蓝牙适配器) 蓝牙设备(主要指远程蓝牙设备) 蓝牙设备(主要指远程蓝牙设备) 蓝牙连接类 监听蓝牙连接类 蓝牙类(主要包括服务和设备) 蓝牙类(主要包括服务和设备)
基本环境准备
表现层
业务层
Android 平台
定义蓝牙通信Bluetooth的权限
表现层
业务层
Android 平台
第二步:发现蓝牙设备
目前Android OS 提供的蓝牙通讯API要求建立RFCOMM协议管道前,两个蓝牙 设备必须已配对成功。 查询配对连接
基本环境准备
表现层
业务层
Android 平台
第三步:连接蓝牙设备
为了要在两个蓝牙设备之间建立一条应用程序连接,必须建立一个服务端和一个客户 端的机制,服务端要打开蓝牙套接字(Socket)接口,客户端使用服务端的MAC地 址来启动一条连接。
注意: 管理蓝牙连接需要具备java io 基本知识,Android 官方 ManagingAConnection 有核心步骤的代码参考。
基本环境准备
表现层
业务层
Android 平台
蓝牙应用领域
1、在手机上的应用 、 2、在掌上电脑上的应用 、 3、其它数字设备上的应用 、 4、在传统家电中的应用 、 5、构成的电子钱包和电子锁 、
主要针对 短距离 设备通讯(10m)
常用于连接耳机,鼠标和移动通信设备等。
蓝牙不仅仅是一项简 技术,而是一种概念。
蓝牙是一项短途无线电连接系统,它可以将不同的电子器材连系起来。
案例需求:查找周围已经配对的蓝牙设备
由于刚入职到某软件公司 ,公司业务是做车载蓝牙 通信产品,该软件的一个 功能是【查找周围已经配 对的蓝牙设备】 …
②
开发机器的配置
③
蓝牙之间的数据传输
基本环境准备
表现层
业务层
Android 平台
蓝牙通讯的基本结构
蓝牙使用过程
1)启动蓝牙。 启动蓝牙。 2)(A)搜索到另 (A)搜索到另 外一方(B), (B),并发 外一方(B),并发 出链接请求, 出链接请求,设置 一个临时密钥, 一个临时密钥,例 1234。 如1234。 3)B收到请求信 息,输入临时密钥 ,1234。 ,1234。 4)链接成功。 链接成功。
Android 4.0 蓝牙新应用
① 蓝牙在无线通讯方面的优势可以开发出 管理医 院、健身中心、家庭及其它场所中的无线设备 及传感器方面的应用。 ② 完成数据采集与传输,例如记录系统、数据分 析服务等等。 ③ 管理医疗应用程序中,例如记录系统、数据分 析服务等等。 ④ 应用程序还能实现的数据检索及解释功能,包 括心率监视器、血流计、温度计等等。
AndroidManifest.xml 声明蓝牙通信权限
蓝牙授权
基本环境准备
表现层
业务层
Android 平台
Android蓝牙通信Bluetooth处理流程
第一步:Android Framework设置蓝牙通信
第二步: Android Framework发现蓝牙设备
第三步: Android Framework连接蓝牙设备
功能分析设计与实现
总体认识蓝牙组件与应用程序开发的关系Presentation
表现层
表现层 提供了用户与系统的交互接口
Bluetooth
Support
业务层
业务层 完成软件需求的业务实现 【查找周围已经配对的蓝牙设备】
Android
平台
平台层 支撑业务开发的基础平台
支撑开发的环境配置与测试
①
Android 手机的配置
蓝牙学习重点,难点
重点:
1. 蓝牙设备特点与应用 2. 熟练应用 Android 提供蓝牙的API 3. 编程扫描周围已配对的蓝牙设备
难点:
1. Android蓝牙通讯的基本结构 2. 对蓝牙现实应用场景的思路开拓
什么是蓝牙(Bluetooth) 1 2 3 4
蓝牙是目前使用最广泛的 无线通信协议之一
总结
① ② ③
蓝牙基本概念。 与蓝牙相关的Android API。 基于Android平台,代码实 现查找周围已经配对的蓝牙 设备。
作业
① 完成扫描周围可用的蓝牙设备。 ② 已经获得蓝牙Mac地址,编程实现 蓝牙设备的数据传输。
预习
① 如何修改本机设备的可见性
感恩奉献,正确归因
让3G学习普遍成功! 3G学习普遍成功!
基本环境准备
表现层
业务层
Android 平台
Android 平台与蓝牙相关的API
有关蓝牙的类与接口位于 android.bluetooth包中。
功能包 BluetoothAdapter BluetoothDevice BluetoothSocket BluetoothServerSocket BluetoothClass