Java Firebase存储“;检索长期存在的下载URL“;现在不推荐使用getDownloadUrl()
更新到后,此Java Firebase存储“;检索长期存在的下载URL“;现在不推荐使用getDownloadUrl(),java,android,firebase,firebase-storage,Java,Android,Firebase,Firebase Storage,更新到后,此getDownloadUrl()方法显示已弃用 'com.google.firebase:firebase存储:15.0.2' 在官方网站上没有别的方法可以实现url,那么有什么方法可以实现url的非弃用方式呢 /** @deprecated */ @Deprecated @Nullable public Uri getDownloadUrl() { StorageMetadata var1; return (var1 = this.getMetadata()) !=
getDownloadUrl()
方法显示已弃用
'com.google.firebase:firebase存储:15.0.2'
在官方网站上没有别的方法可以实现url,那么有什么方法可以实现url的非弃用方式呢
/** @deprecated */
@Deprecated
@Nullable
public Uri getDownloadUrl() {
StorageMetadata var1;
return (var1 = this.getMetadata()) != null ? var1.getDownloadUrl() : null;
}
}
文件中说:
StorageMetadata
类的getDownloadUrl()
和getDownloadUrl()
方法现在已不推荐使用。使用StorageReference
中的getDownloadUrl()
因此,您需要使用StorageReference
public任务getDownloadUrl()
使用可撤销令牌异步检索长期存在的下载URL。这可以用于与其他人共享文件,但如果需要,开发人员可以在Firebase控制台中撤销
更多信息请点击此处:
final-StorageReference filePath=mImageStore.child(“profile_-images”).child(“full_-images”).child(userId+”.jpg”);
filePath.getDownloadUrl().addOnSuccessListener(新OnSuccessListener()){
@凌驾
成功时的公共无效(Uri){
//霍奇拉德位图
上传位图(uri.toString());
}
});强文本
或
final UploadTask UploadTask=thumb\u file.putBytes(thumb\u bite);
uploadTask.addOnSuccessListener(新的OnSuccessListener(){
@凌驾
成功时公共无效(UploadTask.TaskSnapshot TaskSnapshot){
//Url负载
taskSnapshot.getStorage().getDownloadUrl().addOnSuccessListener(新OnSuccessListener()){
@凌驾
成功时的公共无效(Uri){
Map imageUrls=新建HashMap();
放置(“图像”,fullImageUrl);
put(“thumb_image”,uri.toString());
//在数据库中
mAlarmsDatabaseReference.updateChildren(ImageURL).addOnCompleteListener(新的OnCompleteListener(){
@凌驾
未完成的公共void(@NonNull任务){
//Progressbar beende+Bild wieder Anzigen
progressBar.setVisibility(View.GONE);
circleProfilePicture.setVisibility(View.VISIBLE);
if(task.issusccessful()){
Toast.makeText(SettingsActivity.this,getResources().getString(R.string.ProfilbildUpdate),Toast.LENGTH\u SHORT.show();
}否则{
Toast.makeText(SettingsActivity.this,“FAILED”,Toast.LENGTH_SHORT.show();
}
}
});
}
});
}
});
final UploadTask UploadTask=thumb\u file.putBytes(thumb\u-bite);
uploadTask.addOnSuccessListener(新的OnSuccessListener(){
@凌驾
成功时公共无效(UploadTask.TaskSnapshot TaskSnapshot){
//Url已加载
taskSnapshot.getStorage().getDownloadUrl().addOnSuccessListener(新OnSuccessListener()){
@凌驾
成功时的公共无效(Uri){
Map imageUrls=新建HashMap();
放置(“图像”,fullImageUrl);
put(“thumb_image”,uri.toString());
//在数据库中
mAlarmsDatabaseReference.updateChildren(ImageURL).addOnCompleteListener(新的OnCompleteListener(){
@凌驾
未完成的公共void(@NonNull任务){
//Progressbar beende+Bild wieder Anzigen
progressBar.setVisibility(View.GONE);
circleProfilePicture.setVisibility(View.VISIBLE);
if(task.issusccessful()){
Toast.makeText(SettingsActivity.this,getResources().getString(R.string.ProfilbildUpdate),Toast.LENGTH\u SHORT.show();
}否则{
Toast.makeText(SettingsActivity.this,“FAILED”,Toast.LENGTH_SHORT.show();
}
}
});
}
});
}
});
能否具体说明您使用的firebase存储的版本?我在15.0.0中的StorageReference中看不到这一点。更新了问题。您能否共享指向表示其已弃用的文档的链接。还有一个关于如何在存储参考中使用getDownloadUrl的示例,这里有说明,谢谢!您可以使用tasksnashot.getStorage().getDownloadUrl()
从任务中检索StorageReference。请编辑您的答案。格式化代码块并添加一些说明。其他明智的回答可能会被版主删除。
final StorageReference filePath = mImageStore.child("profile_images").child("full_image").child(userId + ".jpg");
filePath.getDownloadUrl().addOnSuccessListener(new OnSuccessListener<Uri>() {
@Override
public void onSuccess(Uri uri) {
//Bitmap hochladen
uploadBitMap(uri.toString());
}
});strong text
final UploadTask uploadTask = thumb_file.putBytes(thumb_bite);
uploadTask.addOnSuccessListener(new OnSuccessListener<UploadTask.TaskSnapshot>() {
@Override
public void onSuccess(UploadTask.TaskSnapshot taskSnapshot) {
//Url laden
taskSnapshot.getStorage().getDownloadUrl().addOnSuccessListener(new OnSuccessListener<Uri>() {
@Override
public void onSuccess(Uri uri) {
Map imageUrls = new HashMap();
imageUrls.put("image", fullImageUrl);
imageUrls.put("thumb_image", uri.toString());
//In database
mAlarmsDatabaseReference.updateChildren(imageUrls).addOnCompleteListener(new OnCompleteListener<Void>() {
@Override
public void onComplete(@NonNull Task<Void> task) {
//Progressbar beende + Bild wieder anzeigen
progressBar.setVisibility(View.GONE);
circleProfilePicture.setVisibility(View.VISIBLE);
if(task.isSuccessful()){
Toast.makeText(SettingsActivity.this, getResources().getString(R.string.ProfilbildUpdate), Toast.LENGTH_SHORT).show();
}else{
Toast.makeText(SettingsActivity.this, "FAILED", Toast.LENGTH_SHORT).show();
}
}
});
}
});
}
});
//Url laden
taskSnapshot.getStorage().getDownloadUrl().addOnSuccessListener(new OnSuccessListener<Uri>() {
@Override
public void onSuccess(Uri uri) {
Map imageUrls = new HashMap();
imageUrls.put("image", fullImageUrl);
imageUrls.put("thumb_image", uri.toString());
//In database
mAlarmsDatabaseReference.updateChildren(imageUrls).addOnCompleteListener(new OnCompleteListener<Void>() {
@Override
public void onComplete(@NonNull Task<Void> task) {
//Progressbar beende + Bild wieder anzeigen
progressBar.setVisibility(View.GONE);
circleProfilePicture.setVisibility(View.VISIBLE);
if(task.isSuccessful()){
Toast.makeText(SettingsActivity.this, getResources().getString(R.string.ProfilbildUpdate), Toast.LENGTH_SHORT).show();
}else{
Toast.makeText(SettingsActivity.this, "FAILED", Toast.LENGTH_SHORT).show();
}
}
});
}
});
}
});