原生 Android BLE 实现本质上是同步的吗?

2024-02-13

我记得读过“指导和提示” http://img-developer.samsung.com/contents/authCdn/ble/Guide_and_Hints_for_Samsung_BLE_API.pdf?__gda__=1375430976_5fccae8604db7eb9b442186689e3381d- 文档到三星 BLE API(存档页面) http://web.archive.org/web/20130610122039/http://developer.samsung.com/ble:

三星 F/W 和堆栈最重要的概念之一是 它是同步性质。也就是说,如果我们调用,例如,writeCharacteristic对于特定特征,如果它返回true,下一次调用任何BluetoothGatt or BluetoothGattServer方法 应该在之后完成onCharacteristicRead收到回调。 这是因为堆栈被设计为仅支持和处理一个 GATT 一次调用,例如,如果您调用writeCharacteristic or readCharacteristic很快就任何特征 在第一个之后,它将被忽略。

  1. 这是否也适用于引入的 BLE 的本机实现 在安卓4.3中?
  2. 三星 API 一次仅支持一台连接的 GATT 设备。 原生 API 是否发生了变化?

三星最近在我在问题中链接的同一页面上发布了一份“迁移”文档。在将新的本机 BLE API 与三星 BLE API 进行比较时,他们准确地回答了我的问题:

堆栈和 F/W 的同步性质没有受到影响。 也就是说,如果我们调用,例如,writeCharacteristic对于一个特定的 特征,如果返回 true,则下次调用任何BluetoothGatt or BluetoothGattServer方法应该在之后完成onCharacteristicRead收到回调。这是因为栈的设计 一次仅支持和处理一个 GATT 调用,并且如果 例如,你打电话writeCharacteristic or readCharacteristic of any characteristic第一个之后不久,它就被忽略了。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

原生 Android BLE 实现本质上是同步的吗? 的相关文章

  • Android SQLite 数据库从查询中删除重复项

    我是 SQLite 新手 我使用此查询是为了从特定用户的列中提取所有行 Cursor c db query true TABLE COLUMN USER user null null null null null 这是表格的示例 group
  • 订阅购买后失效日期无效

    我有一个带有应用内订阅的 Android 应用程序 用户购买订阅后 我通过 Google API 通过我们的后端请求 validUntilTimestampMsec 和 initiationTimestampMsec 返回的时间戳 init
  • 如何设计Android建筑物室内地图? [关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 我想设计一个 Android 应用程序 它可以帮助学生和其他人在特定建筑物 一层 中导航 显示前往教室的步行方向 我需要帮助 这是您通
  • 为什么Android room不建议使用allowMainThreadQueries()?

    我正在创建一个小型应用程序 仅在数据库中保存一些计数器 如果不存在 请插入一个 如果是的话 增加更新 该应用程序没有任何用户界面 它是一个保存和读取数据 少量表 少量记录 的插件 我可以用吗允许主线程查询 在这种情况下 每次我读到一些关于这
  • 检测Android N版本代码

    是否可以检测用户是否运行 Android N 我有一台装有 Android N 开发者预览版的 Nexus 6 如果我尝试获取构建版本Build VERSION SDK INT 它返回 23 等于 Android Marshmallow Q
  • openFileOutput 在单例类中无法正常工作 - 想法/解决方法?

    作为一名 Android 开发新手 我遇到了一些奇怪的问题 我想创建一个类 它方法其他类 活动 任何可以用于以某种特殊方式处理文件的类 假设为了简单起见 我们将记录一些内容 如果我在活动中执行以下操作 例如在 OnClick 侦听器中 则一
  • Android Studio 与 Google Play 服务的编译问题

    我正在运行 Android Studio 0 8 4 并在 Android Studio 0 8 2 上尝试过此操作 我正在运行 Java JDK 1 8 0 11 并尝试使用 JDK 1 8 0 05 每当我尝试构建我的 android
  • 彩信数据总是错误

    我正在从 Galaxy S6 读取短信和彩信数据 所有 SMS 消息都有一个date像这样的字段1456252633000 该数字是 unix 时间戳 1000 我发送 未收到 的彩信具有如下日期字段 1440628863时间戳是正确的 u
  • 使用audioSessionId值实例化AudioFx类?

    我已经阅读了 Android API 并尝试在互联网上搜索有关声明自定义audioSessionId然后用它audioSessionId初始化 AudioFx 类并为我的 MediaPlayer 或 AudioTrack 分配硬编码audi
  • Android TextView 中的等宽表格数字

    我有一个自定义字体 默认情况下具有可变宽度数字字形 并且我想在 Android 中使用该字体的等宽表格数字功能TextView使数字垂直对齐 也就是说 改变如下 像这样的事情 要选择字体的表格数字功能 请使用TextView s fontF
  • 标签栏随键盘一起上升

    这个问题之前已经发过 但是没有答案 Problem TabBar gt 2 个选项卡 选项卡一有一个Scrollview and an EddiText 标签二 其他 贴带时EditText 软键盘上升 TabBar与它一起 一个丑陋的解决
  • Android 导航 DeepLinks - 如何区分使用导航操作进行导航与深层链接

    我有导航操作和深层链接 根据您导航的位置 将您带到某个片段 我想确定是使用了深层链接还是仅使用了导航操作 这正是KEY DEEP LINK INTENT https developer android com reference andro
  • 布局聊天气泡问题:TextView 占满整个屏幕

    我正在研究泡泡聊天 我使用具有两种布局的适配器 一种用于传入消息 另一种用于我的消息 适配器工作正常 我的问题在于传入布局 无法很好地显示传入时间文本 当消息文本增长时 会填满屏幕的整个宽度 并隐藏消息时间的文本 第一个问题 如何才能实现这
  • Meteor:即使设置了 ANDROID_HOME 也未设置

    操作系统 Ubuntu 14 04 框架 流星1 1 0 2 应用名称 Songofy 这是输出meteor install sdk android meteor install sdk android Found Android bund
  • 通知管理器所需的权限

    我正在尝试使用以下命令将振铃器设置为静音且请勿打扰优先级 AudioManager myAudioMgr AudioManager context getSystemService Context AUDIO SERVICE Notific
  • 什么是版本代码主要?和versionCode有什么区别?

    我刚刚发现PackageInfo versionCode https developer android com reference android content pm PackageInfo html versionCode在 Andr
  • 谷歌地图URL中参数的含义是什么

    我正在 Android 上使用 Webkit 浏览器 我想在以下 URL 中获得一个红色 A 符号
  • android中如何将字符串转换为unicode

    我正在解析一些unicodes from json to my android应用程序 API 给出unicodes像这样的图标 ue600 当我将这个unicode直接添加到textview like textview setText u
  • 使用 Android O 的“android:fontFamily”时出现错误“文件名必须以 .xml 结尾”?

    Android O 引入了一项新功能 XML 中的字体 它允许您将字体用作资源 我正在创建font资源文件中的文件夹 由安卓开发者 https developer android com preview features working w
  • 如何像UCBrowser一样使用webview打开url

    我是安卓新手 我正在尝试制作一个示例应用程序来在 webview 中打开网站 问题是 网站以桌面模式打开 如何才能像UC浏览器 手机模式 一样打开网站 尝试这个 它应该有效 webview1 getSettings setJavaScrip

随机推荐