Join FlipAndroid.COM Telegram Group: https://t.me/joinchat/F_aqThGkhwcLzmI49vKAiw


Android 4.4 errores api http?

Decidí comenzar a probar mi aplicación con Android 4.4 y noté que las API de conexión HTTP de Android son mucho más estrictas que antes. Nunca he tenido este problema y supongo que es algún tipo de error.

Estoy conectando a transmisiones de SHOUTcast que contienen la respuesta de cabecera helada particular.

¿Alguien ha visto este problema? ¿Cómo puedo evitarlo?

URL utilizada para esta prueba:

http://50.117.121.162:80 

Logcat de excepción:

11-01 23: 47: 57.299: E / ConnectHelper (3081): java.net.ProtocolException: Línea de estado inesperado: ICY 200 OK 11-01 23: 47: 57.299: E / ConnectHelper (3081): en com.android. Okhttp.internal.http.RawHeaders.setStatusLine (RawHeaders.java:108) 11-01 23: 47: 57.299: E / ConnectHelper (3081): en com.android.okhttp.internal.http.RawHeaders.fromBytes (RawHeaders.java : 308) 11-01 23: 47: 57.299: E / ConnectHelper (3081): en com.android.okhttp.internal.http.HttpTransport.readResponseHeaders (HttpTransport.java:135) 11-01 23: 47: 57.299: E / ConnectHelper (3081): en com.android.okhttp.internal.http.HttpEngine.readResponse (HttpEngine.java:644) 11-01 23: 47: 57.299: E / ConnectHelper (3081): en com.android.okhttp. Internal.http.HttpURLConnectionImpl.execute (HttpURLConnectionImpl.java:347) 11-01 23: 47: 57.299: E / ConnectHelper (3081): en com.android.okhttp.internal.http.HttpURLConnectionImpl.getResponse (HttpURLConnectionImpl.java:296 ) 11-01 23: 47: 57.299: E / ConnectHelper (3081): en com.android.okhttp.internal.http.HttpURLConnectionImpl. GetResponseCode (HttpURLConnectionImpl.java:503) 11-01 23: 47: 57.299: E / ConnectHelper (3081): en com.vblast.xiialive.media.streamers.ConnectHelper.connectWorker (ConnectHelper.java:176) 11-01 23: 47: 57.299: E / ConnectHelper (3081): en com.vblast.xiialive.media.streamers.ConnectHelper.run (ConnectHelper.java:143) 11-01 23: 47: 57.299: E / ConnectHelper (3081): en java .lang.Thread.run (Thread.java:841)

  • IsValidFragment Android API 19
  • ¿Por qué FusedLocationApi.getLastLocation null
  • API de notificación en el navegador Chrome de Android
  • FLAG_TRANSLUCENT_NAVIGATION no está disponible en modo horizontal?
  • TWO_SWIPE_DOWN TAP no puede capturar en Google Glass GDK (XE16)
  • Recibe mensajes MMS en Android KitKat
  • En la API de Android 19 (4.4), el método intent.createChooser causa IntentServiceLeak
  • Cuadro de diálogo de alerta personalizada que parece extraño en Android 4.x
  • 3 Solutions collect form web for “Android 4.4 errores api http?”

    En Android 4.4, las cosas cambiaron bajo la campana y la respuesta de cabecera de SHOUTcast ICY no estándar ya no es compatible. Al igual que la biblioteca Apache HTTPClient.

    Lo que tenía que hacer se puede encontrar en este post:
    ¿Cómo analizar una respuesta HTTP no estándar?

    La respuesta de Jona es correcta, pero si utiliza AACPlayer ( https://code.google.com/p/aacplayer-android/ ) para reproducir su SHOUTcast, aquí hay una solución más sencilla: https://code.google.com/ P / aacdecoder-android / wiki / HandlingShoutcastStreams

    Además, necesitaba cambiar mi url de " http://example.org " a "helado: //example.org"

    He implementado una solución basada en el Apache HttpClient , puede encontrarlo como una esencia aquí .

    Aquí está cómo usarlo:

     IcyGetRequest request = new IcyGetRequest(urlStr); HttpResponse response = request.get(); int responseCode = response.getStatusLine().getStatusCode(); 
    FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.