Bluetooth Low Energy について勉強しました。
しかし、私はテスト用の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機能をテストしたいと思っています。
エミュレータの制限
エミュレーターの機能上の制限は次のとおりです。
実際の電話の発着信はサポートされていません。ただし、エミュレーター・コンソールを介して(発信および受信)通話をシミュレートできます。
USB接続はサポートされていません
デバイス接続のヘッドフォンはサポートされていません
ネットワーク接続状態の判別はサポートされていません
バッテリーの充電レベルとAC充電状態の判別はサポートされていません
SDカードの挿入/取り出しを判別するためのサポートなし
Bluetoothのサポートなし
おかげで、
Androidを使用し、Bluetooth LEをサポートするPCドングルを使用して、Amazonで約18 $かかります。) Chris Larsonによるチュートリアル (オンラインに保つためにここにコピーされます):
Androidエミュレーターは、BluetoothLEアプリケーションの開発に最適です。トリックは、AndroidエミュレータにBluetoothLEアダプタを認識させることです。
必要なもの:
- Android-x86.orgのAndroidx86 iso、4.4リリース候補を使用しました
- 仮想マシンソフトウェア:Oracle VirtualBoxを使用しました
- BluetoothLE USBアダプター:Cirago Bluetooth 4.0 USBミニアダプター(BTA8000)(アフィレートリンク)またはCirago Bluetooth 4.0 USBミニアダプター(BTA8000)(非アフィレートリンク)を使用しました
- インストールAndroidデバッグ用SDK
- VirtualBoxをインストールする
- Androidx86をダウンロード
- VirtualBoxを開き、新しいマシンを作成します。タイプをlinux/other(32bit)に設定します
- 仮想マシンのメモリとハードドライブのスペースを必要なものに設定します(ただし、少なくともAndroidの最小仕様)。
- OSイメージを求められたら、Androidx86.orgからダウンロードしたAndroidx86イメージを選択します。
- 仮想マシンが起動したら、Androidのインストールを選択します。
- インストールが完了したら、Android仮想マシンをシャットダウンし、isoイメージをアンマウントします
- Bluetooth USBアダプターを接続し、Android仮想マシンの設定に追加します
- Android仮想マシンを起動し、起動画面をたどってAndroidを使用するように構成します
- Android VMに移動してBluetoothLEを有効にします(これに失敗した場合は、VMを再起動して再度有効にしてみてください)
同じ方法を説明する他のいくつかのリンクと、興味のあるいくつかのその他のツールを次に示します。
また、この問題をGoogleで解決したい場合は、このスレッドにスターを付けて、より目立たせることができます(十分な票があれば、Googleは数年でオーディオの問題と同様に対処します...):