ファイルをFirebaseにアップロードしたら、そのファイルをURLにして後で使用できるように保存できますか?他のユーザが画像にアクセスできるようにFirebaseデータベースへのURLを書きたいと思います。ファイルをFirebaseにアップロードした後にファイルを取得する方法は?
私はそうのようなファイルアップロードしています:
public void uploadFile()
{
StorageReference filepath = mstorageRef.child("folder").child(filename);
Uri File= Uri.fromFile(new File(mFileName));
filepath.putFile(File).addOnSuccessListener(new OnSuccessListener<UploadTask.TaskSnapshot>() {
@Override
public void onSuccess(UploadTask.TaskSnapshot taskSnapshot)
{
Toast.makeText(MtActivity.this, "Upload Done", Toast.LENGTH_LONG).show();
}
});
}
を私は今、私はちょうど私が私のデータベースに書き込むことができURLを必要とするファイルが実際にアップロードしていることを確認しました。私はこれを行うにしようとしたときしかし:
Uri downloadUrl = taskSnapshot.getMetadata().getDownloadUrl();
それは私にエラーを与え、私はそれが何を意味するのかわからないんだけど、私はそのエラー感覚を得ることがなぜ私も知りませんThis method should only be accessed from tests or within private scope
を語りますFirebaseが提供するthis exampleに従っています。
URLを取得する新しい方法はありますか?
また、特にこのアイテムに固有のURLですか?それをデータベースに保存して後でアクセスしようとすると、私はそうすることができますか?
を).getDownloadUrl() ' –
@AnggrayudiH私はそれを試みました、そして、それは私に同じエラーメッセージを与えます。何らかの理由で、私の 'addOnSuccessListener()'メソッドの中でメソッドを呼び出せません。 –
あなたが見ているエラーに関しては、[this post](http://stackoverflow.com/q/41105586/4625829)を見たことがありますか? –