问题描述
我只想从这个网页获取地图
https://app.23degrees.io/embed/SceA7dXXe6QjrW5R-choro-corona-faelle-pro-100-000
使用 JSOUP,通过使用 getElementsByClass,并将其显示在 webview 中。问题是 webview 总是显示一个白屏并且 getElementsByClass 什么都不返回。我做错了什么?
这是我的代码:
private class GetMap extends AsyncTask<Void,Void,Void> {
private GetMap() {
}
protected void onPreExecute() {
progressDialog = new ProgressDialog(MainActivity.this);
progressDialog.setMessage(getString(R.string.loading));
progressDialog.setCancelable(false);
progressDialog.show();
}
protected Void doInBackground(Void... params) {
try {
String url = "https://app.23degrees.io/embed/SceA7dXXe6QjrW5R-choro-corona-faelle-pro-100-000";
map = String.valueOf(Jsoup.connect(url).get().getElementsByClass("ng-tns-c28-0.ng-star-inserted"));
} catch (IOException e) {
e.printstacktrace();
}
return null;
}
protected void onPostExecute(Void result) {
super.onPostExecute(result);
if (progressDialog.isShowing()) {
progressDialog.dismiss();
}
webView.getSettings().setJavaScriptEnabled(true);
webView.getSettings().setLoadWithOverviewmode(true);
webView.getSettings().setBuiltInZoomControls(true);
webView.getSettings().setUseWideViewPort(true);
webView.addJavascriptInterface(new WebAppInterface(),"Android");
webView.loadDataWithBaseURL(null,"<html>" + "<head></head>" + "<body>" + map + "</body></html>","text/html","UTF-8","about:blank");
}
}
public class WebAppInterface {
/** Show a toast from svg */
@JavascriptInterface
public void showToast(String toast) {
Toast.makeText(MainActivity.this,toast,Toast.LENGTH_SHORT).show();
}
}
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)