Я пытаюсь загрузить файлы в свое хранилище Firebase, используя Kotlin, но получаю эту ошибку:
E / StorageUtil: ошибка при получении токена java .util.concurrent.ExecutionException : com.google.firebase.internal.api.FirebaseNoSignedInUserException: Пожалуйста, войдите в систему, прежде чем пытаться получить токен.
Я хочу загрузить все файлы в каталоге, поэтому я обхожу этот каталог и загружаю каждый файл внутри него
Это мой код:
dir.walk().forEach {
if (!it.isDirectory){
var childRef = storageRef.child("user_downloads/${it.name}")
var fileuri = Uri.fromFile(it)
var uploadTask = childRef.putFile(fileuri)
val urlTask = uploadTask.continueWithTask { task ->
if (!task.isSuccessful) {
task.exception?.let {
throw it
}
}
childRef.downloadUrl
}.addOnCompleteListener { task ->
if (task.isSuccessful) {
val downloadUri = task.result
urlArray.add(downloadUri.toString())
} else {
//do nothing
}
}
}
}
Я уже объявил ссылку на хранилище:
var storage = FirebaseStorage.getInstance("gs://fir-c7344.appspot.com/")
var storageRef = storage.reference
И это мои правила пожарной базы:
service firebase.storage {
match /b/fir-c7344.appspot.com/o {
match /{allPaths=**} {
allow read, write;
}
}
}
Я не хочу входить в систему для загрузки файлов, что я могу сделать?