如何重新启用Phone Number Hint号码共享及找到自动填充界面?
关于Phone Number Hint API的号码共享重新启用与自动填充位置问题
我在使用Phone Number Hint API选取电话号码时,根据Google官方说明,用户可以关闭号码共享功能,但关闭后我调用选择电话号码对话框的代码就不再生效了。想请教两个问题:
- 如何重新启用电话号码共享功能?
- 自动填充的设置界面在哪里可以找到?
附上对应的设置界面截图:
以下是我调用“选择电话号码”对话框的代码:
private val phoneNumberHintIntentResultLauncher: ActivityResultLauncher<IntentSenderRequest> = registerForActivityResult(ActivityResultContracts.StartIntentSenderForResult()) { result -> try { val phoneNumber = Identity.getSignInClient(requireActivity()).getPhoneNumberFromIntent(result.data) binding?.frgSetupAccountEtPhone?.setText(phoneNumber) } catch (e: Exception) { log(e) } } private fun requestHint() { val request: GetPhoneNumberHintIntentRequest = GetPhoneNumberHintIntentRequest.builder().build() Identity.getSignInClient(requireActivity()) .getPhoneNumberHintIntent(request) .addOnSuccessListener { result -> val phoneRequest = IntentSenderRequest.Builder(result.intentSender).build() phoneNumberHintIntentResultLauncher.launch(phoneRequest) } .addOnFailureListener { log(it) } }
解决方案
1. 重新启用电话号码共享功能
不同Android机型和版本的路径略有区别,通用操作步骤如下:
- 打开手机系统设置
- 找到「密码和账号」(部分机型直接显示「账号」)
- 选择你的Google账号进入
- 点击「安全」选项
- 在安全设置里找到「电话号码共享」(和你截图里的选项对应),打开开关即可
2. 自动填充设置界面位置
通用路径参考:
- 打开手机系统设置
- 进入「系统」或「更多设置」(部分机型在设置首页就能找到)
- 选择「语言和输入法」
- 点击「自动填充服务」,在这里可以管理自动填充的权限和相关选项
3. 代码适配建议
当用户关闭号码共享后,getPhoneNumberHintIntent会触发失败回调,你可以在这个回调里添加提示,引导用户去设置里开启功能:
.addOnFailureListener { log(it) Toast.makeText(requireActivity(), "请前往设置开启电话号码共享功能", Toast.LENGTH_LONG).show() }
内容的提问来源于stack exchange,提问作者Denis Vodolazskiy
相关产品推荐
相关产品推荐

