:Windowsの10、そのペアBLEデバイスで自分のPCをWindowsベースのユニバーサルアプリを構築しようとしているのC#.NET 2015コミュニティ、UWPタスクが終了し、[C#UWP]使用
イム。
すでに動作しているのは、近くのデバイスを列挙し、選択したデバイスとペアにして、バッテリレベルやファームウェアリビジョンなどの情報を取得することです。今
問題は、私はカスタムサービスを取得しようとすると、私の仕事が原因.GetGattService
System.Exception.Messageで「のSystem.Exception」で終わっていることです。「要素が見つかりません(からの例外HRESULT:0x80070490)」
System.Exception.Stack: "Windows.Devices.Bluetooth.BluetoothLEDevice.GetGattService(GUID serviceUuid)で\ R \ nはSettingsCs.Settings.d__23.MoveNextで()"
この
private async Task<SettingsReturn> writeSettingTransition(BluetoothLEDevice device, byte[] byteSettings)
{
//Check if device is available
if (device != null)
{
Guid SERVICE_CUSTOM = new Guid("7e0bc6be-8271-4f5a-a126-c24220e6250c");
GattDeviceService service = device.GetGattService(SERVICE_CUSTOM);
//Check if service is available
if (service == null)
{
return SettingsReturn.INIT_ERROR;
}
GattCharacteristic characteristic = service.GetCharacteristics(BLETestApp.CHAR_SETTINGS)[0];
//Check if characteristic is available
if (characteristic == null)
{
return SettingsReturn.INIT_ERROR;
}
var writer = new DataWriter();
writer.WriteBytes(byteSettings);
var buffer = writer.DetachBuffer();
await characteristic.WriteValueAsync(buffer);//********
bool success = characteristic.CharacteristicProperties.HasFlag(GattCharacteristicProperties.Write);
if (success == true)
{
// Take care of the 8 bit byte for the counter (max = 255 (unsigned))
if (TRANSACTION_ID > 250)
{
TRANSACTION_ID = 0;
}
else
{
// Count TANSACTION_ID one up
TRANSACTION_ID++;
}
return SettingsReturn.OK;
}
else
{
return SettingsReturn.WRITE_ERROR;
}
}
else
{
return SettingsReturn.INIT_ERROR;
}
}
私はsomenoneが私を助けたり、私が間違っていることを教えてくれることを願っています。
投稿を編集して例外の詳細(メッセージとスタックトレース)を追加できますか? –
@PedroLamas申し訳ありません、私はそれを忘れました。今詳細を追加しました。 –
必要な機能を設定しましたか? [this](https://docs.microsoft.com/en-us/uwp/schemas/appxpackage/how-to-specify-device-capabilities-for-bluetooth)を確認する必要があります。 –