中文

常见问题解答:如何在 ArcGIS Runtime SDK for Android 上启用 TLS 1.2?

问题

常见问题解答:如何在 ArcGIS Runtime SDK for Android 上启用 TLS 1.2?

答案

Esri 致力于为 ArcGIS 平台构建和提供强大的安全性,并通过使用最新的安全协议为我们的客户提供帮助。 我们不懈地努力实施最高行业标准,其中包括用于数据完整性和网络安全的 TLS。

为满足这些标准,Esri 正在 ArcGIS 平台上对软件进行更新,以支持 TLS 1.2。 作为改进 ArcGIS Online 安全性的一部分,Esri 正在要求 ArcGIS Online 服务使用 TLS 1.2 连接。 为确保对这些服务进行持续访问,需要采取一些措施。

注:
请参阅 Esri 支持中心网站上的产品生命周期页面,了解 ArcGIS Runtime SDK for Android 每个版本的支持状态。

ArcGIS Runtime SDK for Android 10.2.9 和 100.x 版本支持运行在 Android 5.0 和更高版本(API 21 及更高版本)设备上的 TLS 1.2。
但是,在运行 Android 4.4 (API 19) 及更早版本的设备上,100.x 和 10.2.9 版本的 SDK 都会出现以下网络请求失败错误:

 javax.net.ssl.SSLException:SSL 握手中止

要在运行 Android 4.4 (API 19) 的设备上支持 TLS 1.2,用户必须向其应用程序添加代码,以更新设备的安全提供程序,操作步骤如以下 Android 开发人员文档“更新安全提供程序以防止 SSL 攻击”中所述。

注:
建议的解决方案仅适用于已安装 Google Play Services 的设备,否则,在尝试更新安全服务提供程序时,系统将提示“GooglePlayServicesNotAvailableException”。 如果您的应用程序可能针对未安装 Google Play Services 的设备,则建议您仅针对运行 Android 5.0 及更高版本(API 21 及更高版本)的设备定位您的应用程序。

支持 TLS1.2:

Android API 级别10.2.9100.x
19 及以下(X)*(X)*
21 及以上XX

*如上所述,需要应用程序级别代码来更新设备的安全提供程序。

注:
有关如何在其他 Esri 产品中使用 TLS 1.2 的信息,请参阅 Esri 支持 TLS 页面

Related Information