我的服务有一个BluetoothGattCallback实例

public class MyService extends Service {

private BluetoothGattCallback callback;

@Override

public void onCreate() {

super.onCreate();

callback = new BluetoothGattCallback() {

@Override

public synchronized void onConnectionStateChange(BluetoothGatt gatt, int status, int newState) {

Log.i("onConnectionStateChanged", "Status " + status);

Log.i("onConnectionStateChanged", "New State " + newState);

}

};

}

// registration of bluetooth adapter and blah blah blah

}

当我启动应用程序时,它工作正常,回调只被调用一次,但经过几次尝试,它被调用两次.

样本日志

10-22 13:29:18.731 26944-26961/redacted.lollipop I/onConnectionStateChange: Status 0

10-22 13:29:18.731 26944-26961/redacted.lollipop I/onConnectionStateChange: New State 2

10-22 13:29:18.731 26944-26961/redacted.lollipop I/onConnectionStateChange: Status 0

10-22 13:29:18.731 26944-26961/redacted.lollipop I/onConnectionStateChange: New State 2

更多样本日志

10-22 13:29:48.836 26944-26961/redacted.lollipop I/onConnectionStateChange: Status 8

10-22 13:29:48.836 26944-26961/redacted.lollipop I/onConnectionStateChange: New State 0

10-22 13:29:48.850 26944-30763/redacted.lollipop I/onConnectionStateChange: Status 8

10-22 13:29:48.850 26944-30763/redacted.lollipop I/onConnectionStateChange: New State 0

应用程序保持活动的时间越长,它就会被调用很多次.我该如何防止这种情况?

android蓝牙多次后,android – 如何防止BluetoothGattCallback一次多次执行相关推荐

  1. android蓝牙设置特征属性,Android BLE蓝牙详细解读(二)

    上篇文章主要介绍了关于BLE的一些基础操作,我们能够大概了解到蓝牙操作的一些流程,上文末介绍了本人的一个BLE开源库,支持蓝牙一对多的连接方式,该库封装了蓝牙的开启.扫描.连接.断开.连接超时...一 ...

  2. android蓝牙配对 自动联接,Android系统下蓝牙自动配对连接方法

    Android系统下蓝牙自动配对连接方法 [专利摘要]本发明涉及一种Android系统下蓝牙自动配对连接方法,其包括如下步骤:步骤1.在Android设备端内存储上次进行蓝牙连接蓝牙外设的蓝牙地址,并 ...

  3. android 蓝牙hf编程,基于Android蓝牙Inband ring功能实现.doc

    基于Android蓝牙Inband ring功能实现 基于Android蓝牙Inband ring功能实现 [摘要] 蓝牙作为一种短距无线数据与语音传输的开放性全球规范,目前在整个世界范围内都得到了很 ...

  4. android蓝牙双通道意义,基于android移动平台的单双通道助听器实现-桂林电子科技大学学报.pdf...

    基于android移动平台的单双通道助听器实现-桂林电子科技大学学报 第 卷 第 期 桂 林 电 子 科 技 大 学 学 报 , 36 1 Vol.36No.1 年 月 2016 2 Journalo ...

  5. android蓝牙连接取消后怎么重新连上,重新启动后接收蓝牙连接更改

    我试图与接收器一起检查与不同设备的蓝牙连接,然后将其记录在logcat中.它适用于正常情况,但在重新启动时会失败.重新启动后接收蓝牙连接更改 这是一个正常的工作流程: 手机上 切换蓝牙开/关 重启手机 ...

  6. android蓝牙配对 自动联接,Android编程配对后自动连接蓝牙设备

    在我的应用程序中,我需要配对蓝牙设备,并立即与之连接. 为了配对设备,我有以下功能:public boolean createBond(BluetoothDevice btDevice) { try ...

  7. android蓝牙开发搜素,Android蓝牙开发(一)之打开蓝牙和设备搜索

    一.判断是否系统是否支持蓝牙 在使用蓝牙之前,我们首先要判断手机设备是否支持蓝牙,虽然现在基本都支持蓝牙了,但是为了代码的严谨性我们还是需要在代码中判断: private BluetoothManag ...

  8. android 蓝牙ble 133,java – Android蓝牙错误133

    我正在尝试连接到 Android上的蓝牙设备.我在onClientConnectionState处理程序中收到状态133.我并不总是得到这个错误 – 有时连接很好.我无法指出触发问题的原因.重新启动设 ...

  9. android蓝牙设置名称流程,Android 8 设置蓝牙名称 流程

    记录android 8设置蓝牙名称的流程.java packages/apps/Settings/src/com/android/settings/bluetooth/BluetoothDeviceR ...

最新文章

  1. 一周内,在闲鱼上被疯狂转了 2 万次的 Linux 命令大全!!!
  2. linux编译动态库未定义,linux 编译动态链接库 so,避免运行时才发现函数未 ......
  3. 用iptables自动封连接数较大的IP防止CC***的方法 zt
  4. python自动抢红包软件_快过年啦,还怕手速慢,我用Python自动抢红包!
  5. python语言命名规定首字符不能是_python标识符命名规范原理解析
  6. 体验Hadoop3.0生态圈-CDH6.1时代的来临
  7. Android高级模糊技术RenderScript和FastBlur
  8. 禁止sethc.exe运行 防止3389的sethc后门
  9. Java中throw和throws的区别
  10. ORACLE10G导入11G导出的文件
  11. Python装饰器的原理与应用
  12. oracle一步一步01
  13. 红米10X 5G手机电路原理图纸
  14. java实现qq聊天(超详细)
  15. 网络安全(二)安全基础
  16. 计算机表格中格式隐藏了怎么办,Excel表格“隐藏”和“取消隐藏”工作表、行、列 -电脑资料...
  17. 苹果怎样添加无线网络连接服务器,教你iphone8 icloud连接服务器时出错怎么办及苹果手机如何设置成指定名称的WiFi热点...
  18. 赵小楼《天道》《遥远的救世主》深度解析(130)有道无术,术尚可求也;有术无道,止于术
  19. cmake导入so库_使用CMake引入第三方so库及头文件
  20. python tkinter 如何锁定窗体尺寸 防止用户调整尺寸 固定大小

热门文章

  1. Python学习笔记整理(三)Python中的动态类型简介
  2. 使用SQL语句获取SQL Server数据库登录用户权限
  3. ASP.NET 應用程式的安全性模型
  4. C# 线程问题之争用条件
  5. 使用.NET5、Blazor和Electron.NET构建跨平台桌面应用
  6. BeetleX.Http.Clients访问https服务
  7. .netcore 极速接入第三方登录
  8. Asp.Net Core使用Skywalking实现分布式链路追踪
  9. 【招聘(上海)】 坚果云 招聘Windows客户端(WPF方向)
  10. 在Asp.NET Core中如何优雅的管理用户机密数据