【发布时间】:2019-01-24 20:29:14
【问题描述】:
我有一个 URL,它是一个包含图像链接的 http 服务器,我想获取这些链接并将它们放在字符串列表中......但是 Jsoup 无法连接,经过一些研究后我发现我需要设置建立一个用户代理来搜索它和东西......
Jsoup.connect cannot get correct html contents
那是我找到的链接,很旧的帖子,我不知道如何将它应用到我的代码中, 这是我的功能
public void GetDataFromURL() throws IOException {
String URL = "http://*IP ADDRESS*/SS/?C=M;O=D";
Document document = Jsoup.connect(URL).userAgent("Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/535.2 (KHTML, like Gecko) Chrome/15.0.874.120 Safari/535.2").get();
Elements links = document.select("a[href]");
for (Element link : links.subList(5, 40)) {
urls.add(link.attr("abs:href"));
}
当我运行应用程序时,它会抛出一个致命错误,这是主线程中的网络,我真的不知道它是如何工作的,我希望用户代理会从主线程运行连接,但这似乎没有发生我不知道该怎么办。
android.os.NetworkOnMainThreadException
【问题讨论】:
-
我对Android不熟悉,但是使用主线程进行网络连接可能会出现问题并且会挂起整个应用程序,因此
NetworkOnMainThreadException。异步获取数据呢?