-
Notifications
You must be signed in to change notification settings - Fork 652
Open
Description
[REQUIRED] Describe your environment
- Android Studio version: Build #AI-251.26094.121.2513.14007798, built on August 28, 2025
- Firebase Component: crashlytics&analytics&config&messaging&firebase-core
- Component version: "34.2.0" (FirebaseBOM)
[REQUIRED] Step 3: Describe the problem
Fatal Exception: java.io.IOException: Invalid argument
at java.io.UnixFileSystem.canonicalize0(UnixFileSystem.java)
at java.io.UnixFileSystem.canonicalize0(UnixFileSystem.java:245)
at java.io.UnixFileSystem.canonicalize(UnixFileSystem.java:192)
at java.io.File.getCanonicalPath(File.java:616)
at java.io.File.getCanonicalFile(File.java:652)
at androidx.datastore.core.FileStorage.createConnection(FileStorage.kt:48)
at androidx.datastore.core.DataStoreImpl$storageConnectionDelegate$1.invoke(DataStoreImpl.kt:181)
at androidx.datastore.core.DataStoreImpl$storageConnectionDelegate$1.invoke(DataStoreImpl.kt:180)
at kotlin.SynchronizedLazyImpl.getValue(LazyJVM.kt:83)
at androidx.datastore.core.DataStoreImpl.getStorageConnection$datastore_core_release(DataStoreImpl.kt:183)
at androidx.datastore.core.DataStoreImpl$coordinator$2.invoke(DataStoreImpl.kt:184)
at androidx.datastore.core.DataStoreImpl$coordinator$2.invoke(DataStoreImpl.kt:184)
at kotlin.SynchronizedLazyImpl.getValue(LazyJVM.kt:83)
at androidx.datastore.core.DataStoreImpl.getCoordinator(DataStoreImpl.kt:184)
at androidx.datastore.core.DataStoreImpl.readAndInitOrPropagateAndThrowFailure(DataStoreImpl.kt:264)
at androidx.datastore.core.DataStoreImpl.access$readAndInitOrPropagateAndThrowFailure(DataStoreImpl.kt:48)
at androidx.datastore.core.DataStoreImpl$readState$2.invokeSuspend(DataStoreImpl.kt:218)
at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:101)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1156)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:651)
at com.google.firebase.concurrent.CustomThreadFactory.lambda$newThread$0$com-google-firebase-concurrent-CustomThreadFactory(CustomThreadFactory.java:47)
at com.google.firebase.concurrent.CustomThreadFactory$$ExternalSyntheticLambda0.run(D8$$SyntheticClass)
at java.lang.Thread.run(Thread.java:1119)
Relevant Code:
private fun initFirebaseConfig() {
try {
FirebaseApp.initializeApp(this)
val remoteConfig: FirebaseRemoteConfig = Firebase.remoteConfig
val configSettings = remoteConfigSettings {
minimumFetchIntervalInSeconds = 3600
}
remoteConfig.setConfigSettingsAsync(configSettings)
remoteConfig.setDefaultsAsync(R.xml.remote_config_defaults)
remoteConfig.addOnConfigUpdateListener(object : ConfigUpdateListener {
override fun onUpdate(configUpdate : ConfigUpdate) {
MyLog.e("remoteConfig", "Updated keys: " + configUpdate.updatedKeys);
if (configUpdate.updatedKeys.contains("ssl_pinning_enabled")) {
remoteConfig.activate().addOnCompleteListener {
MyDataStore.setSslPinningEnabled(remoteConfig.getBoolean("ssl_pinning_enabled"))
}
}
}
override fun onError(error : FirebaseRemoteConfigException) {
MyLog.e("remoteConfig", "Config update error with code: " + error.code+" "+ error)
}
})
MyDataStore.setSslPinningEnabled(remoteConfig.getBoolean("ssl_pinning_enabled"))
MyLog.e("ssl_pinning_enabled", remoteConfig.getBoolean("ssl_pinning_enabled").toString())
} catch (e: Throwable){
// MyLog.e("Firebase error: $e")
}
}