Firebase.remoteConfig => сбой с IllegalStateException (но только для небольшой части пользователей)Android

Форум для тех, кто программирует под Android
Ответить
Anonymous
 Firebase.remoteConfig => сбой с IllegalStateException (но только для небольшой части пользователей)

Сообщение Anonymous »

Я использую удаленную конфигурацию Firebase в своем приложении. При использовании этого вызова у меня возникают редкие сбои IllegalStateException (сбой происходит при доступе к экземпляру RemoteConfig):

Код: Выделить всё

Firebase.remoteConfig.fetchAndActivate().addOnCompleteListener { task ->
when (task.isSuccessful) {
true -> Log.d(APP_TAG, "Config params updated: ${task.result}")
false -> Log.e(APP_TAG, "Config params loading ERROR!")
}
}
Это трассировка стека:

Код: Выделить всё

Caused by java.lang.IllegalStateException:
at com.google.firebase.FirebaseApp.getInstance (FirebaseApp.java:179)
at com.google.firebase.remoteconfig.FirebaseRemoteConfig.getInstance (FirebaseRemoteConfig.java:81)
at com.google.firebase.remoteconfig.RemoteConfigKt.getRemoteConfig (RemoteConfig.kt:32)
at myapp.mypackage.FbRemoteConfig.fetchFreshValues (FbRemoteConfig.kt:83)
at android.app.ActivityThread.handleReceiver (ActivityThread.java:4981)
Невозможно воспроизвести на моих устройствах, работает как часы, в 100 раз из 100, в течение нескольких дней и недель.
Однако иногда происходит сбой на чужих устройствах, но разве что у ~1-2% пользователей. Я не могу понять, почему.
Типичный совет, который я нашел в Google, упоминает вызов FirebaseApp.initializeApp(this) в классе приложения, но это кажется неправильным. - он даже не упоминается ни в документации, ни в каких руководствах, и, согласно последним сообщениям stackoverlow, больше не нужно инициализировать Firebase в 2024 году для использования удаленной конфигурации. И кроме того, у меня и подавляющего большинства пользователей он работает нормально... Так что, скорее всего, это не так.
Но кроме этого я ничего не нашел... Почему получаю ли я это загадочное, редкое исключение IllegalStateException?
Это build.gradle уровня моего приложения:

Код: Выделить всё

apply plugin: 'com.google.gms.google-services'
...
dependencies {
...
implementation(platform("com.google.firebase:firebase-bom:33.4.0"))
implementation("com.google.firebase:firebase-config")
implementation("com.google.firebase:firebase-analytics")
}
Это градиент сборки уровня моего проекта:

Код: Выделить всё

...
dependencies {
...
classpath 'com.google.gms:google-services:4.4.2'
}
Я использую Gradle 8.2 и AGP 8.2.1 и kotlin 1.9.0.

Подробнее здесь: https://stackoverflow.com/questions/791 ... r-tiny-fra
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Android»