- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
在对 BLE 主题和 android 进行了数小时的研究之后,我唯一发现的是一团糟。为 iOS 开发一个使用 BLE 的应用程序非常简单——一个框架和一些文档。现在,我必须为 android Jelly Bean 4.2.2 编写一个应用程序(该应用程序只能在一台设备上运行,目前仅随 4.2.2 一起提供),它必须发现并连接到 BLE 设备。
我发现,在 4.1 之前,android 上的蓝牙堆栈称为 BlueZ,但在 4.2 中,Google 更改为来自 Broadcom 的堆栈。我知道 4.3 有一个官方内置的对 Android 低功耗蓝牙的支持,但该应用程序必须在 4.2.2 下运行。
经过大量研究,我还没有找到任何关于 Broadcom 堆栈的文档。有人可以给我指向一个链接吗(该链接仍在工作并且不会以 303 错误结束)?该堆栈是否支持 BLE?有人知道这方面的教程或可以提供几行示例代码吗?
非常感谢您的任何意见!我真的迷失在那个烂摊子里
林纳德
最佳答案
经过 3/4 年和许多意见后,我想自己回答这个问题:
我们与中国制造商进行了交谈,但他们无法为我们提供 JB 4.3 的发布日期(目前看来需要进行硬件升级😂)。因此我们寻找另一种解决方案,我们找到了一个:BlueKitchen GmbH ( http://bluekitchen-gmbh.com ) 是一家开发了 BTStack 的小公司,BTStack 是一种用于越狱 iOS 设备和嵌入式系统的开源蓝牙堆栈,它修改了现有堆栈以使其与我们特定的 Android 设备兼容。该解决方案涉及对设备进行 root 操作、用我们的定制蓝牙堆栈替换原始蓝牙堆栈、对设备进行 root 操作,然后将其运送给我们的客户。由于堆栈作为独立于应用程序的系统服务运行,因此应用程序不需要任何 root 权限,并且可以通过 Google Play 商店或 ADB 控制台轻松安装和更新,而无需 root。应用程序通过套接字连接与堆栈对话,因此可以使用纯 Java 代码。在应用程序内部,必须区分自定义堆栈和运行 JB 4.3+ 且具有 native BLE 堆栈的设备。但是因为 BLE 协议(protocol)规定了 API,所以一切都非常相似。
如果您对 iSafe Innovation 2.0 或 Ruggear RG220 设备的堆栈版本感兴趣,或者如果您想要其他 Android 设备的堆栈(带有蓝牙芯片)
希望你也能找到解决办法
林纳德
关于android - 用于 Jelly Bean 4.2 的低功耗蓝牙 API,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20332277/
我想满足在 Jelly Bean 版本及以下版本以及 Jelly Bean 以上版本上运行的设备。 我的方法应该根据应用程序 ID 获取所有应用程序的应用程序使用情况/流量。请注意这行 rx = Lo
我正在使用 Maven 3 开发 Jenkins 插件,看到两个默认的 .jelly 文件:global.jelly 和 config.jelly。两者之间有什么区别,您能举例说明每个文件中的内容吗?
我在hudson中使用email-ext-plugin生成报告,查看$HUDSON_ROOM\plugins\email-ext\WEB-INF\classes\hudson\plugins\emai
我有一个简单的问题。在jenkins中,当为gui制作jelly配置文件时,您可以有一个单选按钮展开并显示更多元素,这也可以通过下拉列表来完成吗?如果是这样,有人有例子吗?我知道如何使用单选按钮来完成
我想打印数组中的元素,使用 foreach 循环给出错误 "元素 j:foreach 的前缀 j 未绑定(bind)" . 下面是我写的代码: Jello World var word
我在我的应用程序中集成了通知,我已经处理了 2 个案例:使用 NotificationCompat.Builder 的 Pre Jelly bean 通知,以及使用生成器发布 Jelly bean 通
我正在尝试在我的通知中实现媒体播放器控件。我需要播放/暂停按钮在“播放”可绘制对象和“暂停”可绘制对象之间动态切换(基本上取决于用户的触摸)。例如,一旦用户触摸“暂停”按钮,它需要更改为“播放”。当用
我尝试创建一个向左动画的按钮,然后再次向右返回到正常状态。动画不适用于此代码: .fortnite-wrapper .btn.btn-display:after { content: ""; disp
是否可以在 Jelly 中动态更新文本框的值? 我有一个下拉框,其选项是根据表单中以前的数据确定的。使用在线可用的文档可以轻松实现这一点(只需使用描述符中的 doFill...Items() 方法)。
我正在尝试在装有 Android 4.2.2 的 Nexus 4 中设置飞行模式。我知道这是不可能的,因为 AIRPLANE_MODE_ON 已移至 Global system settings它只是
以下代码不适用于 Jelly Bean (Android 4.1): final ComponentName cn = new ComponentName("com.android.phone","c
我正在使用WebView以便在我的Android应用中播放YouTube视频。 它工作正常,但我似乎对Jelly Bean存有疑问(也许还不知道更高版本)。 第一次播放视频时,它可以正常播放,但是当我
This widget is no longer supported. Other horizontally scrolling widgets include HorizontalScrollVie
文本框 文本区域 但是 clazz="required" 不适用于 textarea,我是否缺少另一个与 clazz req
我正在为我公司的一些自定义报告创建一个构建后插件。我从此处提供的 Jenkins“hello world”示例开始: https://wiki.jenkins-ci.org/display/JENKI
我正在尝试构建一个Jenkins Post构建插件,我必须在其中处理JSON文件(包含测试结果)并以表格格式显示它执行构建后,Jenkins 中的 code> 。 以下是到目前为止已完成的步骤: 创建
自从我的华硕 Transformer 平板电脑升级到 Jelly Bean 后,我发现应用程序和小部件的卸载有时非常缓慢,需要几分钟而不是几秒钟。这可能是有原因的吗? 我在 Stackoverflow
我正在进行一项 Activity ,我必须向用户显示 Toast 消息。操作系统版本是 Jelly Bean,显示通知已打开。这适用于 Ice Cream Sandwich 。这是代码: Toast.
在最新版本 Jelly Bean 之前,我的 android webview 应用程序从未出现过滚动问题。滚动不再足够流畅,也没有加速。有什么想法吗? 最佳答案 我尝试使用硬件加速,但没有解决这个问题
正在关注 my previous notification problems我想测试 Jelly Bean 4.1 中描述的新通知堆栈功能 here .我已经发现,通知需要有不同的 ID,否则旧通知只
我是一名优秀的程序员,十分优秀!