После недавнего обновления приложения для Android я столкнулся с проблемой ANR и сбоем, который в основном появляется на устройствах Huawei под управлением Android 8. (Мне удалось воспроизвести ANR на Honor 7x, Android 8.0).
- Согласно журналам консоли Google Play, сбой происходит только на Android 8.1 и на 93% на устройствах Huawei.
- С другой стороны, ANR (опять же в основном на устройствах Huawei) не появляется на Android 8.1 (как и вышеупомянутый сбой), но почти исключительно на Android 8.0.
Две проблемы, похоже, связаны -Я предполагаю, что причина та же, но с разными результатами на Android 8.0 и Android 8.1.
Относительно причины :
- Недавно появилось видеообъявлениеБиблиотека (https://www.teads.tv/) была добавлена в приложение, и я думаю, что это вызывает проблемы.
- Без загрузки этих объявлений не происходит сбоев.
Однако я не смог найти ничего, связанного с этимподать в суд на интернет.Мне интересно, если что-то можно сделать с этим, так как у меня нет доступа к библиотеке и понятия не имею, почему это происходит почти только на устройствах Huawei.
Я также связываюсь с авторамибиблиотека видеообъявлений, но, возможно, кто-то сталкивается / решил подобные проблемы.
Журнал консоли Android 8.1-Crash
java.lang.RuntimeException:
at com.android.org.conscrypt.ConscryptFileDescriptorSocket.newSsl (ConscryptFileDescriptorSocket.java:161)
at com.android.org.conscrypt.ConscryptFileDescriptorSocket.<init> (ConscryptFileDescriptorSocket.java:152)
at com.android.org.conscrypt.OpenSSLSocketFactoryImpl.createSocket (OpenSSLSocketFactoryImpl.java:155)
at okhttp3.internal.connection.RealConnection.connectTls (RealConnection.java:307)
at okhttp3.internal.connection.RealConnection.establishProtocol (RealConnection.java:282)
at okhttp3.internal.connection.RealConnection.connect (RealConnection.java:167)
at okhttp3.internal.connection.StreamAllocation.findConnection (StreamAllocation.java:257)
at okhttp3.internal.connection.StreamAllocation.findHealthyConnection (StreamAllocation.java:135)
at okhttp3.internal.connection.StreamAllocation.newStream (StreamAllocation.java:114)
at okhttp3.internal.connection.ConnectInterceptor.intercept (ConnectInterceptor.java:42)
at okhttp3.internal.http.RealInterceptorChain.proceed (RealInterceptorChain.java:147)
at okhttp3.internal.http.RealInterceptorChain.proceed (RealInterceptorChain.java:121)
at okhttp3.internal.cache.CacheInterceptor.intercept (CacheInterceptor.java:93)
at okhttp3.internal.http.RealInterceptorChain.proceed (RealInterceptorChain.java:147)
at okhttp3.internal.http.RealInterceptorChain.proceed (RealInterceptorChain.java:121)
at okhttp3.internal.http.BridgeInterceptor.intercept (BridgeInterceptor.java:93)
at okhttp3.internal.http.RealInterceptorChain.proceed (RealInterceptorChain.java:147)
at okhttp3.internal.http.RetryAndFollowUpInterceptor.intercept (RetryAndFollowUpInterceptor.java:126)
at okhttp3.internal.http.RealInterceptorChain.proceed (RealInterceptorChain.java:147)
at okhttp3.internal.http.RealInterceptorChain.proceed (RealInterceptorChain.java:121)
at okhttp3.RealCall.getResponseWithInterceptorChain (RealCall.java:200)
at okhttp3.RealCall$AsyncCall.execute (RealCall.java:147)
at okhttp3.internal.NamedRunnable.run (NamedRunnable.java:32)
at java.util.concurrent.ThreadPoolExecutor.runWorker (ThreadPoolExecutor.java:1162)
at java.util.concurrent.ThreadPoolExecutor$Worker.run (ThreadPoolExecutor.java:636)
at java.lang.Thread.run (Thread.java:784)
Caused by: javax.net.ssl.SSLException:
at com.android.org.conscrypt.NativeCrypto.SSL_new (NativeCrypto.java)
at com.android.org.conscrypt.SslWrapper.newInstance (SslWrapper.java:58)
at com.android.org.c`enter code here`onscrypt.ConscryptFileDescriptorSocket.newSsl (ConscryptFileDescriptorSocket.java:159)
at com.android.org.conscrypt.ConscryptFileDescriptorSocket.<init> (ConscryptFileDescriptorSocket.java:152)
at com.android.org`enter code here`.conscrypt.OpenSSLSocketFactoryImpl.createSocket (OpenSSLSocketFactoryImpl.java:155)
at okhttp3.internal.connection.RealConnection.connectTls (RealConnection.java:307)
at okhttp3.internal.connection.RealConnection.establishProtocol (RealConnection.java:282)
at okhttp3.internal.connection.RealConnection.connect (RealConnection.java:167)
at okhttp3.internal.connection.StreamAllocation.findConnection (StreamAllocation.java:257)
at okhttp3.internal.connection.StreamAllocation.findHealthyConnection (StreamAllocation.java:135)
at okhttp3.internal.connection.StreamAllocation.newStream (StreamAllocation.java:114)
at okhttp3.internal.connection.ConnectInterceptor.intercept (ConnectInterceptor.java:42)
at okhttp3.internal.http.RealInterceptorChain.proceed (RealInterceptorChain.java:147)
at okhttp3.internal.http.RealInterceptorChain.proceed (RealInterceptorChain.java:121)
at okhttp3.internal.cache.CacheInterceptor.intercept (CacheInterceptor.java:93)
at okhttp3.internal.http.RealInterceptorChain.proceed (RealInterceptorChain.java:147)
at okhttp3.internal.http.RealInterceptorChain.proceed (RealInterceptorChain.java:121)
at okhttp3.internal.http.BridgeInterceptor.intercept (BridgeInterceptor.java:93)
at okhttp3.internal.http.RealInterceptorChain.proceed (RealInterceptorChain.java:147)
at okhttp3.internal.http.RetryAndFollowUpInterceptor.intercept (RetryAndFollowUpInterceptor.java:126)
at okhttp3.internal.http.RealInterceptorChain.proceed (RealInterceptorChain.java:147)
at okhttp3.internal.http.RealInterceptorChain.proceed (RealInterceptorChain.java:121)
at okhttp3.RealCall.getResponseWithInterceptorChain (RealCall.java:200)
at okhttp3.RealCall$AsyncCall.execute (RealCall.java:147)
at okhttp3.internal.NamedRunnable.run (NamedRunnable.java:32)
at java.util.concurrent.ThreadPoolExecutor.runWorker (ThreadPoolExecutor.java:1162)
at java.util.concurrent.ThreadPoolExecutor$Worker.run (ThreadPoolExecutor.java:636)
at java.lang.Thread.run (Thread.java:784)
Размещение журналов ANR, вероятно, будетне очень полезно или не так ли?