gpt4 book ai didi

swift - TransferUtility.uploadData 在 iOS 模拟器上工作得很好,但在实际设备 iOS13 上测试时不起作用

转载 作者:行者123 更新时间:2023-11-30 10:32:45 29 4
gpt4 key购买 nike

我已经遵循了 https://www.youtube.com/watch?v=UMgApUhg7ic 中的一些教程将图像上传到我的 s3 存储桶。

本教程在 iOS 模拟器上运行得很好,但在我的测试 iphone7 上不起作用。我写了一些调试代码来找出导致问题的原因,但没有任何结果。

我已经搜索了一段时间这个问题,但没有提到我的问题。我的代码是否缺少在实际设备上运行而不是在模拟器上运行的东西?

AppDelegate.swift

let AWS_Pool_ID = Bundle.main.object(forInfoDictionaryKey: "AWS_Pool_ID") as! String
let credentialsProvider = AWSCognitoCredentialsProvider(regionType:.APNortheast2, identityPoolId: AWS_Pool_ID)
let configuration = AWSServiceConfiguration(region:.APNortheast2, credentialsProvider:credentialsProvider)
AWSServiceManager.default().defaultServiceConfiguration = configuration

UploadViewController.swift

let transferUtility = AWSS3TransferUtility.default()
let imageData = self.image.jpegData(compressionQuality: 1.0)
let imageName = UUID().uuidString+".jpg"
let bucketName = "hello-world-bucket-name"
let progressBlock:AWSS3TransferUtilityProgressBlock = { task,progess in
DispatchQueue.main.async {
progressView.progress = Float(progess.fractionCompleted)
}
}

let expression = AWSS3TransferUtilityUploadExpression()
expression.progressBlock = progressBlock
transferUtility.uploadData(imageData!, bucket: bucketName, key: imageName, contentType: "image/jpeg", expression: expression, completionHandler: { task,error in
print("transferutility works")
if let error = error {
print(error)
} else {
let imageURL = "https://\(bucketName).s3.ap-northeast-2.amazonaws.com/\(imageName)"
self.submitData.uploads = [imageURL]
print(URL(string:imageURL)!)
}
})

最佳答案

这听起来像是一个权限问题。

如果您在设备上登录您的 aws 帐户,则您正在开发应用程序,您会在后台以“admin”身份登录。如果您从未连接到 iMac/MacBook 的真实设备启动应用程序,则您不再以管理员身份登录 aws-console。默认情况下,该权限拒绝除管理员(您)之外的任何人访问您的存储桶。

出于测试目的,将存储桶权限设置为公开,然后重试。

关于swift - TransferUtility.uploadData 在 iOS 模拟器上工作得很好,但在实际设备 iOS13 上测试时不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58787806/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com