Comment faire pour obtenir l'URL de Firebase de Stockage getDownloadURL

Je vais essayer d'obtenir le "long terme persistant lien de téléchargement" aux fichiers dans notre Firebase seau de rangement.
J'ai changé les permissions de ce

service firebase.storage {
  match /b/project-xxx.appspot.com/o {
    match /{allPaths=**} {
      allow read, write;
    }
  }
}

Et mon javacode ressemble à ceci:

private String niceLink (String date){
    String link;
    //Points to the root reference
    StorageReference storageRef = FirebaseStorage.getInstance().getReference();
    StorageReference dateRef = storageRef.child("/" + date+ ".csv");
    link = dateRef.getDownloadUrl().toString();
    return link;
}

Lorsque j'exécute ce que je obtenir de l'uri lien qui ressemble à quelque chose comme
[email protected]

Question 1. Puis-je de cette obtenir le lien de téléchargement: https://firebasestorage.googleapis.com/v0/b/project-xxxx.appspot.com/o/20-5-2016.csv?alt=media&token=b5d45a7f-3ab7-4f9b-b661-3a2187adxxxx

En essayant d'obtenir le lien ci-dessus j'ai changé la dernière ligne avant mon retour, comme ceci:

private String niceLink (String date){
    String link;
    //Points to the root reference
    StorageReference storageRef = FirebaseStorage.getInstance().getReference();
    StorageReference dateRef = storageRef.child("/" + date+ ".csv");
    link = dateRef.getDownloadUrl().getResult().toString();
    return link;
}

Mais de cette façon, j'obtiens une erreur 403, et de l'application crash. La console me dit que c'est bc utilisateur n'est pas connecté /auth.
"Veuillez vous connecter avant de demander de l'jeton"

La Question 2. Comment puis-je résoudre ce problème?

OriginalL'auteur Jonathan Fager | 2016-05-22