4
A
回答
2
我認爲它不可用。你需要等到週年紀念更新(希望)。檢查了這一點的Windows開發者的反饋UserVoice的頁面上https://wpdev.uservoice.com/forums/110705-universal-windows-platform/suggestions/7176829-gatt-server-api
GATT服務器API將提供給開發人員在更新敬請期待
他指出,在構建2016所示,週年更新更新
2
現在,Windows只能成爲GATT客戶端;但是,它仍然可以讀取和寫入GATT服務器的BLE設備。有幾個步驟來連接到BLE設備在Windows 10
權限
首先,請確保您有正確的功能設置。轉到Package.appxmanifest,Capabilities選項卡,然後打開藍牙。
Package.appxmanifest > Capabilities > Turn on Bluetooth
找到一個BLE裝置
的重要注意事項。目前,Windows 10不支持連接到 未配對的BLE設備。您必須在設置頁面 中配對設備,或使用應用內配對API。
瞭解設備已配對,有幾種方法可以找到BLE設備。您可以通過外觀,BluetoothAddress,ConnectionStatus,DeviceName或PairingState查找。一旦你找到你正在尋找的設備,你使用它的ID來連接它。以下是通過名稱查找設備的示例:
string deviceSelector = BluetoothLEDevice.GetDeviceSelectorFromDeviceName("SOME_NAME");
var devices = await DeviceInformation.FindAllAsync(deviceSelector);
// Choose which device you want, name it yourDevice
BluetoothLEDevice device = await BluetoothLEDevice.FromIdAsync(yourDevice.Id);
FromIdAsync方法是Windows將連接到BLE設備的位置。
溝通
您可以讀取和寫入的特性通過以下的設備上。
// First get the characteristic you're interested in
var characteristicId = new Guid("SOME_GUID");
var serviceId = new Guid("SOME_GUID");
var service = device.GetGattService(serviceId);
var characterstic = service.GetCharacteristics(characteristicId)[0];
// Read from the characteristic
GattReadResult result = await characterstic.ReadValueAsync(BluetoothCacheMode.Uncached);
byte[] data = (result.Value.ToArray());
// Write to the characteristic
DataWriter writer = new DataWriter();
byte[] data = SOME_DATA;
writer.WriteBytes(data);
GattCommunicationStatus status = await characteristic.WriteValueAsync(writer.DetachBuffer());
相關問題
- 1. 藍牙ASCII協議
- 2. 通過wifi的藍牙協議?
- 3. Windows 10藍牙Gatt客戶端ValueChanged問題
- 4. Symbian Windows Phone藍牙通信
- 5. 強迫藍牙2.1使用藍牙2.0協議?
- 6. C#寫藍牙協議
- 7. 關於藍牙協議
- 8. 使用GAP/GATT服務Windows 10中的藍牙LE無需先配對
- 9. 藍牙通信
- 10. 藍牙串口通信(SPP)
- 11. 在每個藍牙通信中使用的Windows藍牙驅動程序?
- 12. 通過藍牙通信
- 13. 用於Windows的藍牙低功耗GATT資源管理器?
- 14. 藍牙低能耗警報協議l
- 15. ios藍牙不支持tcp/ip協議
- 16. 的Windows Phone的Silverlight 8.1與Arduino的通信使用藍牙
- 17. Android - 不穩定的藍牙LE(GATT)
- 18. nxj中的藍牙通信
- 19. 使用Core藍牙進行通信
- 20. Windows 10 UWP與Arduino的藍牙連接
- 21. GOSession使用什麼協議的IOS藍牙?
- 22. 獲取輔助藍牙gatt服務android
- 23. 藍牙GATT over BLE for iOS和Android?
- 24. StickNFind藍牙GATT配置文件
- 25. 如何發佈藍牙GATT連接
- 26. Xamarin android藍牙通信
- 27. XPC藍牙通信崩潰
- 28. Android藍牙通信(listView.setOnItemClickListener)
- 29. iPhone藍牙通信示例
- 30. Android藍牙通信類型?
如果GATT服務不可用,您應該配對設備並使用DeviceWatcher api。微軟的人正在研究更好的API,但現在這是做到這一點的方法。更多信息可以在這裏找到:http://stackoverflow.com/questions/35420940/windows-uwp-connect-to-ble-device-after-discovery/39040812#39040812 – LanderV