如何在安卓短信用户同意APi中获取消息发送者?



我已经按照文档在Android中实现了消息otp:https://developers.google.com/identity/sms-retriever/user-consent/request

但是,当我收到SmsRetriever.EXTRA_SMS_MESSAGE(请转到链接中的步骤3(时,无法获取发件人的电话号码。

启动 SMS 用户同意时,如下所示:

SmsRetriever.getClient(context).startSmsUserConsent(senderPhoneNumber /* or null */)

您可以先验地提供发件人号码,因此,API 将仅针对此号码过滤消息。但是,我不喜欢这种方法。

我试图发现的是收到消息后如何识别发件人号码。

有什么方法可以使用此 API 查找短信发送器电话吗?

目前,在 SMS 用户同意 APi 中无法执行此操作,因为即使您在SmsRetriever.getClient(context).startSmsUserConsent(null)中传递 null,我们仍然可以在 onReceive 方法中获取发件人编号。 因此,您应该使用广播接收器侦听传入的消息,然后将您的登录名放入 onReceive 以过滤掉消息

最新更新