Establecer tiempo de espera en URL.openStream () Android

Estoy usando lo siguiente en mi aplicación para conectarse a una URL y analizar la respuesta XML resultante. Mi problema es que no puedo encontrar una manera de establecer un tiempo de espera en el método openStream () para que sólo espera unos 5 segundos y si no se recibe ninguna respuesta, falla. Sólo sigue esperando y esperando. ¿Alguna idea?

URL website = new URL(sb.toString()); SAXParserFactory spf = SAXParserFactory.newInstance(); SAXParser sp = spf.newSAXParser(); XMLReader xr = sp.getXMLReader(); DataHandler h = new DataHandler(); xr.setContentHandler(h); xr.parse(new InputSource(website.openStream())); 

Lo deduje. Mediante el uso de URLConnection y llamando a los métodos setConnectionTimeout y setReadTimeout soy capaz de lograr lo que quiero. Código actualizado abajo ….

 URLConnection conn = new URL(sb.toString()).openConnection(); conn.setConnectTimeout(5000); conn.setReadTimeout(5000); SAXParserFactory spf = SAXParserFactory.newInstance(); SAXParser sp = spf.newSAXParser(); XMLReader xr = sp.getXMLReader(); DataHandler h = new DataHandler(); xr.setContentHandler(h); xr.parse(new InputSource(conn.getInputStream())); 

Si desea cambiarla en la URL:

 website.openConnection().setReadTimeout(5000); website.openConnection().setConnectTimeout(5000); 
  • Constantes de diseño XML de Android
  • Android Ver alinear abajo (de forma programática) sin XML
  • ¿Alternativas a xml desarrollando el diseño de aplicaciones para Android?
  • ¿Debo usar Java o XML para diseños de Android?
  • Padding no funciona en Android
  • Android: ¿Cómo puedo hacer que las vistas de texto floten a la izquierda?
  • ¿Creación de un diseño de chat?
  • ¿Es posible intercambiar diseños XML durante el tiempo de ejecución en Android?
  • Dynamic SAX Parser para UTF-8 o ISO-8859-1 XML codificado
  • Búsqueda de diseños por ID
  • Ocultar vistas declarativamente basado en el tamaño de pantalla en Android
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.