Я пытаюсь загрузить данные с Json.connect:Android Jsoup подключение замерзает нить
Document doc = Jsoup.connect("http://google.com").timeout(2000).ignoreContentType(true).get();
Он замораживает мою AsyncTask нить в течение длительного времени (Кажется, это не остановит). Я также попытался удалить «timeout (2000)», использовать другой URL-адрес, удалить «ignoreContentType (true)», но проблема появляется снова и снова. Я использую android studio 2.0; в моем build.gradle я использую compile 'org.jsoup:jsoup:1.8.3'
. Я также окружил этот блок try { ... } catch (Throwable t) {}
, но он никогда не попадает в блок catch. Что здесь не так?
Этот код я использую только для тестирования этого класса, ни Log.d
, ни e.printStackTrace()
не доступны. Монитор Android показывает загрузку процессора постоянного телефона.
class WebLoader extends AsyncTask<String, Void, String> {
private WhatToLoad whatToLoad;
public WebLoader(WhatToLoad whatToLoad) {
this.whatToLoad = whatToLoad;
}
@Override
protected String doInBackground(String... params) {
return downloadUrl(params[0]);
}
protected void onPostExecute(InputStream stream) {
onWebResult(whatToLoad, stream);
}
}
private static String downloadUrl(String myurl) {
try {
Document doc = Jsoup.connect("http://google.com").timeout(2000).ignoreContentType(true).get();
Log.d("jsoup1", doc.toString());
return doc.toString();
} catch (Throwable e) {
e.printStackTrace();
}
return null;
}
Edit: Та же проблема происходит, когда я запускаю пример с официального сайта:
Document doc = Jsoup.parse("<html><head><title>First parse</title></head>"
+ "<body><p>Parsed HTML into a doc.</p></body></html>");
Element body = doc.body();
LogCat:
04-09 17:56:53.810 32615-32629/com.abc.def W/art: Suspending all threads took: 6.560ms
04-09 17:57:32.890 32615-32629/com.abc.def W/art: Suspending all threads took: 5.075ms
04-09 17:58:23.520 32615-32629/com.abc.def W/art: Suspending all threads took: 6.361ms
04-09 17:58:28.530 32615-32629/com.abc.def W/art: Suspending all threads took: 5.165ms
04-09 17:58:30.040 32615-32629/com.abc.def W/art: Suspending all threads took: 5.637ms
04-09 17:58:30.540 32615-32629/com.abc.def W/art: Suspending all threads took: 5.995ms
04-09 17:59:46.210 32615-32629/com.abc.def W/art: Suspending all threads took: 5.289ms
Пожалуйста, не могли бы вы разместить большую часть кода? – statosdotcom
Вы начинаете 'AsyncTask'? Из кода и описания, которое вы опубликовали, проблема не очевидна. Вам нужно будет дать нам более подробную информацию. – Titus
Как вы начинаете задание «WebLoader»? – Titus