2013-05-31 140 views
2

我有一個任務是從Windows Phone 8應用程序與Bluetooth應用程序(不是Low Energy -BLE)進行通信,後者是從Surface App進行通信。Windows Phone 8應用程序與藍牙設備進行通信

我遇到了這個鏈接http://msdn.microsoft.com/en-us/library/windowsphone/develop/jj207007(v=vs.105).aspx,它提到了藍牙集成,但它並沒有清楚地表明,如果這隻適用於BLE設備或不是?

請有人指點我可以用來從藍牙設備接口(發送和接收)數據的代碼示例。 Esp,RFCOMM,如果可能的話

真的很感謝。

+0

如果不能,請有人可以點我這也解釋了原因,這是不可能的鏈接。最糟糕的情況是我可以通過Windows 8桌面應用程序實現嗎? –

回答

5

下面的例子說明如何創建一個藍牙RFCOMM套接字連接到您的應用程序連接到設備:

Windows Phone 8 Networking Samples

基本上,你必須創建與配對的藍牙設備的套接字連接:

PeerFinder.AlternateIdentities["Bluetooth:PAIRED"] = ""; 
var available_devices = await PeerFinder.FindAllPeersAsync(); 
if (available_devices.Count > 0) 
{    
    PeerInformation pi= // Select the device 
} 
StreamSocket socket = new StreamSocket(); 
await socket.ConnectAsync(pi.HostName, "1"); 

此示例顯示在Build 2012會議中。你會發現,這裏演示的視頻:

Windows Phone 8: Networking, Bluetooth, and NFC Proximity for Developers (Build 2012)

+0

如果我想連接到啓用藍牙的外部設備(而不是BLE),是否可以在Surface RT平板電腦應用上使用相同的PeerFinder類? 還是有不同的RT API與Windows RT 8中的藍牙設備進行通信? 基本上我需要知道是否有一種獨特的方式可以實現a)Windows Phone 8應用程序,b)Surface Pro和c)Surface RT應用程序和d)Windows 8桌面應用程序。如果沒有人可以指定哪些適用於a,b,c和d –

+0

我無法從Windows應用商店應用連接到藍牙設備。雖然它具有相同的「PeerFinder」類,但似乎無法連接到藍牙設備。至少我還沒有做到這一點。對於桌面應用程序,您可以使用'SerialPort'類。在所有平臺上都沒有獨特的方法來實現這一點。但是,您可以將PeerFinder功能包裝在名爲SerialPort的類中,以便像在桌面應用程序中那樣使用它。 – anderZubi

+0

感謝您的信息。您是否知道(或找到了)確認PeerFinder無法用於Windows應用商店應用(Win RT)的鏈接? –

相關問題