我有一個ios(iPhone)應用程序需要連接到幾個同行的想法。我將我的代碼放在WiTab(SampleCode-developer.apple.com)示例上。如何通過WiFi連接iPhone應用上的多個對等點?
當我的應用程序啓動每個對等創建單獨的套接字(CFSocket)並通過NSNetService類發佈。特別是在實例NSNetServiceBrowser類中找到可用的對等體。並在TableView中顯示它們的名稱。當我在表格視圖中選擇行時解析了相應的對等地址,建立了連接並且發送接收數據成功。
但我的意圖是,我想在tableView(多對等)中選擇多行。並解決了選定的同行地址。爲此,我將選定的對等點信息存儲到NSMutableArray。當我點擊(觸摸)發送按鈕時,我想解析選定的設備地址並將數據發送到選定的對等點。對於我這樣做代碼
for(int k=0;k<[selectedService count];k++)
{
self.currentResolve = [self.selectedService objectAtIndex:k];
self.currentResolve = [self.selectedSer objectAtIndex:k];
[self.currentResolve setDelegate:self];
[self.currentResolve resolveWithTimeout:60];
}
但它會解決的只有一個設備(self.selectedService objectAtIndex:0)。所以,我怎樣才能解決多個對等地址/既定如何爲多個設備的連接。 所以我的疑惑是: -
- 是否可以同時連接多個設備通過WiFi?
- 如果是,可以以相同模式連接的設備的最大數量是多少?
- 哪種類型的CFSocket對多連接(TCP/UDP)有用?
- 是否需要在每個對等體中創建多個CFSocket?
- 如果是,如何?他們是否有可用的文件?
- 是否需要建立會話?
- 如何解析多元器件的地址?
您不需要重複使用單個currentResolve對象。每次在循環中動態創建一個,並在數組中存儲對它們的引用以便在超時後進行檢索/處置。 – tobinjim 2012-04-24 19:09:52