Android 和 Jsoup

标签 android webview jsoup

我正在尝试引入网站的部分内容。我决定使用 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/

相关文章:

android - 如何通过两个不同的链接创建 Firebase 动态链接?

android - 按下按钮时 EditText 到 TextView

android - 访问 Android 的字典以进行自动完成

android - 发送短信时查看确认充值账单对话框

android - WebView shouldOverrideUrlLoading 未在 API 19 中调用

javascript - 我可以在没有 WebView 的情况下运行 Javascript,还是可以在没有 Activity 上下文的情况下运行 WebView,例如在服务中?

java - Jsoup java重写它应该添加的文件字符串

java - Jsoup Element.attr() 返回意外值 (Android)

javascript - 如何在 FlutterWebview 中自动运行 Javascript

java - 使用 JSoup 从表中提取数据