https 的自签名证书

Self-signing certs for https

我的 android 应用正在使用加密的网络服务。我暂时在服务器上自签了证书。

这个问题: has pointers to http://blog.crazybob.org/2010/02/android-trusting-ssl-certificates.html 展示了如何将受信任的证书添加到您的 android 应用程序并在创建连接时检查它们。问题是这是一个较旧的 post 并且包含已弃用的调用等。

我尝试用谷歌搜索我能想到的东西,但只能找到使用相同已弃用调用的旧 post。所以我的问题是,你现在如何做到这一点?

在 Android 7.0+ 上,您可以使用 the network security configuration feature to handle this, though 。这应该适用于所有基于 Java 的 HTTP 客户端 API。

对于 Android 4.2 到 6.0,我有 a backport of the official network security configuration code 用于 HttpUrlConnection 和 OkHttp3。

弃用调用的原因与自签名证书无关,而与嵌入到 Android 中的 Apache HttpClient 副本已弃用这一事实有关。您需要选择一个 HTTP 客户端 API,然后从那里找出如何使用自签名证书。