我的问题是Google Safetynet内置了什么重试逻辑,应用程序中应该构建什么重试逻辑?构建应用程序级逻辑的最佳实践是什么?
我在Android应用程序和Web后端服务中使用Safetynet Attestation。 Safetynet 用于验证数据是否来自安装在有效 Android 设备中的 Android 应用程序,以及消息是否未被篡改。使用的基本代码来自 Safetynet 文档示例
我在设计重试逻辑以在网络连接暂时不可用的情况下在设备应用程序中获取安全网证明时遇到问题,或者 Google Safetynet API 在一段时间内无法访问。
Safetynet类基于GoogleApi类。 GoogleApi的文档说已经有一些自动超时/重新连接逻辑。
- 自动超时并在必要时重新连接
哪些逻辑会自动内置到安全网中,应用程序开发人员需要构建哪些逻辑?例如,请求的超时("自动超时")是多少,是否可以调整?它执行多少次重试以及使用什么重试策略("必要时重新连接")?
据我所知,SafetyNet api 只有每个请求的成功和失败结果的侦听器/回调,它没有内置的重试逻辑。您可以通过其状态代码(检查SafetyNetStatusCodes)检查OnFailureListener
出现的错误,并使用自己的重试逻辑处理它们。