我正在尝试引入网站的部分内容。我决定使用 Jsoup,因为有了它,我可以获取您想要的网站部分,并在 web View 中播放此撤回的 html 部分。这看起来很容易,但我试图运行我的应用程序但没有成功。下面是我的代码。他怎么了?
注意:如果有另一种更简单的方法可以做到这一点,请给我提示!但是我想实时获取内容,好吗? 感谢大家!
public class RestauranteUniversitarioActivity extends Activity {
@Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); WebView cardapio = (WebView)findViewById(R.id.web_engine); cardapio.getSettings().setJavaScriptEnabled(true); String data = ""; Document doc = null; try { doc = Jsoup.connect("http://www.iguatu.ce.gov.br/").get(); } catch (IOException e) { e.printStackTrace(); } Elements content = doc.getElementsByClass("dest-left"); if(content.size() > 0) { data = content.get(1).text(); } cardapio.loadData(data, "text/html", "UTF-8"); }
}
最佳答案
问题很可能是您在主 (UI) 线程中解析网页。这将锁定用户界面/导致您的应用程序卡住。将 doc = Jsoup.connect("http://www.iguatu.ce.gov.br/").get();
移动到后台线程,例如使用 AsyncTask
或 (Intent)Service
。
关于Android 和 Jsoup,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10695350/