我的问题是Google Safetynet内置了什么重试逻辑,在应用程序中应该构建什么重试逻辑?构建应用程序级逻辑的最佳实践是什么?
我在Android应用程序和web后端服务中使用Safetynet认证。Safetynet用于验证数据来源于安装在有效Android设备中的Android应用程序,并且消息没有被篡改。使用的基本代码来自Safetynet文档示例
在设计在设备应用程序中获得safetynet认证的重试逻辑时,如果网络连接暂时不可用,或者Google Safetynet API在一段时间内无法访问,我就会遇到问题。
Safetynet类基于GoogleApi类。GoogleApi的文档显示,已经存在一些自动超时/重新连接逻辑。
什么逻辑是自动内置到Safetynet的,以及应用程序开发人员需要构建什么逻辑?例如,请求的超时时间(“自动超时”)是什么,它能被调整吗?它进行了多少次重试,使用了什么重试策略(“必要时重新连接”)?
发布于 2019-04-07 01:26:59
据我所知,SafetyNet api只具有侦听器/回调,用于每个请求的成功和失败结果,它没有内置重试逻辑。您可以通过OnFailureListener
上的StatusCode (检查是否为SafetyNetStatusCodes)检查错误,并使用自己的重试逻辑处理它们。
https://stackoverflow.com/questions/55411463
复制