Android:无需哈希或READ_SMS权限能否实现SMS OTP自动填充?
无需自定义代码/权限实现短信自动检索的可能性
很遗憾,目前不存在无需自定义代码或权限就能实现短信自动获取的官方可行方案。
按照谷歌的短信检索机制:
- 哈希码方案:无需申请短信权限,但必须在短信内容中包含应用签名哈希,同时需要在代码里注册广播接收器(或是用Jetpack的
ActivityResultContracts.StartActivityForResult)监听检索结果,这部分自定义代码是绕不开的。 - 权限方案:需要申请
READ_SMS或RECEIVE_SMS权限,现在谷歌对这类权限的审核极为严格,非核心依赖短信功能的应用很难通过审核,并不推荐。
另外,系统自带的自动填充服务虽能辅助填充验证码,但也需要应用适配Android自动填充框架(比如给输入框设置android:autofillHints="smsOTP"),同样需要少量代码配置,而且依赖用户开启系统自动填充功能,做不到完全无代码实现。
内容的提问来源于stack exchange,提问作者TheDeveloper
相关产品推荐
相关产品推荐

