Android-蓝牙BT版块
文章平均质量分 81
zrf1335348191
Those who are crazy to change the World are the person who can change the World
展开
-
Android6.0源码分析之蓝牙
前言首先说一下在修改蓝牙时所涉及到的目录,Android6.0的源码目录文件稍微有一些改动相关文件位于以下几个目录,1,\android\frameworks\base\core\java\android\bluetooth,该目录下存放有诸如BluetoothAdapter,BluetoothDevice,等一些底层文件,2,\android\framewor原创 2016-06-23 11:24:23 · 7409 阅读 · 8 评论 -
蓝牙协议栈初识
在学习的过程中一直有疑问,为什么蓝牙技术突然就产生了呢?蓝牙技术的目的是什么呢?蓝牙技术相对于它所替代的技术存在什么样的优势和劣势呢?蓝牙技术都做了些什么呢?随着我们周围电子产品的增多电子产品之间的信息交互也越来越频繁,但是信息交互方式在无线连接出现之前只能使用有线连接,比如计算机接入键盘,鼠标,主机,扫描仪,打印机,摄像头等等,如果都是用有线连接那就会让你的工作台充满电缆,而且既然是有线的那么...原创 2018-12-03 10:30:02 · 8311 阅读 · 2 评论 -
闲叙蓝牙OPP(二)---文件传输BluetoothOppService专讲
原文来自 原文链接从上文可以看出,文件插入db后直接就是BluetoothOppService(下文会缩写成BtOppService)的处理了,在BtOppService中建立传输通道,但在讲述传输通道之前,先来好好分析一下BtOppService。那么在分析该BtOppService之前先提一个问题,如果让你去设计这么一个service你会怎么设计?service都需要实现哪些功能?...原创 2018-07-22 19:00:16 · 2251 阅读 · 0 评论 -
带你解锁蓝牙skill(0)
一直以为自己对蓝牙很是了解,但前段时间跟一个很熟悉蓝牙的人进行交谈,才发现自己所写的只是蓝牙最上层的东西而已,甚至可以说根本就没有扎入到蓝牙的表层,很是惭愧…..写这篇文章的目的是完善蓝牙系列博文,并给大家一个对蓝牙的整体认知。毕竟一篇好的文章不仅仅是要做到细枝末节(很显然,我距离这个还很远),也要对整体的轮廓做个概述。先是要明白蓝牙究竟是什么,有什么用,为什么要用它,这些功能又是如何实现的等等。原创 2017-10-09 14:01:32 · 2059 阅读 · 5 评论 -
带你解锁蓝牙skill(一)
在研究蓝牙源码之前,先来看看蓝牙大致都有什么功能。蓝牙模块支持什么功能完全由蓝牙所支持的蓝牙协议而确定,所以先从蓝牙协议看起转载请注明出处,本文出自带你解锁蓝牙skill 作者为fanfan1,Android各版本与蓝牙profile关系首先明确一下,目前市面上的Android机的源码大致跟三方面有关系(只考虑蓝牙profile)Google推出的各Android系统:所支持的蓝牙协议profi原创 2017-06-09 09:23:18 · 40530 阅读 · 21 评论 -
带你解锁蓝牙skill(二)
本文已授权微信公众号fanfan程序媛独家发布紧接着带你解锁蓝牙skill(一)继续分析 转载请注明出处,本文出自fanfan 的带你解锁蓝牙skill(二)3>,Pbap配置Pbap:Phone Book Access Profile是说共享联系人协议,具体定义可参考上一篇。 其实说白了就是一个手机可以从另一个手机中导入联系人信息。 其中包括两个角色PCE:对应的协议配置文件为Pb原创 2017-06-12 17:11:39 · 9677 阅读 · 7 评论 -
带你解锁蓝牙skill(三)
本文授权微信公众号fanfan程序媛独家发布转载请注明出处,本文出自fanfan的带你解锁蓝牙skill系列 蓝牙这块儿算是系统中的一个大块儿,刚开始分析确实很容易没有头绪,所以在进入庞大的源码之前先确定一个分析顺序,也好避免越学越乱。 对于源码的分析不外乎whw(what—how—why)对于蓝牙各协议的功能以及如何演示都已经分析完了,具体可以参考 带你解锁蓝牙skill(一)以及带你解锁原创 2017-06-21 11:38:10 · 6369 阅读 · 5 评论 -
Android4.42-Settings源码分析之蓝牙模块Bluetooth(上)
继上一篇 Android系统源码剖析(一)---Settings接着来介绍一下设置中某个模块的源码,本文依旧是基于Android4.42源码进行分析,分析一下蓝牙模块的实现。建议大致看一下关于Settings的剖析。ZERO,蓝牙模块的fragment及其配置 1>,首先由Settings_headers.xml文件可以知道,蓝牙对应的fragment为Bluet原创 2016-03-22 17:13:44 · 23325 阅读 · 6 评论 -
Android4.42-Settings源码分析之蓝牙模块Bluetooth整体实现(总)
ONE,SWITCH蓝牙开关蓝牙开关相关的有两个类,switch从创建到动作状态监听过程如下在BluetoothSettings中创建switch对象Switch actionBarSwitch = new Switch(activity);原创 2016-03-28 11:54:35 · 14337 阅读 · 12 评论 -
Android4.42-Setting源码分析之蓝牙模块Bluetooth(下)
接着上一篇 Android4.42-Settings源码分析之蓝牙模块Bluetooth继续蓝牙模块源码的研究THREE,蓝牙模块功能实现switch的分析以及本机蓝牙重命名和可见性的分析见上一篇,接下来进行第三章第三部分的介绍:关于蓝牙远程设备列表的加载。如果没有看过,建议看看上一篇关第一章蓝牙的布局,有助于理解3>,设备列表的加载因为这部分代码很多,所以在介绍时原创 2016-03-25 17:26:00 · 16143 阅读 · 10 评论 -
BLE低功耗蓝牙开发相关概念问题记录
蓝牙ble的传输速率是指主从机每秒所传输的字节数。既然是传输速率那就涉及到时间和每次所传递包大小的问题。 本文已授权微信公众号 fanfan程序媛 独家发布转载请注明出处,本文出自 BLE低功耗蓝牙开发相关概念问题记录 ble对于数据的传输有一个字节上的限制,默认情况下是20个字节,但并不是不可修改的。默认情况下mtu是23个字节(除去3个字节的标志位剩余为20个字节),主机完全可以通过调原创 2017-04-11 19:26:46 · 4653 阅读 · 5 评论 -
蓝牙API介绍及基本功能实现
本文已授权微信公众号<<码农修仙儿>>独家发布ONE,传统蓝牙BluetoothAdapter:本地蓝牙设备适配器,用于管理蓝牙的开启/关闭、重命名、扫描、配对、连接 BluetoothClass:蓝牙设备类,用于描述蓝牙设备类型 BluetoothDevice:远程蓝牙设备类 BluetoothSocket:与tcpSocket类似,进行蓝牙连接 Bl...原创 2016-04-29 10:47:42 · 25471 阅读 · 32 评论 -
Android蓝牙配对弹出框过程分析
刚好最近项目需求需要到这方面的知识,才发现这个有些欠缺,完善一下,记录下来,方便以后查阅根据远程蓝牙设备(remote devices)的要求,手机端发起与远程蓝牙设备Bluetooth remote Device的配对有两种情况第一种:配对时需要pin码(pin request event)即有配对请求pairing request :所对应的action为 : BluetoothD原创 2017-01-04 15:56:55 · 16555 阅读 · 4 评论 -
Android6.0源码之蓝牙研究汇总(一)--from初学者
因为原先刚开始看蓝牙时比较匆忙,而且整个流程都不太懂,感觉遗漏了好多东西,打算从头分析,分析跟蓝牙相关的所有问题,所以如果对蓝牙有任何问题的,可以留言,一起探讨。1,BluetoothService----蓝牙第一个服务开机启动的蓝牙服务为BluetoothService,这个可以从SystemServer中看到。在开启后首先启动的是SystemServer。i>,在SystemSer原创 2016-11-25 15:13:41 · 7512 阅读 · 6 评论 -
Android6.0蓝牙协议之OPP
因为毕设做了蓝牙通信相关的,所以工作后让我负责蓝牙模块。但是有bug的时候才发现对蓝牙协议的了解少之又少,现在先分析一个文件传输协议Chapter One,简单介绍1,OPP:Object push profile 面向对象传输协议,用于传输文件。2,代码所在目录为\android\packages\apps\Bluetooth\src\com\android\bluetooth\原创 2016-11-16 17:02:35 · 10251 阅读 · 0 评论 -
Android蓝牙BLE低功耗相关简单总结
在看Android4.42的源码时看到有添加对BLE设备的处理,看的一头雾水,多方百度,终于有种柳暗花明的感觉。本文总结来源于百度多篇文章,欢迎转载,分享交流BLE蓝牙概念BLE:Bluetooth low Energy 低能耗蓝牙,实现低成本,短距离的无线传输,传输速率于传统蓝牙相同位2.4GHZ,采用非常快速的连接方式,适用于发送数据量少而且发送次数较少的蓝牙通信相比于传原创 2016-04-13 17:21:54 · 14374 阅读 · 0 评论 -
Android6.0源码分析之蓝牙显示接收到的文件
在蓝牙界面有个menu:显示接收到的文件。本文分析显示接收到的文件/android/packages/apps/Settings/src/com/android/settings/bluetooth/文件夹下的BluetoothSettings.java开始分析case MENU_ID_SHOW_RECEIVED: MetricsLogger.action(原创 2016-07-02 11:29:43 · 30486 阅读 · 1 评论 -
Android蓝牙连接a2dp蓝牙耳机
开发环境:开发工具:Androidstudio适配机型:honor8(Android6.0), 坚果R1(Android8.0)开发功能:Android中蓝牙连接A2DP设备,蓝牙耳机设备功能实现:本应用提供以下功能:第一:开启蓝牙第二:查找过滤掉A2DP设备第三:连接A2DP设备第四:断开连接A2DP设备第五:保存通过本应用连接的A2DP设备第六:当重新启动应用时加载已连接...原创 2018-12-06 17:20:08 · 4448 阅读 · 8 评论