首页 新闻 会员 周边 捐助

IOS asyncSocket上传图片

0
悬赏园豆:50 [已解决问题] 解决于 2014-09-24 16:48
asyncSocket发送照片回服务器,点击发送button可以发送一张图片,点击多次button可以发送多张图片。但是想实现点击一次button循环发送多张图片,无法实现,只能发送最后一张。求大神帮忙!!! 
-(void)sendBtnClick:(id)sender
{
    _asyncSocket = nil;
    for (int i = 0; i<3; i++) {
        NSLog(@"第%d次",i);
        [self send];
    }
}
-(void)send
{
    if (!_asyncSocket)
    {
        _asyncSocket = [[AsyncSocket alloc]initWithDelegate:self];
        NSString *host = @"172.17.73.123";
        int nPort = 8484;
        NSError *error = nil;
        //[_asyncSocket connectToHost:host onPort:nPort error:&error];
        if ([_asyncSocket connectToHost:host onPort:nPort withTimeout:5 error:&error]) {
            NSData *imageData = UIImageJPEGRepresentation([UIImage imageNamed:@"1.jpg"], 1);
            [_asyncSocket writeData:imageData withTimeout:-1 tag:1];
        }else{
            NSLog(@"无法连接,原因是:%@",error);
        }
    }
    sleep(5);
}
#pragma delegate
- (void)onSocket:(AsyncSocket *)sock willDisconnectWithError:(NSError *)err
{
    NSLog(@"Info___willDisconnectWithError\n");
    NSLog(@"%@",err);
    [sock disconnectAfterWriting];
}

- (void)onSocket:(AsyncSocket *)sock didConnectToHost:(NSString *)host port:(UInt16)port { NSLog(@"Info___didConnectToHost\n"); NSLog(@"Socket did Connect to host: %@:%u", host, port); _asyncSocket = nil; [sock disconnectAfterWriting]; }


控制台输出情况:

 2014-04-19 10:30:40.820 TestSocket[980:a0b] 第0次
2014-04-19 10:30:40.824 TestSocket[980:a0b] Info___willConnectToHost
2014-04-19 10:30:45.859 TestSocket[980:a0b] 第1次
2014-04-19 10:30:50.860 TestSocket[980:a0b] 第2次
2014-04-19 10:30:55.863 TestSocket[980:a0b] Info___didConnectToHost
2014-04-19 10:30:55.864 TestSocket[980:a0b] Socket did Connect to host: 172.17.73.123:8484 
 
结果:服务器只收到一张图片
風过无痕的主页 風过无痕 | 初学一级 | 园豆:13
提问于:2014-04-19 10:33
< >
分享
最佳答案
0

NSData *imageData = UIImageJPEGRepresentation([UIImage imageNamed:@"1.jpg"], 1);  这行里的图片名称不应该固定死,否则你每次上传的都是1.jpg都会覆盖之前上传的。

收获园豆:50
洒洒 | 菜鸟二级 |园豆:252 | 2014-04-27 20:33
其他回答(4)
0

。。。。。。。

風过无痕 | 园豆:13 (初学一级) | 2014-09-18 10:47
0

您好 ,请问你用socket上传图片的demo还有吗?发我一份 576484150@qq.com 小弟不胜感激!谢谢!

ckl520 | 园豆:202 (菜鸟二级) | 2016-04-11 13:33

您好,请问你最近也在做socket上传图片的小项目?有demo可以发一份到我的邮箱 1753321975@qq.com 可以吗?谢谢~

支持(0) 反对(0) 规律 | 园豆:202 (菜鸟二级) | 2016-07-14 10:36
0

楼主,你好我最近在倒弄利用socket进行设备间的传输,请问下你有小demo吗?有demo可以发一份到我的邮箱 1753321975@qq.com 可以吗?谢谢~

规律 | 园豆:202 (菜鸟二级) | 2016-07-14 10:41
0

这是个简单的例子,利用最基本的sdk,例子,如果需要复杂的.可能需要利用第三方库,比如afnetwork

jprothwell | 园豆:214 (菜鸟二级) | 2016-11-07 17:48
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册