- objective-c - iOS 5 : Can you override UIAppearance customisations in specific classes?
- iphone - 如何将 CGFontRef 转换为 UIFont?
- ios - 以编程方式关闭标记的信息窗口 google maps iOS
- ios - Xcode 5 - 尝试验证存档时出现 "No application records were found"
我正在开发一款与蓝牙 LE 设备通信的应用程序。我想要一些方法来避免为 iOS 和 Android 开发两次。是否有对蓝牙 LE 具有良好支持的跨平台应用程序框架?
我快速浏览了 Cordova (PhoneGap)、Appcelerator、Xamarin 等框架(通常的嫌疑人:例如 this list ),但我无法弄清楚它们是否 (a) 在每个平台上支持蓝牙 LE完全没有,并且 (b) 如果他们这样做了,无论是通过 native 调用(如何访问?)还是 native API 的某种包装器(包装器是什么样的?),以及 (c) 如果它是一个包装器,它有多完整,它有多稳定。
如果您有这方面的经验,您能否总结一下不同框架中蓝牙 LE 支持的状态?
编辑 通过深入研究各种选项和以下答案获得的一些信息:
Cordova:几个开源插件,例如 https://github.com/evothings/cordova-ble https://github.com/don/cordova-plugin-ble-central https://github.com/randdusing/BluetoothLE (不是完整列表)。 Evothings 是一个不错的 Cordova + 蓝牙设置。这些在 Appery.io、Telerik AppBuilder、Ionic Creator 等其他基于 Cordova 的应用程序框架中是否有效?
Xamarin:这仅通过 MonoTouch.CoreBluetooth 使用 native API和 Android.Bluetooth .这意味着使用它们的代码实际上并不是跨平台的,但它们可能与原生 API 一样工作(因为它们本质上是原生 API)。
Appcelerator 有蓝牙的第三方商业插件(https://marketplace.appcelerator.com/apps/3834 和 https://marketplace.appcelerator.com/apps/6611 ), 没有内置支持。这些有用吗?
附言除了蓝牙,我的需求非常少:这个应用程序将有很多 UI 元素,但不是复杂的类型,只是一堆不同屏幕上的一堆按钮/复选框/ slider (在两个平台上维护会非常乏味) ).我还需要对 REST API 进行几次调用。速度不是特别重要,没有那么多应用程序逻辑(现在大部分是用 C 语言编写的),原生 UI 外观也不是那么重要。然而,在旧版本平台上工作很重要,最好回到 Android 4.3 和 iOS 7.0。
最佳答案
我一直在使用Randdusing用于 BluetoothLE 的 Cordova 插件,适用于 Android 和 iOS(Windows 手机仍在开发中)。作为 Cordova,它旨在与 HTML5/JavaScript 应用程序一起使用,但插件本身(与所有 Cordova 插件一样?)是用 native 代码编写的。在我的项目早期,我尝试了 Evothings它也有 BLE 插件,但我发现了一些问题,我不知道这些问题是否已经解决。就 UI 要求而言,我的应用听起来与您的应用非常相似,如果您愿意,我可以帮助您集成 BLE 代码 - 但您需要先将“c”重写为 javascript。顺便说一句,您要求使用较旧的 Android,但 AFAIK BLE 仅在 Android 4.3 or higher 中受支持.
关于android - Bluetooth LE 应用程序,如何构建跨平台(iOS-Android)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30812689/
Bluetooth Low Energy 中计步的服务、特征值 (UUID) 是什么?蓝牙文档的相应页面未列出任何步骤。如何计算步数?步数设备是否使用运行速度和节奏服务?谢谢。 最佳答案 某些设备确实
我有 2 个 Raspberry Pi,运行 Raspbian,是最新的。每个 Pi 都有一个蓝牙 USB 加密狗。我可以使用 this. 让它们通过 RFCOMM 进行通信 现在,我想在蓝牙物理链路
在低功耗蓝牙中,一个主设备可以连接的最大从设备数量是多少?主设备可以连接的最大从设备数量是多少? Bluetooth Low Energy 有 40 个 channel ,但为什么它们只使用 3 个
我正在尝试关闭蓝牙服务,但 Bluecove 在连接关闭方法 ( https://code.google.com/p/bluecove/issues/detail?id=90 ) 上有错误,我正在尝试
我想开发像蓝牙 LE 外围设备这样的应用程序,它停止在与蓝牙 LE 中央设备连接时做广告,并限制与多个蓝牙 LE 中央设备连接的蓝牙 LE 外围设备。 一个蓝牙 LE 外围设备一次只能与一个蓝牙 LE
Eclipse 一直要我定义一个 startActivity 方法,但我不知道该在该方法中放置什么。我已经在我的 androidmanifest.xml 中启用了蓝牙。 我在下面提供了我的代码的摘录:
我想基于 BlueZ 构建一个 c 文件,但我的系统中似乎没有 bluetooth.h 文件。 fatal error: bluetooth/bluetooth.h: No such file or
我正在使用运行 jb 的 root 三星 galaxy nexus 手机,由于某种原因,我没有从蓝牙连接服务接收到任何广播 Intent 。您将在下面找到我的接收器 list 和广播接收器代码。任何提
嗨,在下面的代码中,已经打开了蓝牙电话,但它仍然要求我打开下面代码中的弹出窗口。。谁能帮帮我,我哪里做错了。。允许没有必要问已经蓝牙是
有没有人在调用 bluetoothDeive.createBond() 时遇到与以下错误消息相同的问题? android 4.4 api的方法? java.lang.SecurityException
我正在寻找有关 JSR-82 的帮助。我找了很久,甚至还找了大学的项目主管来帮忙,但到目前为止,我还是没有运气。 我的问题... 我有一个项目,我只需要扫描蓝牙设备 我还无法扫描我的蓝牙设备。我在 C
我正在基于著名的 BluetoothChat 示例开发具有蓝牙功能的应用程序。基本上,使用此应用程序,客户端可以向服务器发送一些数据包。 我已经使用两部 Xperia 智能手机(Xperia X8 和
我正在处理 Java 和 BlueCove 以找到蓝牙设备。 我创建了一个 Maven 项目并添加了 BlueCove 依赖项: net.sf.bluecove bluecove
首先,我上次尝试将 c 程序编译为 linux-arm 架构时遇到了问题,以便稍后在 android 应用程序中使用它。我成功地这样做了,稍后我会写一篇关于如何使用 NDK 独立工具链的文章。 现在我
作为我的类(class)项目之一,我想通过蓝牙耳机或任何此类蓝牙设备按下它们上的可用按钮来启动/触发我自己的 android 应用程序。我将按下蓝牙耳机上的任何特定按钮,我的应用程序应该能够检测到该按
我的项目是使用 Micro:bit 微处理器创建一个交互式程序我正在构建一个游戏,它使用钻机作为 Controller 读取旋转方向和速度作为控制输入 但是我的导师也说在游戏运行的同时给电路板供电会很
我对 Android 编程完全陌生,从技术上讲,这是我在 Android Studio 上工作的第一个大项目。我正在尝试创建一个 android 应用程序,它通过蓝牙连接到我的 Arduino 设备并
我了解蓝牙配置文件包含其他配置文件和协议(protocol)。我不明白蓝牙设备之间究竟是如何交互的。例如,如果您使用任何实现 A2DP 配置文件的附件并将其连接到 iPad,那么 iPad 会将所有音
我想检查设备上是否启用了蓝牙(以便应用程序可以在没有用户交互的情况下使用它)。有没有办法做到这一点?我也可以分别检查蓝牙和低功耗蓝牙吗? 最佳答案 我使用 Radio 完成了此操作类(class)。
我是开发带有蓝牙连接到外围设备的移动应用程序的新手。我搜索了GATT是用于蓝牙LE通信的相关配置文件,但是我们的客户建议我们使用UART服务。现在我很困惑 1.这两件事是如何关联的 2.我们是否必须选
我是一名优秀的程序员,十分优秀!