ios – 如何上传用户个人资料图片以及如何从其他用户设备获取该
发布时间:2020-12-15 01:46:28 所属栏目:百科 来源:网络整理
导读:我有一个要求,让我们说我的应用程序有3个用户.我想为每个用户添加一个图像(配置文件图片用途),以便其他两个使用相同应用程序的用户可以看到此图像.就像whatsapp个人资料照片一样.所以为此我做了以下事情. 第1步:以User1身份登录 然后我添加了这段代码来上传
我有一个要求,让我们说我的应用程序有3个用户.我想为每个用户添加一个图像(配置文件图片用途),以便其他两个使用相同应用程序的用户可以看到此图像.就像whatsapp个人资料照片一样.所以为此我做了以下事情.
第1步:以User1身份登录 NSData *imageData = UIImagePNGRepresentation([UIImage imageNamed:@"arrow.png"]); [QBRequest TUploadFile:imageData fileName:@"arrow.png" contentType:@"image/png" isPublic:YES successBlock:^(QBResponse *response,QBCBlob *blob) { } statusBlock:^(QBRequest *request,QBRequestStatus *status) { } errorBlock:^(QBResponse *response) { }]; 第2步:以User2身份登录 然后我确实喜欢这个我正在获取属于我的应用程序的所有用户.运用 QBGeneralResponsePage *responsePage = [QBGeneralResponsePage responsePageWithCurrentPage:currentPage perPage:perPage]; [QBRequest usersForPage:responsePage successBlock:^(QBResponse *response,QBGeneralResponsePage *page,NSArray *users) { weakSelf.allUsers = [users mutablecopy] [weakSelf.tableView reloadData]; } errorBlock:^(QBResponse *response) { }]; 第3步: QBUUser *user = (QBUUser *)self.allUsers[indexPath.row]; if (user.blobID != 0) { [QBRequest downloadFileWithID:user.blobID successBlock:^(QBResponse *response,NSData *fileData) { UIImage *img=[UIImage imageWithData:fileData]; [cell.imageView setImage:img]; } statusBlock:^(QBRequest *request,QBRequestStatus *status) { } errorBlock:^(QBResponse *response) { }]; } 但问题是在这里我没有得到任何blobID,User1意味着user1的blobID为0(所有用户blobID为0),但是上传它是成功的,我在登录后使用User1上传文件后得到了blobID. 但是当我以user2或User3登录时,它没有显示与user1关联的任何blobID.我在上传时将公开视为是. 解决方法
在blob上传后,您应该使用QBUpdateUserParameters请求更新用户的blobID:
[QBRequest TUploadFile:imageData fileName:@"arrow.png" contentType:@"image/png" isPublic:YES successBlock:^(QBResponse *response,QBCBlob *blob) { QBUpdateUserParameters *userParams = [QBUpdateUserParameters new]; userParams.blobID = blob.ID; [QBRequest updateCurrentUser:userParams successBlock:^(QBResponse * _Nonnull __unused response,QBUUser * _Nullable user) { } errorBlock:^(QBResponse * _Nonnull response) { }]; } statusBlock:^(QBRequest *request,QBRequestStatus *status) { } errorBlock:^(QBResponse *response) { }]; (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- c – 为什么XOR与整数交换会触发警告?
- 对象和XML,JSON格式字符串的相互转换
- 每次输入后刷新stdin – 哪种方法不是错误的?
- database – 终止一个postgresql会话/连接
- c# – 使用Graphics.MeasureString进行字符串测量
- vb.net – InsertOnSubmit =无法添加具有已在使用的密钥的实
- JsonArray与JsonObject的区别与解析
- iphone – 为什么这不适用于XCode调试窗口“po [myNsDateCo
- seasar2中使用ognl实现依赖注入
- ruby – CodeClimate :: TestReporter :: InvalidPayload