firebase-android-sdk icon indicating copy to clipboard operation
firebase-android-sdk copied to clipboard

StrictMode policy violation: android.os.strictmode.NetworkViolation after adding firebase to the app

Open bartek977 opened this issue 5 months ago • 5 comments

[REQUIRED] Step 2: Describe your environment

  • Android Studio version: Meerkat Feature Drop | 2024.3.2
  • Firebase Component: com.google.firebase:firebase-crashlytics
  • Component version: com.google.firebase:firebase-bom:33.14.0

[REQUIRED] Step 3: Describe the problem

After adding the firebase dependencies, I can see StrictMode NetworkViolation logs. To a blank project I've added only these deps:

implementation(platform("com.google.firebase:firebase-bom:33.14.0"))
implementation("com.google.firebase:firebase-crashlytics")
implementation("com.google.firebase:firebase-analytics")

and in the logcat I can see:

StrictMode policy violation: android.os.strictmode.NetworkViolation (Ask Gemini)
                                                                                                    	at android.os.StrictMode$AndroidBlockGuardPolicy.onNetwork(StrictMode.java:1672)
                                                                                                    	at com.android.org.conscrypt.Platform.blockGuardOnNetwork(Platform.java:429)
                                                                                                    	at com.android.org.conscrypt.ConscryptEngineSocket$SSLInputStream.processDataFromSocket(ConscryptEngineSocket.java:880)
                                                                                                    	at com.android.org.conscrypt.ConscryptEngineSocket$SSLInputStream.readUntilDataAvailable(ConscryptEngineSocket.java:868)
                                                                                                    	at com.android.org.conscrypt.ConscryptEngineSocket$SSLInputStream.read(ConscryptEngineSocket.java:841)
                                                                                                    	at com.android.okhttp.okio.Okio$2.read(Okio.java:138)
                                                                                                    	at com.android.okhttp.okio.AsyncTimeout$2.read(AsyncTimeout.java:213)
                                                                                                    	at com.android.okhttp.okio.RealBufferedSource.request(RealBufferedSource.java:72)
                                                                                                    	at com.android.okhttp.okio.RealBufferedSource.require(RealBufferedSource.java:65)
                                                                                                    	at com.android.okhttp.okio.RealBufferedSource.readHexadecimalUnsignedLong(RealBufferedSource.java:271)
                                                                                                    	at com.android.okhttp.internal.http.Http1xStream$ChunkedSource.readChunkSize(Http1xStream.java:456)
                                                                                                    	at com.android.okhttp.internal.http.Http1xStream$ChunkedSource.read(Http1xStream.java:437)
                                                                                                    	at com.android.okhttp.okio.RealBufferedSource.read(RealBufferedSource.java:51)
                                                                                                    	at com.android.okhttp.okio.RealBufferedSource.exhausted(RealBufferedSource.java:61)
                                                                                                    	at com.android.okhttp.okio.GzipSource.read(GzipSource.java:101)
                                                                                                    	at com.android.okhttp.okio.RealBufferedSource$1.read(RealBufferedSource.java:372)
                                                                                                    	at sun.nio.cs.StreamDecoder.readBytes(StreamDecoder.java:291)
                                                                                                    	at sun.nio.cs.StreamDecoder.implRead(StreamDecoder.java:355)
                                                                                                    	at sun.nio.cs.StreamDecoder.read(StreamDecoder.java:181)
                                                                                                    	at java.io.InputStreamReader.read(InputStreamReader.java:177)
                                                                                                    	at java.io.BufferedReader.fill(BufferedReader.java:172)
                                                                                                    	at java.io.BufferedReader.readLine(BufferedReader.java:337)
                                                                                                    	at java.io.BufferedReader.readLine(BufferedReader.java:403)
                                                                                                    	at com.google.firebase.sessions.settings.RemoteSettingsFetcher$doConfigFetch$2.invokeSuspend(RemoteSettingsFetcher.kt:66)
                                                                                                    	at com.google.firebase.sessions.settings.RemoteSettingsFetcher$doConfigFetch$2.invoke(Unknown Source:8)
                                                                                                    	at com.google.firebase.sessions.settings.RemoteSettingsFetcher$doConfigFetch$2.invoke(Unknown Source:4)
                                                                                                    	at kotlinx.coroutines.intrinsics.UndispatchedKt.startUndispatchedOrReturn(Undispatched.kt:78)
                                                                                                    	at kotlinx.coroutines.BuildersKt__Builders_commonKt.withContext(Builders.common.kt:167)
                                                                                                    	at kotlinx.coroutines.BuildersKt.withContext(Unknown Source:1)
                                                                                                    	at com.google.firebase.sessions.settings.RemoteSettingsFetcher.doConfigFetch(RemoteSettingsFetcher.kt:53)
                                                                                                    	at com.google.firebase.sessions.settings.RemoteSettings.updateSettings(RemoteSettings.kt:101)
                                                                                                    	at com.google.firebase.sessions.settings.RemoteSettings$updateSettings$1.invokeSuspend(Unknown Source:14)
                                                                                                    	at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
                                                                                                    	at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:108)
                                                                                                    	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
                                                                                                    	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:644)
                                                                                                    	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:0)
                                                                                                    	at java.lang.Thread.run(Thread.java:1012)

bartek977 avatar May 27 '25 09:05 bartek977

I found a few problems with this issue:

  • I couldn't figure out how to label this issue, so I've labeled it for a human to triage. Hang tight.
  • This issue does not seem to follow the issue template. Make sure you provide all the required information.

google-oss-bot avatar May 27 '25 09:05 google-oss-bot

Hi @bartek977, thank you for reaching out. I was able to reproduce the issue. I'll raise this to our engineers and see what we can do here. Thanks!

lehcar09 avatar May 28 '25 10:05 lehcar09

Hi, any progress on this? We've got ANR's due to main thread I/O

Nek-12 avatar Jun 07 '25 09:06 Nek-12

Hi folks, our engineers are already working on this. Unfortunately, we cannot provide definite timeline when the fix will be release. We'll keep you posted. Thanks!

lehcar09 avatar Jun 09 '25 11:06 lehcar09

Hello!, Today I got this issue after adding Crashlytics to my project.Any update on this issue?

SanjayAIT16 avatar Jun 16 '25 13:06 SanjayAIT16

I'm also seeing this issue inside of my project, have a high ANR rate now.

StrictMode policy violation: android.os.strictmode.NetworkViolation
                                                                                                    	at android.os.StrictMode$AndroidBlockGuardPolicy.onNetwork(StrictMode.java:1610)
                                                                                                    	at com.android.org.conscrypt.Platform.blockGuardOnNetwork(Platform.java:426)
                                                                                                    	at com.android.org.conscrypt.ConscryptEngineSocket$SSLInputStream.processDataFromSocket(ConscryptEngineSocket.java:827)
                                                                                                    	at com.android.org.conscrypt.ConscryptEngineSocket$SSLInputStream.readUntilDataAvailable(ConscryptEngineSocket.java:815)
                                                                                                    	at com.android.org.conscrypt.ConscryptEngineSocket$SSLInputStream.read(ConscryptEngineSocket.java:788)
                                                                                                    	at com.android.okhttp.okio.Okio$2.read(Okio.java:138)
                                                                                                    	at com.android.okhttp.okio.AsyncTimeout$2.read(AsyncTimeout.java:213)
                                                                                                    	at com.android.okhttp.okio.RealBufferedSource.indexOf(RealBufferedSource.java:307)
                                                                                                    	at com.android.okhttp.okio.RealBufferedSource.indexOf(RealBufferedSource.java:301)
                                                                                                    	at com.android.okhttp.okio.RealBufferedSource.readUtf8LineStrict(RealBufferedSource.java:197)
                                                                                                    	at com.android.okhttp.internal.http.Http1xStream.readResponse(Http1xStream.java:188)
                                                                                                    	at com.android.okhttp.internal.http.Http1xStream.readResponseHeaders(Http1xStream.java:129)
                                                                                                    	at com.android.okhttp.internal.http.HttpEngine.readNetworkResponse(HttpEngine.java:750)
                                                                                                    	at com.android.okhttp.internal.http.HttpEngine.readResponse(HttpEngine.java:622)
                                                                                                    	at com.android.okhttp.internal.huc.HttpURLConnectionImpl.execute(HttpURLConnectionImpl.java:475)
                                                                                                    	at com.android.okhttp.internal.huc.HttpURLConnectionImpl.getResponse(HttpURLConnectionImpl.java:411)
                                                                                                    	at com.android.okhttp.internal.huc.HttpURLConnectionImpl.getResponseCode(HttpURLConnectionImpl.java:542)
                                                                                                    	at com.android.okhttp.internal.huc.DelegatingHttpsURLConnection.getResponseCode(DelegatingHttpsURLConnection.java:106)
                                                                                                    	at com.android.okhttp.internal.huc.HttpsURLConnectionImpl.getResponseCode(HttpsURLConnectionImpl.java:30)
                                                                                                    	at com.google.firebase.sessions.settings.RemoteSettingsFetcher$doConfigFetch$2.invokeSuspend(RemoteSettingsFetcher.kt:60)
                                                                                                    	at com.google.firebase.sessions.settings.RemoteSettingsFetcher$doConfigFetch$2.invoke(Unknown Source:8)
                                                                                                    	at com.google.firebase.sessions.settings.RemoteSettingsFetcher$doConfigFetch$2.invoke(Unknown Source:4)
                                                                                                    	at kotlinx.coroutines.intrinsics.UndispatchedKt.startUndispatchedOrReturn(Undispatched.kt:78)
                                                                                                    	at kotlinx.coroutines.BuildersKt__Builders_commonKt.withContext(Builders.common.kt:167)
                                                                                                    	at kotlinx.coroutines.BuildersKt.withContext(Unknown Source:1)
                                                                                                    	at com.google.firebase.sessions.settings.RemoteSettingsFetcher.doConfigFetch(RemoteSettingsFetcher.kt:53)
                                                                                                    	at com.google.firebase.sessions.settings.RemoteSettings.updateSettings(RemoteSettings.kt:101)
                                                                                                    	at com.google.firebase.sessions.settings.RemoteSettings$updateSettings$1.invokeSuspend(Unknown Source:14)
                                                                                                    	at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
                                                                                                    	at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:108)
                                                                                                    	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)
                                                                                                    	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
                                                                                                    	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:0)
                                                                                                    	at java.lang.Thread.run(Thread.java:923)

cairacshields avatar Jun 25 '25 20:06 cairacshields

Hi - I've found a temp workaround for this issue by using these specific versions in native code :

    implementation platform("com.google.firebase:firebase-bom:33.11.0")
    implementation 'com.google.firebase:firebase-crashlytics'

The version was taken from what the native code is using of the flutter lib - that did not had this issue: from the native build.gradle file of > "firebase_crashlytics: ^4.1.5" flutter lib - that has these:

  implementation platform("com.google.firebase:firebase-bom:${getRootProjectExtOrCoreProperty("FirebaseSDKVersion", firebaseCoreProject)}")
  implementation 'com.google.firebase:firebase-crashlytics'

that points to the core bom version of > "firebase_core: ^3.14.0" flutter core lib, and if you search in the core native for "FirebaseSDKVersion" - you can find FirebaseSDKVersion=33.11.0 in gradle.properties

hipersferus avatar Jun 27 '25 08:06 hipersferus

I faced the same StrictMode.NetworkViolation issue. Downgrading to firebase-bom:33.12.0 resolved it for me — the issue appears in later versions.

afinocchiaro-tg avatar Jun 30 '25 10:06 afinocchiaro-tg

I encountered the same issue, and my solution was to downgrade the Firebase BoM to version 33.12.0. The problem occurs in versions above this one.

alexfin90 avatar Jun 30 '25 10:06 alexfin90

@lehcar09 encountered the same issue, and my solution was to downgrade the Firebase BoM to version 33.12.0. The problem occurs in versions above this one.

I attach full logs

12:47:37.227 29677-29734 StrictMode D StrictMode policy violation: android.os.strictmode.NetworkViolation (Ask Gemini) at android.os.StrictMode$AndroidBlockGuardPolicy.onNetwork(StrictMode.java:1680) at com.android.org.conscrypt.Platform.blockGuardOnNetwork(Platform.java:436) at com.android.org.conscrypt.ConscryptEngineSocket$SSLOutputStream.writeInternal(ConscryptEngineSocket.java:704) at com.android.org.conscrypt.ConscryptEngineSocket$SSLOutputStream.write(ConscryptEngineSocket.java:699) at com.android.okhttp.okio.Okio$1.write(Okio.java:78) at com.android.okhttp.okio.AsyncTimeout$1.write(AsyncTimeout.java:157) at com.android.okhttp.okio.RealBufferedSink.flush(RealBufferedSink.java:222) at com.android.okhttp.internal.http.Http1xStream.finishRequest(Http1xStream.java:163) at com.android.okhttp.internal.http.HttpEngine.readNetworkResponse(HttpEngine.java:748) at com.android.okhttp.internal.http.HttpEngine.readResponse(HttpEngine.java:622) at com.android.okhttp.internal.huc.HttpURLConnectionImpl.execute(HttpURLConnectionImpl.java:475) at com.android.okhttp.internal.huc.HttpURLConnectionImpl.getResponse(HttpURLConnectionImpl.java:411) at com.android.okhttp.internal.huc.HttpURLConnectionImpl.getResponseCode(HttpURLConnectionImpl.java:542) at com.android.okhttp.internal.huc.DelegatingHttpsURLConnection.getResponseCode(DelegatingHttpsURLConnection.java:106) at com.android.okhttp.internal.huc.HttpsURLConnectionImpl.getResponseCode(HttpsURLConnectionImpl.java:30) at com.google.firebase.sessions.settings.RemoteSettingsFetcher$doConfigFetch$2.invokeSuspend(RemoteSettingsFetcher.kt:60) at com.google.firebase.sessions.settings.RemoteSettingsFetcher$doConfigFetch$2.invoke(Unknown Source:8) at com.google.firebase.sessions.settings.RemoteSettingsFetcher$doConfigFetch$2.invoke(Unknown Source:4) at kotlinx.coroutines.intrinsics.UndispatchedKt.startUndispatchedOrReturn(Undispatched.kt:43) at kotlinx.coroutines.BuildersKt__Builders_commonKt.withContext(Builders.common.kt:166) at kotlinx.coroutines.BuildersKt.withContext(Unknown Source:1) at com.google.firebase.sessions.settings.RemoteSettingsFetcher.doConfigFetch(RemoteSettingsFetcher.kt:53) at com.google.firebase.sessions.settings.RemoteSettings.updateSettings(RemoteSettings.kt:101) at com.google.firebase.sessions.settings.RemoteSettings$updateSettings$1.invokeSuspend(Unknown Source:14) at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33) at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:100) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:644) 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:0) at java.lang.Thread.run(Thread.java:1012) 12:47:37.231 29677-29734 StrictMode D StrictMode policy violation: android.os.strictmode.NetworkViolation (Ask Gemini) at android.os.StrictMode$AndroidBlockGuardPolicy.onNetwork(StrictMode.java:1680) at java.net.SocketOutputStream.socketWrite(SocketOutputStream.java:115) at java.net.SocketOutputStream.write(SocketOutputStream.java:156) at com.android.org.conscrypt.ConscryptEngineSocket$SSLOutputStream.writeToSocket(ConscryptEngineSocket.java:762) at com.android.org.conscrypt.ConscryptEngineSocket$SSLOutputStream.writeInternal(ConscryptEngineSocket.java:736) at com.android.org.conscrypt.ConscryptEngineSocket$SSLOutputStream.write(ConscryptEngineSocket.java:699) at com.android.okhttp.okio.Okio$1.write(Okio.java:78) at com.android.okhttp.okio.AsyncTimeout$1.write(AsyncTimeout.java:157) at com.android.okhttp.okio.RealBufferedSink.flush(RealBufferedSink.java:222) at com.android.okhttp.internal.http.Http1xStream.finishRequest(Http1xStream.java:163) at com.android.okhttp.internal.http.HttpEngine.readNetworkResponse(HttpEngine.java:748) at com.android.okhttp.internal.http.HttpEngine.readResponse(HttpEngine.java:622) at com.android.okhttp.internal.huc.HttpURLConnectionImpl.execute(HttpURLConnectionImpl.java:475) at com.android.okhttp.internal.huc.HttpURLConnectionImpl.getResponse(HttpURLConnectionImpl.java:411) at com.android.okhttp.internal.huc.HttpURLConnectionImpl.getResponseCode(HttpURLConnectionImpl.java:542) at com.android.okhttp.internal.huc.DelegatingHttpsURLConnection.getResponseCode(DelegatingHttpsURLConnection.java:106) at com.android.okhttp.internal.huc.HttpsURLConnectionImpl.getResponseCode(HttpsURLConnectionImpl.java:30) at com.google.firebase.sessions.settings.RemoteSettingsFetcher$doConfigFetch$2.invokeSuspend(RemoteSettingsFetcher.kt:60) at com.google.firebase.sessions.settings.RemoteSettingsFetcher$doConfigFetch$2.invoke(Unknown Source:8) at com.google.firebase.sessions.settings.RemoteSettingsFetcher$doConfigFetch$2.invoke(Unknown Source:4) at kotlinx.coroutines.intrinsics.UndispatchedKt.startUndispatchedOrReturn(Undispatched.kt:43) at kotlinx.coroutines.BuildersKt__Builders_commonKt.withContext(Builders.common.kt:166) at kotlinx.coroutines.BuildersKt.withContext(Unknown Source:1) at com.google.firebase.sessions.settings.RemoteSettingsFetcher.doConfigFetch(RemoteSettingsFetcher.kt:53) at com.google.firebase.sessions.settings.RemoteSettings.updateSettings(RemoteSettings.kt:101) at com.google.firebase.sessions.settings.RemoteSettings$updateSettings$1.invokeSuspend(Unknown Source:14) at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33) at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:100) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:644) 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:0) at java.lang.Thread.run(Thread.java:1012) 12:47:37.232 29677-29734 StrictMode D StrictMode policy violation: android.os.strictmode.NetworkViolation (Ask Gemini) at android.os.StrictMode$AndroidBlockGuardPolicy.onNetwork(StrictMode.java:1680) at com.android.org.conscrypt.Platform.blockGuardOnNetwork(Platform.java:436) at com.android.org.conscrypt.ConscryptEngineSocket$SSLInputStream.processDataFromSocket(ConscryptEngineSocket.java:874) at com.android.org.conscrypt.ConscryptEngineSocket$SSLInputStream.readUntilDataAvailable(ConscryptEngineSocket.java:862) at com.android.org.conscrypt.ConscryptEngineSocket$SSLInputStream.read(ConscryptEngineSocket.java:835) at com.android.okhttp.okio.Okio$2.read(Okio.java:138) at com.android.okhttp.okio.AsyncTimeout$2.read(AsyncTimeout.java:213) at com.android.okhttp.okio.RealBufferedSource.indexOf(RealBufferedSource.java:307) at com.android.okhttp.okio.RealBufferedSource.indexOf(RealBufferedSource.java:301) at com.android.okhttp.okio.RealBufferedSource.readUtf8LineStrict(RealBufferedSource.java:197) at com.android.okhttp.internal.http.Http1xStream.readResponse(Http1xStream.java:188) at com.android.okhttp.internal.http.Http1xStream.readResponseHeaders(Http1xStream.java:129) at com.android.okhttp.internal.http.HttpEngine.readNetworkResponse(HttpEngine.java:750) at com.android.okhttp.internal.http.HttpEngine.readResponse(HttpEngine.java:622) at com.android.okhttp.internal.huc.HttpURLConnectionImpl.execute(HttpURLConnectionImpl.java:475) at com.android.okhttp.internal.huc.HttpURLConnectionImpl.getResponse(HttpURLConnectionImpl.java:411) at com.android.okhttp.internal.huc.HttpURLConnectionImpl.getResponseCode(HttpURLConnectionImpl.java:542) at com.android.okhttp.internal.huc.DelegatingHttpsURLConnection.getResponseCode(DelegatingHttpsURLConnection.java:106) at com.android.okhttp.internal.huc.HttpsURLConnectionImpl.getResponseCode(HttpsURLConnectionImpl.java:30) at com.google.firebase.sessions.settings.RemoteSettingsFetcher$doConfigFetch$2.invokeSuspend(RemoteSettingsFetcher.kt:60) at com.google.firebase.sessions.settings.RemoteSettingsFetcher$doConfigFetch$2.invoke(Unknown Source:8) at com.google.firebase.sessions.settings.RemoteSettingsFetcher$doConfigFetch$2.invoke(Unknown Source:4) at kotlinx.coroutines.intrinsics.UndispatchedKt.startUndispatchedOrReturn(Undispatched.kt:43) at kotlinx.coroutines.BuildersKt__Builders_commonKt.withContext(Builders.common.kt:166) at kotlinx.coroutines.BuildersKt.withContext(Unknown Source:1) at com.google.firebase.sessions.settings.RemoteSettingsFetcher.doConfigFetch(RemoteSettingsFetcher.kt:53) at com.google.firebase.sessions.settings.RemoteSettings.updateSettings(RemoteSettings.kt:101) at com.google.firebase.sessions.settings.RemoteSettings$updateSettings$1.invokeSuspend(Unknown Source:14) at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33) at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:100) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:644) 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:0) at java.lang.Thread.run(Thread.java:1012) 12:47:37.234 29677-29734 StrictMode D StrictMode policy violation: android.os.strictmode.NetworkViolation (Ask Gemini) at android.os.StrictMode$AndroidBlockGuardPolicy.onNetwork(StrictMode.java:1680) at java.net.SocketInputStream.read(SocketInputStream.java:172) at java.net.SocketInputStream.read(SocketInputStream.java:143) at com.android.org.conscrypt.ConscryptEngineSocket$SSLInputStream.readFromSocket(ConscryptEngineSocket.java:983) at com.android.org.conscrypt.ConscryptEngineSocket$SSLInputStream.processDataFromSocket(ConscryptEngineSocket.java:947) at com.android.org.conscrypt.ConscryptEngineSocket$SSLInputStream.readUntilDataAvailable(ConscryptEngineSocket.java:862) at com.android.org.conscrypt.ConscryptEngineSocket$SSLInputStream.read(ConscryptEngineSocket.java:835) at com.android.okhttp.okio.Okio$2.read(Okio.java:138) at com.android.okhttp.okio.AsyncTimeout$2.read(AsyncTimeout.java:213) at com.android.okhttp.okio.RealBufferedSource.indexOf(RealBufferedSource.java:307) at com.android.okhttp.okio.RealBufferedSource.indexOf(RealBufferedSource.java:301) at com.android.okhttp.okio.RealBufferedSource.readUtf8LineStrict(RealBufferedSource.java:197) at com.android.okhttp.internal.http.Http1xStream.readResponse(Http1xStream.java:188) at com.android.okhttp.internal.http.Http1xStream.readResponseHeaders(Http1xStream.java:129) at com.android.okhttp.internal.http.HttpEngine.readNetworkResponse(HttpEngine.java:750) at com.android.okhttp.internal.http.HttpEngine.readResponse(HttpEngine.java:622) at com.android.okhttp.internal.huc.HttpURLConnectionImpl.execute(HttpURLConnectionImpl.java:475) at com.android.okhttp.internal.huc.HttpURLConnectionImpl.getResponse(HttpURLConnectionImpl.java:411) at com.android.okhttp.internal.huc.HttpURLConnectionImpl.getResponseCode(HttpURLConnectionImpl.java:542) at com.android.okhttp.internal.huc.DelegatingHttpsURLConnection.getResponseCode(DelegatingHttpsURLConnection.java:106) at com.android.okhttp.internal.huc.HttpsURLConnectionImpl.getResponseCode(HttpsURLConnectionImpl.java:30) at com.google.firebase.sessions.settings.RemoteSettingsFetcher$doConfigFetch$2.invokeSuspend(RemoteSettingsFetcher.kt:60) at com.google.firebase.sessions.settings.RemoteSettingsFetcher$doConfigFetch$2.invoke(Unknown Source:8) at com.google.firebase.sessions.settings.RemoteSettingsFetcher$doConfigFetch$2.invoke(Unknown Source:4) at kotlinx.coroutines.intrinsics.UndispatchedKt.startUndispatchedOrReturn(Undispatched.kt:43) at kotlinx.coroutines.BuildersKt__Builders_commonKt.withContext(Builders.common.kt:166) at kotlinx.coroutines.BuildersKt.withContext(Unknown Source:1) at com.google.firebase.sessions.settings.RemoteSettingsFetcher.doConfigFetch(RemoteSettingsFetcher.kt:53) at com.google.firebase.sessions.settings.RemoteSettings.updateSettings(RemoteSettings.kt:101) at com.google.firebase.sessions.settings.RemoteSettings$updateSettings$1.invokeSuspend(Unknown Source:14) at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33) at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:100) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:644) 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:0) at java.lang.Thread.run(Thread.java:1012) 12:47:37.636 29677-29734 StrictMode D StrictMode policy violation: android.os.strictmode.NetworkViolation (Ask Gemini) at android.os.StrictMode$AndroidBlockGuardPolicy.onNetwork(StrictMode.java:1680) at com.android.org.conscrypt.Platform.blockGuardOnNetwork(Platform.java:436) at com.android.org.conscrypt.ConscryptEngineSocket$SSLInputStream.processDataFromSocket(ConscryptEngineSocket.java:874) at com.android.org.conscrypt.ConscryptEngineSocket$SSLInputStream.readUntilDataAvailable(ConscryptEngineSocket.java:862) at com.android.org.conscrypt.ConscryptEngineSocket$SSLInputStream.read(ConscryptEngineSocket.java:835) at com.android.okhttp.okio.Okio$2.read(Okio.java:138) at com.android.okhttp.okio.AsyncTimeout$2.read(AsyncTimeout.java:213) at com.android.okhttp.okio.RealBufferedSource.request(RealBufferedSource.java:72) at com.android.okhttp.okio.RealBufferedSource.require(RealBufferedSource.java:65) at com.android.okhttp.okio.RealBufferedSource.readHexadecimalUnsignedLong(RealBufferedSource.java:271) at com.android.okhttp.internal.http.Http1xStream$ChunkedSource.readChunkSize(Http1xStream.java:456) at com.android.okhttp.internal.http.Http1xStream$ChunkedSource.read(Http1xStream.java:437) at com.android.okhttp.okio.RealBufferedSource.read(RealBufferedSource.java:51) at com.android.okhttp.okio.RealBufferedSource.exhausted(RealBufferedSource.java:61) at com.android.okhttp.okio.InflaterSource.refill(InflaterSource.java:103) at com.android.okhttp.okio.InflaterSource.read(InflaterSource.java:64) at com.android.okhttp.okio.GzipSource.read(GzipSource.java:82) at com.android.okhttp.okio.RealBufferedSource$1.read(RealBufferedSource.java:372) at sun.nio.cs.StreamDecoder.readBytes(StreamDecoder.java:291) at sun.nio.cs.StreamDecoder.implRead(StreamDecoder.java:355) at sun.nio.cs.StreamDecoder.read(StreamDecoder.java:181) at java.io.InputStreamReader.read(InputStreamReader.java:180) at java.io.BufferedReader.fill(BufferedReader.java:172) at java.io.BufferedReader.readLine(BufferedReader.java:337) at java.io.BufferedReader.readLine(BufferedReader.java:403) at com.google.firebase.sessions.settings.RemoteSettingsFetcher$doConfigFetch$2.invokeSuspend(RemoteSettingsFetcher.kt:66) at com.google.firebase.sessions.settings.RemoteSettingsFetcher$doConfigFetch$2.invoke(Unknown Source:8) at com.google.firebase.sessions.settings.RemoteSettingsFetcher$doConfigFetch$2.invoke(Unknown Source:4) at kotlinx.coroutines.intrinsics.UndispatchedKt.startUndispatchedOrReturn(Undispatched.kt:43) at kotlinx.coroutines.BuildersKt__Builders_commonKt.withContext(Builders.common.kt:166) at kotlinx.coroutines.BuildersKt.withContext(Unknown Source:1) at com.google.firebase.sessions.settings.RemoteSettingsFetcher.doConfigFetch(RemoteSettingsFetcher.kt:53) at com.google.firebase.sessions.settings.RemoteSettings.updateSettings(RemoteSettings.kt:101) at com.google.firebase.sessions.settings.RemoteSettings$updateSettings$1.invokeSuspend(Unknown Source:14) at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33) at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:100) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:644) 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:0) at java.lang.Thread.run(Thread.java:1012) 12:47:37.637 29677-29734 StrictMode D StrictMode policy violation: android.os.strictmode.NetworkViolation (Ask Gemini) at android.os.StrictMode$AndroidBlockGuardPolicy.onNetwork(StrictMode.java:1680) at com.android.org.conscrypt.Platform.blockGuardOnNetwork(Platform.java:436) at com.android.org.conscrypt.ConscryptEngineSocket$SSLInputStream.processDataFromSocket(ConscryptEngineSocket.java:874) at com.android.org.conscrypt.ConscryptEngineSocket$SSLInputStream.readUntilDataAvailable(ConscryptEngineSocket.java:862) at com.android.org.conscrypt.ConscryptEngineSocket$SSLInputStream.read(ConscryptEngineSocket.java:835) at com.android.okhttp.okio.Okio$2.read(Okio.java:138) at com.android.okhttp.okio.AsyncTimeout$2.read(AsyncTimeout.java:213) at com.android.okhttp.okio.RealBufferedSource.request(RealBufferedSource.java:72) at com.android.okhttp.okio.RealBufferedSource.require(RealBufferedSource.java:65) at com.android.okhttp.okio.RealBufferedSource.readHexadecimalUnsignedLong(RealBufferedSource.java:271) at com.android.okhttp.internal.http.Http1xStream$ChunkedSource.readChunkSize(Http1xStream.java:456) at com.android.okhttp.internal.http.Http1xStream$ChunkedSource.read(Http1xStream.java:437) at com.android.okhttp.okio.RealBufferedSource.read(RealBufferedSource.java:51) at com.android.okhttp.okio.RealBufferedSource.exhausted(RealBufferedSource.java:61) at com.android.okhttp.okio.GzipSource.read(GzipSource.java:101) at com.android.okhttp.okio.RealBufferedSource$1.read(RealBufferedSource.java:372) at sun.nio.cs.StreamDecoder.readBytes(StreamDecoder.java:291) at sun.nio.cs.StreamDecoder.implRead(StreamDecoder.java:355) at sun.nio.cs.StreamDecoder.read(StreamDecoder.java:181) at java.io.InputStreamReader.read(InputStreamReader.java:180) at java.io.BufferedReader.fill(BufferedReader.java:172) at java.io.BufferedReader.readLine(BufferedReader.java:337) at java.io.BufferedReader.readLine(BufferedReader.java:403) at com.google.firebase.sessions.settings.RemoteSettingsFetcher$doConfigFetch$2.invokeSuspend(RemoteSettingsFetcher.kt:66) at com.google.firebase.sessions.settings.RemoteSettingsFetcher$doConfigFetch$2.invoke(Unknown Source:8) at com.google.firebase.sessions.settings.RemoteSettingsFetcher$doConfigFetch$2.invoke(Unknown Source:4) at kotlinx.coroutines.intrinsics.UndispatchedKt.startUndispatchedOrReturn(Undispatched.kt:43) at kotlinx.coroutines.BuildersKt__Builders_commonKt.withContext(Builders.common.kt:166) at kotlinx.coroutines.BuildersKt.withContext(Unknown Source:1) at com.google.firebase.sessions.settings.RemoteSettingsFetcher.doConfigFetch(RemoteSettingsFetcher.kt:53) at com.google.firebase.sessions.settings.RemoteSettings.updateSettings(RemoteSettings.kt:101) at com.google.firebase.sessions.settings.RemoteSettings$updateSettings$1.invokeSuspend(Unknown Source:14) at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33) at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:100) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:644) 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:0) at java.lang.Thread.run(Thread.java:1012)

alexfin90 avatar Jun 30 '25 10:06 alexfin90

Hi folks, our engineers are already working on this. Unfortunately, we cannot provide definite timeline when the fix will be release. We'll keep you posted. Thanks!

any updates about the issue?

afinocchiaro-tg avatar Jul 08 '25 14:07 afinocchiaro-tg

Can confirm this happens with the already mentioned 33.14.0 firebase bom

n0m0r3pa1n avatar Jul 09 '25 06:07 n0m0r3pa1n

This was fixed in a dependency of Crashlytics. Please either upgrade Crashlytics or the Firebase BoM to the latest version. If you run into any other strict mode violations, feel free to open a new issue

mrober avatar Jul 23 '25 12:07 mrober

This was fixed in a dependency of Crashlytics. Please either upgrade Crashlytics or the Firebase BoM to the latest version. If you run into any other strict mode violations, feel free to open a new issue

Hi @mrober thank you so much for the resolution. I will do some test on new firebase BoM version. I' am curious to see the PR of the resolution could you share the fix is it possible?

afinocchiaro-tg avatar Jul 23 '25 13:07 afinocchiaro-tg

I confirm than strict mode warning in no more visible so the issue is correctly closed

afinocchiaro-tg avatar Jul 23 '25 13:07 afinocchiaro-tg