1
我開發一個樹莓派3一點點的Windows IOT應用程序,我購買了這款藍牙設備:監控藍牙外設命令
https://www.amazon.com/gp/product/B00WDARWRY/ref=oh_aui_detailpage_o01_s00?ie=UTF8&psc=1
我希望能夠監聽藍牙設備的命令和在我的UWP中處理它們。
我開發一個樹莓派3一點點的Windows IOT應用程序,我購買了這款藍牙設備:監控藍牙外設命令
https://www.amazon.com/gp/product/B00WDARWRY/ref=oh_aui_detailpage_o01_s00?ie=UTF8&psc=1
我希望能夠監聽藍牙設備的命令和在我的UWP中處理它們。
我找到了一個解決方案,但我無法獲得所有的功能,特別是手柄模式。
解決的辦法是聽設備鍵輸入與:
public MainPage()
{
Window.Current.Dispatcher.AcceleratorKeyActivated += Dispatcher_AcceleratorKeyActivated;
this.InitializeComponent();
}
private void Dispatcher_AcceleratorKeyActivated(Windows.UI.Core.CoreDispatcher sender, Windows.UI.Core.AcceleratorKeyEventArgs args)
{
var eT = args.EventType;
if (CoreAcceleratorKeyEventType.KeyUp == eT)
{
var key = args.VirtualKey.ToString();
switch (key)
{
case "Enter" :
//Do something
break;
case "255" :
//Do something
break;
default:
break;
}
}
}
我已經發現,將被分配一個整數鍵是相當困難的來比較,因爲存在看似對沒有登記的虛擬鍵他們。所以我將虛擬鍵轉換爲一個字符串進行比較。
我發現整個值因設備而異,所以在另一個設置中「255」可能是「175」。我希望它不會從啓動到啓動...
所以總結起來,這是一個可以接受的解決方案,以滿足我的需求。我感覺好像編寫自己的設備驅動程序可能是最好的情況,但我沒有時間在這個項目中做到這一點,也沒有現在就知道p/invoke和HID對象的缺點。
你做了什麼?你遇到什麼問題? –