我研究了蓝牙低功耗。
但我没有支持 BLE 设备进行测试。
所以我想问:
Android模拟器支持BLE功能进行测试吗?
我在 Android Emulator 4.3 (x86) 和 Android Emulator 4.4 (ARM) 上尝试使用以下代码:
// Use this check to determine whether BLE is supported on the device. Then
// you can selectively disable BLE-related features.
if (!getPackageManager().hasSystemFeature(PackageManager.FEATURE_BLUETOOTH_LE)) {
Toast.makeText(this, R.string.ble_not_supported, Toast.LENGTH_SHORT).show();
finish();
}
而且它总是显示“ble_not_supported”。
另一个问题是
还有哪些模拟器或工具支持 Android BLE?
我真的很想在模拟器上测试 BLE 功能。
在后台使用 qemu 时,可以通过 USB 蓝牙和 WiFi 适配器(成本约为 20 美元)来传递(也适用于 Windows)。您可以参考这个 Google 的指南 或 Chris Larson 的教程(复制到这里以保持在线状态):
Android 模拟器非常适合开发蓝牙 LE 应用程序。 诀窍是让 Android 模拟器识别 BluetoothLE 适配器。
您需要什么:
- 来自 android-x86.org 的 Androidx86 iso 我使用了 4.4 候选版本
- 虚拟机软件:我用的是Oracle VirtualBox
- BluetoothLE USB 适配器:我使用了 Cirago 蓝牙 4.0 USB 迷你适配器 (BTA8000)(附属链接)或 Cirago 蓝牙 4.0 USB 迷你 适配器 (BTA8000)(非附属链接)
- 安装Android SDK进行调试
- 安装 VirtualBox
- 下载Androidx86
- 打开 VirtualBox 并创建一台新机器。将类型设置为 linux/other(32bit)
- 将虚拟机的内存和硬盘空间设置为您需要的任何值(但至少是 Android 的最低规格)。
- 当询问操作系统映像时,选择您从 Androidx86.org 下载的 Androidx86 映像
- 虚拟机启动时,选择安装Android。
- 安装完成后,关闭Android虚拟机并卸载iso镜像
- 插入蓝牙 USB 适配器并将其添加到 Android 虚拟机的设置中
- 启动 Android 虚拟机并浏览启动屏幕以配置 Android 以便使用
- 在 Android VM 中,转到设置并启用 BluetoothLE(如果失败,请重新启动 VM 并尝试再次启用)
以下是一些其他链接,或多或少描述了相同的方法,以及您可能感兴趣的其他一些工具:
如果你希望谷歌解决这个问题,你可以给这个帖子加注星标以使其更加明显(只要有足够的选票,谷歌将在几年内解决这个问题,就像他们处理音频问题一样......):
模拟器限制
模拟器的功能限制包括:
不支持拨打或接听实际电话。不过,您可以通过模拟器控制台模拟电话呼叫(拨打和接听)。
不支持USB连接
不支持设备连接的耳机
不支持确定网络连接状态
不支持确定电池电量和交流充电状态
不支持判断SD卡插入/弹出
不支持蓝牙
谢谢,