У меня странная проблема. Я получаю следующую ошибку, которая вызывает принудительное закрытие:
org.apache.harmony.xml.ExpatParser $ ParseException: в строке 1, столбец 0: элемент не найден в org.apache.harmony.xml.ExpatParser.parseFragment (ExpatParser.java:508)
в org.apache.harmony.xml.ExpatParser.parseDocument (ExpatParser.java:467)
в org.apache.harmony.xml.ExpatReader.parse (ExpatReader.java:329)
в org.apache.harmony.xml.ExpatReader.parse (ExpatReader.java:286)
После нажатия кнопки «Принудительно закрыть» действие воссоздается, и анализ выполняется без заминки. Я использую следующий фрагмент кода внутри doInBackground AsyncTask:
URL serverAddress = new URL(url[0]);
HttpURLConnection connection = (HttpURLConnection) serverAddress.openConnection();
connection.setRequestMethod("GET");
connection.setDoOutput(true);
connection.setReadTimeout(10000);
connection.connect();
InputStream stream = connection.getInputStream();
SAXParserFactory spf = SAXParserFactory.newInstance();
SAXParser sp = spf.newSAXParser();
XMLReader xr = sp.getXMLReader();
xr.parse(new InputSource(stream)); // The line that throws the exception
Почему Activity принудительно закрывается, а затем сразу же запускается без проблем? Будет ли BufferedInputStream отличаться? Я сбит с толку. (
Спасибо, что уделили время всем.
Обновление: получается, что HttpURLConnection.getResponseCode () время от времени возвращает -1, так что InputStream, вероятно, устанавливается неправильно.