Я создаю приложение для Android для сообщества пользователей форума.Провайдер форумов предоставляет мне RSS-каналы из общих категорий, но не генерирует их по темам.Поэтому я получаю URL тем из этих каналов и хочу проанализировать HTML с помощью Jsoup и передать его WebView.
Он работает хорошо, за исключением функции select (), которая ничего не возвращает.
The "HTML RETREIVED »дает мне: <html><head><title>The topic title</title></head><body></body></html>
h1 теги в коде в целях тестирования: он хорошо отображается в WebView и заголовок проанализированной веб-страницы тоже.
Я также поставилстрока журнала сразу после строки select ().Он тоже ничего не возвращает.
Я пытался в чистом Java-проекте разобрать только Jsoup, и все прошло хорошо.Поэтому я предположил, что с Android что-то не так.
PS: в манифесте активно разрешение Интернета.
Я что-то пропустил?
Вот код:
String html;
Bundle param = this.getIntent().getExtras();
String url = param.getString("url");
try {
Document doc = Jsoup.connect(url).get();
doc.select(".topic .clear").remove();
String title = doc.title().toString();
html = doc.select(".username strong, .entry-content").toString();
html = "<html><head><title>"+title+"</title></head><body><h1>"+title+"</h1>"+html+"</body></html>";
WebView webview = new WebView(this);
getWindow().requestFeature(Window.FEATURE_PROGRESS);
setContentView(webview);
webview.getSettings().setJavaScriptEnabled(true);
final Activity activity = this;
webview.setWebChromeClient(new WebChromeClient() {
public void onProgressChanged(WebView view, int progress) {
activity.setProgress(progress * 1000);
Log.d("LOADING",""+ progress);
}
});
webview.loadData(html, "text/html", "UTF-8");
//webview.loadUrl(url);
Log.i("HTML RETREIVED", ""+html);
} catch (IOException e) {
Log.e("ERROR", "Error while generate topic");
}