更新:我的问题现在解决了。
如何在2018年在android中上传和检索图像到firebase存储(taskSnapshot / getDownloadUrl已弃用)。
答案 0 :(得分:1)
imageFilesPath = storageReference.child("Your_collection Name" + "/"+ "Image_name"+ ".jpg");
imageFilePath.putFile(image_Uri).addOnCompleteListener(new OnCompleteListener<UploadTask.TaskSnapshot>() {
@Override
public void onComplete(@NonNull Task<UploadTask.TaskSnapshot> task) {
if (task.isSuccessful() && task != null) {
imageUrl = task.getResult().getDownloadUrl().toString();
}
}
});
答案 1 :(得分:0)
就像@globlin在this answer中说的那样:
该方法已在版本16.0.1上弃用(检查Firebase release notes),因此您必须使用
StorageReference.getDownloadUr()
如果您想在上传文件后获取它们,那么您必须检查 他们的文件here。它已经更新。
因此,您可以按照this指南了解如何在2018年完成此操作。
答案 2 :(得分:0)
最后,我得到了这个解决方案。而且工作正常。
filePath.putFile(imageUri).addOnSuccessListener(new OnSuccessListener<UploadTask.TaskSnapshot>() {
@Override
public void onSuccess(UploadTask.TaskSnapshot taskSnapshot) {
filePath.getDownloadUrl().addOnSuccessListener(new OnSuccessListener<Uri>() {
@Override
public void onSuccess(Uri uri) {
Log.d(TAG, "onSuccess: uri= "+ uri.toString());
}
});
}
});