0
FirebaseStorage에서 공개 downloadUrl을 가져 오려고 할 때 다음 오류가 발생합니다. 전체 읽기 및 쓰기 액세스가 가능하도록 내 규칙을 설정했으며 스토리지에 데이터를 저장하는 데 문제가 없습니다. 그러나 다운로드 URL을 얻으려고하면이 문제가 발생합니다. -토큰 가져 오기 FirebaseStorage 오류
E/StorageUtil: error getting token java.util.concurrent.ExecutionException: com.google.android.gms.internal.zzbtk: Please sign in before trying to get a token.
나는 Firebase getDownloadURL 을 읽을 수는 있지만 여전히 내 문제를 해결 할 수 없습니다했습니다.
다음은이 문제를 해결하는 것만으로는 충분하지 않습니다 활동 클래스
mAuth = FirebaseAuth.getInstance();
FirebaseUser user = mAuth.getCurrentUser();
if (user != null) {
/* perform your actions here*/
} else {
signInAsAnonymous();
}
private void signInAnonymously() {
mAuth.signInAnonymously().addOnSuccessListener(this, new OnSuccessListener<AuthResult>() {
@Override
public void onSuccess(AuthResult authResult) {
/* perform your actions here*/
}
})
.addOnFailureListener(this, new OnFailureListener() {
@Override
public void onFailure(@NonNull Exception exception) {
Log.e("MainActivity", "signFailed****** ", exception);
}
});
}
의에서 onCreate 메서드 내 코드의 다음 줄을 추가하십시오 내 기능 -
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if(requestCode == 0 && resultCode == RESULT_OK) {
Uri uri = data.getData();
final StorageReference filePath = mStorage.child("Photos").child(uri.getLastPathSegment());
filePath.putFile(uri).addOnSuccessListener(new OnSuccessListener<UploadTask.TaskSnapshot>() {
@Override
public void onSuccess(UploadTask.TaskSnapshot taskSnapshot) {
// @SuppressWarnings("VisibleForTests") Uri downloadUri = taskSnapshot.getDownloadUrl();
// recognizeImage(downloadUri);
filePath.getDownloadUrl().addOnSuccessListener(new OnSuccessListener<Uri>() {
@Override
public void onSuccess(Uri uri) {
recognizeImage(uri);
}
});
}
});
}
}
를 알려하지 않는 경우
열기 Firebase Console> 왼쪽 메뉴> SIGN-IN 방법에서 인증을 클릭> 구축 이제 ANONYMOUS 을 활성화하고 응용 프로그램을 실행? 오류는 먼저 로그인해야한다고 말합니다. – Kato
나는 여전히 오류가 발생하고 있지만, 내가해야 할 일에 영향을 미치지는 않았다. 그래서, 나는 실제로 안드로이드 모니터에서 얻는 에러로도 downloadUrl()을 얻고 있습니다. 그래서 그것을 고칠 필요조차없는 것처럼 보입니다. – Kek