gpt4 book ai didi

java - 获取预签名 URL 时应用程序在 firestick 2nd gen 上崩溃

转载 作者:行者123 更新时间:2023-12-05 00:07:44 25 4
gpt4 key购买 nike

Gradle

implementation platform('software.amazon.awssdk:bom:2.17.119')
implementation 'software.amazon.awssdk:s3'

用于获取预签名 Url 的代码

public static URL getPresignedUrl(String bucketName, String keyName ) {
PresignedGetObjectRequest presignedGetObjectRequest = null;
try {
AwsCredentialsProvider credentialsProvider = StaticCredentialsProvider.create
(AwsBasicCredentials.create(Access Key, Secret Key));


S3Presigner preSigner = S3Presigner.builder()
.credentialsProvider(credentialsProvider)
.region(Region.US_WEST_2).build();
GetObjectRequest getObjectRequest =
GetObjectRequest.builder()
.bucket(bucketName)
.key(keyName)
.build();

GetObjectPresignRequest getObjectPresignRequest = null;
if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.O) {
getObjectPresignRequest = GetObjectPresignRequest.builder()
.signatureDuration(Duration.ofDays(1))
.getObjectRequest(getObjectRequest)
.build();
}

// Generate the presigned request
presignedGetObjectRequest =
preSigner.presignGetObject(getObjectPresignRequest);
} catch (Exception e) {
e.getStackTrace();
}
return presignedGetObjectRequest.url();
}

如果 fire OS 版本大于或等于 7.x.x,应用程序运行正常操作系统版本 5.x.x 时崩溃

S3Presigner preSigner = S3Presigner.builder() 行崩溃

Crash Log

需要帮助

最佳答案

如果不确切了解版本,就很难直接找出原因。

但是你可以通过分离连接语句来自己尝试:
目前:

        S3Presigner preSigner = S3Presigner.builder()
.credentialsProvider(credentialsProvider)
.region(Region.US_WEST_2).build();

新:

        S3Presigner preSigner = S3Presigner.builder();
preSigner = preSigner.credentialsProvider(credentialsProvider);
preSigner = preSigner.region(Region.US_WEST_2):
preSigner = preSigner.build();

我对 Java 和 Fire OS API 都不是很坚定,所以我的代码很可能即使在从未有过的 Fire OS 版本上也不能工作,你必须稍微改变一下。
尽管如此,我认为你可以理解将所有陈述分解为查看导致问题的部分。
了解这些后,您可以查看 Fire OS 5 中是否缺少相应的功能,或者是否需要更改参数。

关于java - 获取预签名 URL 时应用程序在 firestick 2nd gen 上崩溃,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/70890068/

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