问题描述
使用 QuickBlox iOS Swift SDK 发送聊天附件需要大量时间(超过 1 分钟) 我们有以下通过 iOS 设备上的聊天窗口发送附件的实现。 我们正在使用 quickblox 本身在其文档中的示例应用程序中提供的以下类名和方法。
Classname: AttachmentUploadBar
MethodName: QBRequest.uploadFile
当我们在我们的应用程序中加入相同的实现时,从 quickblox 的上传 API 获得响应需要大约 30 秒。 除了我们帐户的端点外,与 Quickblox 文档中提供的内容相比,实施中没有任何变化。 我们已经对我们的 Web 和 Android 实现(到同一个端点)进行了相同的测试,但我们没有看到那里有任何延迟,延迟(0.5 Mb 文件大约 50 - 60 秒)只是发生在 iOS 前端。>
QBRequest.uploadFile(with: url,fileName: attachmentName,contentType: mimeType,isPublic: true,successBlock: { [weak self] (response: QBResponse,uploadedBlob: QBCBlob) -> Void in
guard let self = self else {
return
}
print("uploading attachment done")
let attachment = QBChatAttachment()
attachment.id = uploadedBlob.uid
attachment.name = uploadedBlob.name
attachment.type = mimeType
// print("uploadbob url : \(uploadedBlob.publicUrl())")
// attachment.url = uploadedBlob.publicUrl()
attachment["size"] = "\(uploadedBlob.size)"
self.progressBar.isHidden = true
self.cancelButton.isHidden = false
self.delegate?.attachmentBar(self,didUpLoadAttachment: attachment)
},statusBlock: { [weak self] (request : QBRequest?,status : QBRequestStatus?) -> Void in
if let status = status {
dispatchQueue.main.async {
print("uploading attachment in progress === \(status.percentOfCompletion)")
let progress = CGFloat(Float(status.percentOfCompletion))
self?.updateLoadingProgress(progress)
}
}
}) { [weak self] (response : QBResponse) -> Void in
guard let self = self else {
return
}
print("upload attachment Failed.. ")
self.delegate?.attachmentBarFailedUpLoadImage(self)
}
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)