[英]Multipeer Session Disconnects While sending large files/images
我在我的應用程序中使用多對等連接功能。 我有一個奇怪的問題,即我能夠發送和接收消息(聊天)。 但是在文件共享的情況下,我使用
sendResourceAtURL:resourceURL withName:fileName toPeer:peer1
但是,當發送大文件(即大於1Mb)時,應用程序崩潰,即當我使用圖像選擇器控制器共享從照片應用程序中獲取的文件時。此外,Multipeer連接不支持斷點,因此無法調試。 有什么可能的解決方案嗎? 這是內存問題(由於高內存使用率導致崩潰嗎?)Iam使用ios 8.1.3(device)和ios 8模擬器。 我還檢查了黑白兩台設備,但仍然死機。請幫助!!!
發送具有多對等連接的數據或文件僅適用於少量數據-幾千字節是可以的,但是發送超過一兆字節將導致數據失敗。 如果您需要發送更多內容,則需要使用流。 要建立輸出流,請在建立會話后啟動它
-(void)session:(MCSession *)session peer:(MCPeerID *)peerID didChangeState:(MCSessionState)state
{
switch(state)
{
// ...
case MCSessionStateConnected:
self.outputStream = [session startStreamWithName:@"Stream" toPeer:weakSelf.remotePeerID error:&error];
break;
// ...
}
}
對於您的輸入流,實施
-(void)session:(MCSession *)session didReceiveStream:(NSInputStream *)stream withName:(NSString *)streamName fromPeer:(MCPeerID *)peerID
{
self.inputStream = stream;
}
有了兩個流之后,就可以打開它們並開始閱讀和寫作。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.