如何解决Android - 下载 html 源时出错:未找到认证路径的信任锚
我正在下载此网页 https://tv.zam.it/ch-Rai-1 的 html 源代码:
String content= "";
URLConnection connection = null;
try {
URL url = new URL(address[0]);
connection = (URLConnection) url.openConnection();
Scanner scanner = new Scanner(connection.getInputStream());
scanner.useDelimiter("\\Z");
while (scanner.hasNext()) content += scanner.next();
scanner.close();
} catch (Exception ex) {
content = ex.toString();
}
- 在 2019 年搭载 android 9 的三星手机上运行正常
- on fire tv Stick (Fire OS 5.2.8.0) 工作正常
- 在 w95 android 电视盒 (android 7.1.2) 上,它返回此消息:
javax.net.ssl.SSLHandshakeException:java.security.cert.CertPathValidatorException:未找到证书路径的信任锚。
我尝试了许多建议的解决方案,但我无法让它们中的任何一个改变任何事情。该网页只提供电视节目信息,我只需要从源中获取一些字符串,不需要花哨的东西或严格的安全检查。有什么建议吗?
解决方法
将您的证书添加到自定义信任管理器,如本文所述:Trusting all certificates using HttpClient over HTTPS
这里有更多的解决方案 https://stackoverflow.com/a/16302527/9959901
,原来添加到故障设备的 dns 服务器不喜欢该站点。这就是问题的原因。切换到另一个 dns 解决了该问题,而无需更改应用程序。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。