3

Bluetooth デバイスで読み取りと書き込みを行うには、正しい特性を取得する必要がありますが、2 つの特性のうち、読み取り特性から値を読み取ることができません。コードが間違っている場合は修正してください

        var services = await connectedDevice.GetServicesAsync();
        var serviceid = services[0].Id;
        var service = await 
        connectedDevice.GetServiceAsync(serviceid);
        var characteristics = await 
        service.GetCharacteristicsAsync();
        var characteristicread= await 
        service.GetCharacteristicAsync(characteristics[1].Id);
        var characteristicWrite = await 
        service.GetCharacteristicAsync(characteristics[0].Id);
        byte[] bytes = Encoding.ASCII.GetBytes("LIST_DIR,audio");
        await characteristicWrite.WriteAsync(bytes);

        characteristicread.ValueUpdated += (s, ee) =>
            {
                var result = ee.Characteristic.Value;
                var stre = 
          System.Text.Encoding.UTF8.GetString(result, 0, result.Length);
               //i can't able read charecterstic
            };
            await characteristicread.StartUpdatesAsync();

予想される行動

書き込み特性値の書き込み後の値は、読み取り特性で更新する必要があります

実際の動作

読み取り特性値が更新されていない

4

1 に答える 1