1

Kullanıcı şu anda uygulamayı kullanıyorsa, Bluetooth'la tarama yapan Android uygulamamızla ilgili bir sorun yaşıyoruz. Farklı görünümler yüklenirken uygulama, API'dan veri yüklemektedir. Bazen ne zaman bu hata ile, bir isteği başarısız görüşlerini (zaman aşımı) tıklatarak devam: Android 6 (Marshmallow) Wifi + Bluetooth bazen SocketTimeoutException ile sonuçlanır

java.net.SocketTimeoutException: failed to connect to www.examplehost.com/111.222.333.444 (port 80) after 15000ms 
               at libcore.io.IoBridge.connectErrno(IoBridge.java:169) 
               at libcore.io.IoBridge.connect(IoBridge.java:122) 
               at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:183) 
               at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:452) 
               at java.net.Socket.connect(Socket.java:884) 
               at com.android.okhttp.internal.Platform.connectSocket(Platform.java:117) 
               at com.android.okhttp.internal.http.SocketConnector.connectRawSocket(SocketConnector.java:434) 
               at com.android.okhttp.internal.http.SocketConnector.connectCleartext(SocketConnector.java:105) 
               at com.android.okhttp.Connection.connect(Connection.java:1331) 
               at com.android.okhttp.Connection.connectAndSetOwner(Connection.java:1410) 
               at com.android.okhttp.OkHttpClient$1.connectAndSetOwner(OkHttpClient.java:128) 
               at com.android.okhttp.internal.http.HttpEngine.nextConnection(HttpEngine.java:466) 
               at com.android.okhttp.internal.http.HttpEngine.connect(HttpEngine.java:447) 
               at com.android.okhttp.internal.http.HttpEngine.sendRequest(HttpEngine.java:353) 
               at com.android.okhttp.internal.huc.HttpURLConnectionImpl.execute(HttpURLConnectionImpl.java:468) 
               at com.android.okhttp.internal.huc.HttpURLConnectionImpl.getResponse(HttpURLConnectionImpl.java:410) 
               at com.android.okhttp.internal.huc.HttpURLConnectionImpl.getResponseCode(HttpURLConnectionImpl.java:532) 

(Bizim sunucunun IP adresidir, 111.222.333.444 ile değiştirilir) Bundan önceki talepler oldukça hızlıyken, bir zaman aşımı (> 15 saniye).

Bu sorunu, diğer cihazlarla, yalnızca Android 6.0.1'de güncellendiğinde yalnızca Samsung S6'da yaşamayacağım. Uygulama ön planda olduğundan, uygulamanın aktif olarak kullanıldığı için Doze veya Bekleme (Android 6'da yeni) olabileceğini düşünmüyorum. Ancak, uygulama arka planda olduğunda da aynı sorun ortaya çıkabilir (ancak test edilmesi zordur).

  • Kablosuz bağlantıyı kapatırken (aygıt 4G ağı kullanıyorsa) veya Bluetooth'u (veya her ikisini birden) kullanırken sorun artık oluşmaz.
  • LG Nexus 5'da (ayrıca Android 6.0.1 ile de) sorun asla oluşmaz. Kullandığımız
  • işaret kitaplığı: http://altbeacon.github.io/android-beacon-library/ (sürüm 2,7)

herkes biz sorunu için görünmelidir bir fikri var mı? Şimdiden teşekkürler.

cevap

3

bu ben S6 bu duymuş ilk rapor, bu Nexus 4, Nexus 7 Kablosuz arasında, Moto G ve Moto X Bu cihazlar deneyim parazit gibi diğer cihazlarda yaygın bir sorun olduğunu iken ve aynı radyo frekansı bantlarını paylaşan ve bazı cihaz modellerinde Bluetooth, bir çip ve anteni paylaşır. Nexus 4 ve Moto G’de, Bluetooth hoparlör kullanırken müzik akışı mümkün olmadığı için sorun o kadar kötüydü ki. Yani sorun, işaretlere özgü değildir.

Bilinen bir geçici çözüm yoktur, ancak aygıt modelini algılayabilir ve sorunlu olduğu biliniyorsa, , kullanıcının WiFi bağlantısını kapatmasını ister. veya kullanıcı için (tabii ki uygun bir bildirim ile)

Daha önceki bir Android sürümüyle S6'da aynı sorunun olup olmadığını bilmek ilginç olabilir. Eğer öyleyse, bu, en azından S6 için bellenimde bir düzeltmenin mümkün olabileceğini gösterir.

Tam açıklama: Android Beacon Library açık kaynaklı projesinde baş geliştiriciyim.

+0

Yanıt için teşekkür ederiz. Parazit problemlerini duyduk, ancak tuhaf bir şekilde Android 6'dan itibaren bir sorun olmaya başladı. Android 5'i kullanan kullanıcılarla hiç sorun görmüyoruz. Umarım Samsung bunu düzeltebilir. Bu sorunla Samsung ile iletişim kurmanın bir yolunu biliyor musunuz? – TomWebDev

+0

Üzgünüm, Samsung'da bir iletişim bilmiyorum. – davidgyoung

+0

Bu, Samsung cihazları için bir Android güncellemesi ile giderildi – TomWebDev

0

SetHostnameVerifier (yeni BrowserCompatHostnameVerifier()) kullanıyor musunuz? Evetse, kaldırın, çünkü Android 6.0 yeni bir ana bilgisayar adı doğrulayıcısı ile birlikte gelir.

İlgili konular