我应该使用哪种 API?
Google Play 服务有两个 API,可用于简化基于短信的验证流程:SMS Retriever API 和 SMS User Consent API。
SMS Retriever API 提供完全自动化的用户体验,应尽可能使用。但是,您需要在消息正文中放置自定义哈希代码;如果您不是该消息的发送者,则可能很难做到这一点。
如果您无法控制消息内容(例如,如果您的应用与金融机构合作,可能需要在您批准应用内付款交易前验证其电话号码),您可以使用 SMS User Consent API,而无需自定义哈希代码。不过,它要求用户批准应用访问包含验证码的消息的请求。为了尽可能避免向用户显示错误消息,短信用户意见征求会检查该消息是否包含 4-10 个字符的字母数字代码,且该代码至少包含一个数字。它还将过滤掉来自用户联系人列表中的发件人的消息。
下表总结了其中的差异:
|
短信检索器 |
短信用户同意 |
消息要求 |
唯一标识您的应用的 11 位哈希代码 |
至少包含一个数字的 4-10 位字母数字代码 |
发件人要求 |
无 |
发件人不得位于用户的联系人列表中 |
用户互动 |
无 |
点按一下即可批准 |
如未另行说明,那么本页面中的内容已根据知识共享署名 4.0 许可获得了许可,并且代码示例已根据 Apache 2.0 许可获得了许可。有关详情,请参阅 Google 开发者网站政策。Java 是 Oracle 和/或其关联公司的注册商标。
最后更新时间 (UTC):2022-10-18。
[null,null,["最后更新时间 (UTC):2022-10-18。"],[[["Google Play services offers two APIs, SMS Retriever and SMS User Consent, to simplify SMS-based verification in your app."],["SMS Retriever API automates verification but requires a custom hash code in the SMS message, ideal when you control message content."],["SMS User Consent API, best for scenarios where you don't control the SMS message (like with financial institutions), requires user approval to access the message but doesn't need a custom hash code."],["SMS User Consent API enhances security by filtering messages from known contacts and focusing on messages containing a 4-10 digit alphanumeric code with at least one number."]]],[]]