4.3 の新しい BTLE API を使用して、Nexus 7 に BTLE SERVER を実装しようとしています。私はいくつかの問題に直面しています。まず、SDK にはサンプルがありません。唯一の例はクライアントです。第二に、ドキュメントは実際に間違ったことをするように言っています。BluetoothAdapter.getProfileProxy() with a BluetoothProfile.GATT_SERVER
オブジェクトを取得するには、パラメーターを使用する必要があると述べていBluetoothGattServer
ます。BluetoothGattServerCallback
このアプローチは機能しますが、実装をBLE スタックにリンクすることはできません。(このコールバックは、特にクライアントの読み取りおよび書き込み要求に応答する方法です。) しかし、問題 58582 につまずいた後、開発者BluetoothManager.openGattServer()
は、コールバックをパラメーターとして取り、BluetoothGattServer
オブジェクトを返す新しいメソッドを指摘しました。さて、問題が一つ解決しました。
次の問題はもっと問題です。BluetoothGattServer
ドキュメントには、このクラスを使用して Bluetooth LE サービスと特性を作成およびアドバタイズできると記載されています。サービスの作成などは問題ありませんでしたが、広告の開始方法については言及していません。クラス自体または私が見つけることができる他のクラスにはメソッドがありません。
誰もこれを行う方法を知っていますか? 現時点で私が確認できるのは、クライアントが使用するのと同じアプローチを使用することだけですが、そのアプローチにはスキャン (広告ではありません) が含まれます。BluetoothAdapter.startLeScan()
すべてのドキュメントはさらに、 IS が実際にスキャンに適していることを示唆しています。
では、すべてのサービス、特性、および記述子が整ったら、どのように広告を呼び出すのでしょうか?