-
카테고리
-
세부 분야
모바일 앱 개발
-
해결 여부
미해결
Database 에서 버전이 바뀌면서 코드도 바껴서 적어 드려요
21.01.01 18:21 작성 조회수 134
0
taskSnapshot.getDownloadUrl(); 이코드가 없어졌어요<o:p></o:p>
그래서 업로드한 경로를 알려면<o:p></o:p>
Task<Uri> urlTask = uploadTask.continueWithTask(new Continuation<UploadTask.TaskSnapshot, Task<Uri>>() {
@Override
public Task<Uri> then(@NonNull Task<UploadTask.TaskSnapshot> task) throws Exception {
if (!task.isSuccessful()) {
throw task.getException();
}
// Continue with the task to get the download URL
return riversRef.getDownloadUrl();
}
}).addOnCompleteListener(new OnCompleteListener<Uri>() {
@Override
public void onComplete(@NonNull Task<Uri> task) {
if (task.isSuccessful())
{<o:p></o:p>
Toast.makeText(UploadActivity.this, "업로드 성공", Toast.LENGTH_SHORT).show();
//파이어베이스에 데이터베이스 업로드
@SuppressWarnings("VisibleForTests")
Uri downloadUrl = task.getResult();
ImageDTO imageDTO = new ImageDTO();
imageDTO.setImageUrl(downloadUrl.toString());
imageDTO.setTitle(etTitle.getText().toString());
imageDTO.setDescription(etDesc.getText().toString());
imageDTO.setUid(mAuth.getCurrentUser().getUid());
imageDTO.setUserId(mAuth.getCurrentUser().getEmail());
//image 라는 테이블에 json 형태로 담긴다.
//database.getReference().child("Profile").setValue(imageDTO);
// .push() : 데이터가 쌓인다.
database.getReference().child("Profile").push().setValue(imageDTO);
Intent intent = new Intent(getApplicationContext(), UserActivity.class);
startActivity(intent);
} else {
// Handle failures
// ...
}
}
});<o:p></o:p>
<o:p> </o:p>
Uri downloadUrl = task.getResult(); 이 코드를 쓰면 됩니다.<o:p></o:p>
답변을 작성해보세요.
답변 0