Android에 S3에 업로드하려고합니다. 그러나 실제로 이미지를 업로드하지는 않습니다.android의 s3 버킷에 업로드하는 중에 오류가 발생했습니다.
D/CognitoCachingCredentialsProvider : 내가 볼 오류를 닮은 유일한 것은 이것이다 그것을 인터넷 검색을 할 때 된 SharedPreferences
에있는 유효한 자격 증명 그러나, 나는 다양한 충돌하는 정보를 찾을 수 없습니다. 내가 발견 할 수있는 유일한 사실은 이것이 프로젝트에인지 프레임 워크를 제대로 추가하지 않아 발생할 수 있지만 build.gradle에 있음을 확인했습니다.나는 동일한 자격 증명을 사용하여 iOS에서 제대로 작동한다는 점도 유의해야합니다. 플랫폼 당 다른 ID 풀을 사용해야한다는 언급이있었습니다. 그래서 Android 용 새 ID 풀을 만들고 일치하는 사용 권한이 있는지 확인했는데 작동하지 않았습니다. iOS가 잘 작동하고 문제없이 이미지를 업로드하는 방법을 고려할 때 Android에서 사용하는 코드로 뭔가가 있어야한다고 생각합니다. 나는 그것을 아래에 포함시켰다.
실제로 S3
public void saveImage(Context context, Bitmap data, String key, Double lat, Double lon) {
exifBuilder = new ExifBuilder(mContext, lat, lon);
File file = writeImageToFile(context, data);
s3 = new AmazonS3Client(getCreadentials(context));
if (file != null) {
TransferUtility transferUtility = new TransferUtility(s3, context.getApplicationContext());
TransferObserver observer = transferUtility.upload(
BUCKET_NAME,
key,
file
);
}
}
나는 파일이 null이 아닌 것을 확인했습니다에 이미지를 저장 cognito
private CognitoCachingCredentialsProvider getCreadentials(Context context) {
CognitoCachingCredentialsProvider credentialsProvider = new CognitoCachingCredentialsProvider(
context.getApplicationContext(),
IDENTITY_POOL_ID,
Regions.US_EAST_1
);
return credentialsProvider;
}
그리고 기능에서 자격 증명을 얻기 위해이 기능이있다. 또한 올바른 ID 풀 ID인지 확인했습니다.
누락 된 항목이 있습니까?