如何解决运行AsyncTask的致命异常
尝试添加网址进行解析时遇到问题,我收到FATAL EXCEPTION: AsyncTask # 1
错误,但我不明白为什么。
这是我解析数据的方式:
@Override
protected ArrayList<TMOLectorClase> doInBackground(Void... voids) {
String url = getIntent().getStringExtra("url");
tmoLectorClases.clear();
try {
Document doc = Jsoup.connect(url).get();
Elements data = doc.select("div");
for (Element e : data) {
String urlRedireccionada = e.select("div.OUTBRAIN").attr("data-src");
try {
doc = Jsoup.connect(urlRedireccionada).get();
Elements datanuevo = doc.select("div.img-container.text-center");
for (Element e1 : datanuevo) {
String imgurl = e1.select("img").attr("src");
tmoLectorClases.add(new TMOLectorClase(imgurl));
}
} catch (IOException ie) {
ie.printstacktrace();
}
}
} catch (IOException e) {
e.printstacktrace();
}
return tmoLectorClases;
}
doc = Jsoup.connect(urlRedireccionada).get();
出现错误:
Caused by: java.lang.IllegalArgumentException: Must supply a valid URL
发生的是,这个url
变成了urlRedireccion
,我尝试将图像从urlRedireccion
加载到RecyclerView
中。有人可以告诉我如何解决吗?调试代码,然后调试URL(如果有效):
解决方法
解决方案是使用重定向的url创建一个String
:
String nuevaUrl = Jsoup.connect(url).followRedirects(true).execute().url().toExternalForm();
然后,您将添加到您的Document
:
Document doc = Jsoup.connect(nuevaUrl).get();
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。