2011-07-29 80 views
3

我想在Mac應用程序中檢測在給定時刻當前是否在同一網絡(Wifi或LAN)上有iPhone/iPod Touch設備。 我的第一次嘗試是使用bonjour進行某種自動發現,但據我所知,bonjour必須作爲iOS設備上的服務器運行。這不適合我,因爲我需要某種iOS設備的通用網絡檢測,而無需運行某個應用程序。 分享如何檢測iOS設備是否使用相同的網絡?

回答

1

有幾種方法可以嘗試,儘管我確信它們可能會引發誤報。

如果在Wifi上,您可以比較接入點的BSSID,它們會讓您知道它們是否都連接到相同的接入點。

或者你可以使用IP地址和網絡掩碼進行一些操作,它會告訴你子網地址以及該子網上有多少IP地址,如果子網匹配並且兩個IP地址都在子網範圍內那麼它很可能是他們都在同一個網絡上。

對不起,我沒有更具體的解決方案,但也許這會幫助你到達某個地方。

1

iain的回答描述了你需要做的事情,但我認爲你的想法有一個缺陷。 Mac應用程序無法檢測同一網絡上的其他設備是否是iOS設備或其他沒有運行某些代碼以回答Mac的代碼的計算機。

換句話說,作爲網絡一部分的iOS設備不會提供任何基於流量的指紋來顯示它們是哪種類型的設備。

相關問題