2013-01-17 25 views
6

是否可以創建一個應用程序來提供Windows 8(例如服務器)和'n'(> 1)Windows Phone 8設備之間的通信使用Windows 8/Windows Phone 8 Proximity API?使用Proximity API與許多Windows/Windows Phone 8設備同時進行通信

[編輯] 我的意思是同時使用NFC建立連接,並通過Wi-Fi或藍牙進行數據交換。

根據這篇文章:http://msdn.microsoft.com/en-us/library/windows/apps/br241210.aspx,Windows Phone 8不支持Wi-Fi Direct。這是什麼意思?在兩個Windows Phone 8設備之間?

我認爲它會根據MSDN庫工作: http://msdn.microsoft.com/en-us/library/windows/apps/jj207060.aspx

此方案適用於Windows Phone 8的和Windows 8設備。當點擊成功時,您會找回一個可以與其他設備通信的套接字。在Windows Phone 8上,此套接字建立在TCP/IP(Wi-Fi)連接或藍牙連接上。

任何想法?

回答

4

我已經做了幾個設備的測試,我可以說的是以下內容。

W8設備和WP8設備只能在2個設備支持NFC的情況下進行通信。

確實,W8和WP8之間不支持同行瀏覽(根據我的測試)。但是,一旦NFC連接建立W8並且WP8可以使用藍牙保持連接,則NFC連接器可以被釋放(NFC不支持多個同時連接)。

您可以在W8設備和其他設備(W8,WP8)之間保持多個實時連接。

我實現做的是:

  • 1 W8(NFC)平板電腦主機連接。
  • 1 W8 PC(不含NFC),使用對等瀏覽(Direct Wifi)連接到W8平板電腦。
  • 2 WP8使用NFC和藍牙連接W8平板電腦。

託管設備可以爲每個連接的設備保留一個套接字。 你只需要管理所有的套接字來接收和發送數據。

+0

瀏覽不支持,因爲Windows瀏覽目前僅支持WFD,而Windows Phone瀏覽目前僅支持藍牙。 NFC「輕敲」支持其他傳輸。 – Matt

1

是的,您可以使用鄰近框架在Windows Phone 8和Windows 8之間進行通信。

在WP8你需要以下AlternateIdentity設爲您的Win8應用的全名:

PeerFinder.AlternateIdentities.Add("Windows", "<your Win8 app package family name>!<your app WP8 app ID"); 
// e.g. 
PeerFinder.AlternateIdentities.Add("Windows", "NORADPublicAffairs.NORADTracksSanta_1.0.0.26_x64__bzcj0d5cg39gj"); 

在Win8中,你需要以下AlternateIDentity設爲您的WP8應用GUID:

PeerFinder.AlternateIdentities["WindowsPhone"] = "{<your app GUID>}" 
// e.g. 
PeerFinder.AlternateIdentities["WindowsPhone"] = "{5b7ba36b-04fc-df11-9264-00237de2db9e}" 

然後,您可以在WP8和Win8上使用鄰近框架來相互通信。 NFC可用於在WP8 < - > Win8之間啓動套接字,然後應使用藍牙或TCP/IP作爲通信層。

+3

你好賈斯汀,謝謝你的回答。但是我仍然想知道Windows 8應用程序是否可以同時打開多個套接字** **使用** 2個或更多** Windows Phone 8設備? –

+0

@Justin謝謝你的回答,這個答案是否適用於Windows Phone 8.1和Windows 8.1設備配對?如果是這樣,你知道任何示例代碼,將Windows Phone 8.1連接到Windows - 我試着添加你的建議,在這裏編碼https://code.msdn.microsoft.com/windowsapps/Proximity-Sample-88129731但我無法得到它上班。 – user3141326