AndroidStudio安卓原生开发_Android扫描附近指定的蓝牙设备_通过设备名称过滤_计算距离_离扫描设备近的显示的时候放在前面---Android原生开发工作笔记128
发布日期:2021-06-29 17:54:47 浏览次数:3 分类:技术文章

本文共 847 字,大约阅读时间需要 2 分钟。

     这里直接上代码吧,我这边的应用场景是,比如我扫描附近的体重秤,注意,我扫描的时候,需要过滤,只把扫描到的特定型号的,体重秤

显示出来,比如附近的手机,血压计等都不能扫描出来.同时比如如果有两台体重秤的话,一台离的近,一台离的远,我需要把

离得近的体重秤,在显示的时候,优先显示在上面.根据离扫描设备的距离,做个倒序排序:

    这里有个不好的地方,就是,我是用扫描到的设备的蓝牙的名称来进行过滤的,比如体重秤的话,他这个型号的,的蓝牙名称都是以

QN- 开头的,我直接判断,我扫描到的蓝牙设备是否以QN-开头,如果是,就认为是我要的体重秤设备..

    实际上,对于不同的设备,连接蓝牙等的操作,要么会提供特定的操作API,来扫描,要么会提供蓝牙的UUID,我们可以通过UUID来过滤.

后面会实现一个用这种方法过滤的版本,再发出来.

   这个蓝牙设备的UUID,一般都是一种品牌的机器,是一个UUID,所以可以用UUID进行过滤蓝牙设备.

去看代码吧:

1.这个是MainActivity的onCreate方法,里面initView()方法不用管,

   去看看这个initBluetooth方法,用来判断当前设备是否支持蓝牙.后面searchDevices()方法,先不用管,deviceNum也不用管.

@Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.layout_setting);        initView();        //初始化蓝牙设备:        initBluetooth();        //搜索蓝牙设备        //searchDevices();        //初始化蓝牙搜索设备编号        deviceNum ="0";

转载地址:https://credream.blog.csdn.net/article/details/117357093 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:C++_类和对象_对象特性_This指针的用途_用来解决名称冲突_*this实现链式编程---C++语言工作笔记049
下一篇:AndroidStudio安卓原生开发_Activity和AppCompatActivity的区别认识---Android原生开发工作笔记127

发表评论

最新留言

感谢大佬
[***.8.128.20]2024年04月04日 13时15分05秒