Нарушение политики StrictMode: android.os.strictmode.NonSdkApiUsedViolation: Lcom / android / org / Sovrypt / ConscryptEngineSocket; - ›setHostname (

У меня следующая ошибка в Google Play перед публикацией приложения. Это не предупреждение, а ошибка. Я вижу предупреждения с похожей трассировкой стека. Я не уверен, будет ли приложение отклонено из-за этого, потому что сводка отчета о предварительном запуске сбивает с толку. В нем говорится, что нет проблем. Но при стабильности он показывает предупреждения и ошибки при совместимости с Android. Похоже, это вызвано какой-то библиотекой, используемой response-native (из некоторых похожих сообщений это похоже на okhttp), но я не уверен, что означает эта трассировка.

Я очень новичок в системе реагирования и не знаю, как это решить. Я не мог найти никакого решения, просто несколько похожих сообщений, но никаких решений. Выпуск нашего приложения завис из-за этой проблемы. Любая помощь будет принята с благодарностью

Я обнаружил, что изменение на okhttp3 3.12.13 может исправить ошибку https://square.github.io/okhttp/changelog_3x/


person Manish Haldankar    schedule 05.05.2021    source источник
comment
Спасибо @Bink. Консоль Google Play подчеркнула, что ошибку необходимо исправить, прежде чем переходить к продукту. Есть 2 ошибки и 10 предупреждений. Тот, что выше, отмечен как ошибка   -  person Bink    schedule 06.05.2021
comment
Понятно. У меня много нарушений политики StrictMode для моего собственного приложения, но ни одно из них не мешало мне опубликовать. Возможно, это проблема OkHttp, как вы заметили. Я не использую React Native, но это похоже на то, что можно решить, обновив до последней версии, если вы еще этого не сделали.   -  person Manish Haldankar    schedule 07.05.2021
comment
@ManishHaldankar У меня такая же проблема с RN. Удалось ли вам решить эту проблему?   -  person Bink    schedule 07.05.2021
comment
У меня такая же проблема в приложении Flutter. Есть ли обновления по этому поводу?   -  person Newoda    schedule 31.05.2021
comment
@ManishHaldankar, ваше приложение было отклонено из-за этого? У меня аналогичная проблема, но в приложении не обнаружено ни одной проблемы. так что проверял предварительный отчет и наткнулся здесь. Приложение было отклонено из-за сбоя, с которым они столкнулись, но не могло воспроизводиться на всех доступных устройствах.   -  person Denis Gordin    schedule 03.06.2021
comment
Нарушение политики StrictMode: android.os.strictmode.NonSdkApiUsedViolation: Lcom / android / org / Sovrypt / ConscryptEngineSocket; - ›setHostname (Ljava / lang / String;) V на android.os.StrictMode.lambda $ static $ 1 (StrictMode.java: 416) в android.os .- $$ Lambda $ StrictMode $ lu9ekkHJ2HMz0jd3F8K8MnhenxQ.accept (Неизвестный источник: 2) в java.lang.Class.getDeclaredMethodInternal (собственный метод) в java.lang.Class.getPublicMethod.java: в java.lang.Class.getMethod (Class.java:2066) в java.lang.Class.getMethod (Class.java:1693) в okhttp3.internal.platform.OptionalMethod.getPublicMethod (OptionalMethod.java:164) в okhttp3. internal.platform.OptionalMethod.getMethod (OptionalMethod.java:149) по адресу okhttp3.internal.platform.OptionalMethod.invokeOptional (OptionalMethod.java:66) по адресу okhttp3.internal.platform.OptionalMethod.invokeMethod. .internal.platform.AndroidPlatform.configureTlsExtensions (AndroidPlatform.java:123) по адресу okhttp3.internal.connection. RealConnection.connectTls (RealConnection.java:314) на okhttp3.internal.connection.RealConnection.establishProtocol (RealConnection.java:283) на okhttp3.internal.connection.RealConnection.connect (RealConnection.java:168) на okhttp3.internal. .StreamAllocation.findConnection (StreamAllocation.java:257) по адресу okhttp3.internal.connection.StreamAllocation.findHealthyConnection (StreamAllocation.java:135) по адресу okhttp3.internal.connection.StreamAllocation.new3.internal. connection.ConnectInterceptor.intercept (ConnectInterceptor.java:42) на okhttp3.internal.http.RealInterceptorChain.proceed (RealInterceptorChain.java:147) на okhttp3.internal.http.RealInterceptorChain.proceedhttp: // okhttp3.internal.http.RealInterceptorChain.proceedahttp: // okhttp3. .cache.CacheInterceptor.intercept (CacheInterceptor.java:93) в okhttp3.internal.http.RealInterceptorChain.proceed (RealInterceptorChain.java:147) в okhttp3.internal.http.RealInterceptorChain.java:93 okhttp3.internal.http.BridgeInterceptor.intercept (BridgeInterceptor.java:93) по адресу okhttp3.internal.http.RealInterceptorChain.proceed (RealInterceptorChain.java:147) по адресу okhttp3.internal.http.RetryAndopceptorCceptorChain: на okhttp3.internal.http.RealInterceptorChain.proceed (RealInterceptorChain.java:147) на okhttp3.internal.http.RealInterceptorChain.proceed (RealInterceptorChain.java:121) на okhttp3.RealPonseall.get RealCall $ AsyncCall.execute (RealCall.java:200) на okhttp3.internal.NamedRunnable.run (NamedRunnable.java:32) на java.util.concurrent.ThreadPoolExecutor.runWorker (ThreadPoolExecutor.java:1167) .ThreadPoolExecutor $ Worker.run (ThreadPoolExecutor.java:641) в java.lang.Thread.run (Thread.java:923)   -  person sanister    schedule 22.07.2021


Ответы (1)


В android / app / build.gradle добавьте следующие две строки

Тем не менее, все еще есть некоторые предупреждения, но, по крайней мере, нет ошибок.

implementation("com.squareup.okhttp3:okhttp:3.12.13")
implementation("com.squareup.okhttp3:okhttp-urlconnection:3.12.13")

Хотя вы захотите попытаться решить эту проблему, я не верю, что это помешает публикации вашего приложения.

person Edward Hsueh    schedule 08.06.2021