使用请求一次性同意读取短信从短信 OTP 获取短信发件人姓名

问题描述

我已实施请求一次性同意读取短信验证码。 Link。我遇到的问题是我想从 SMS 中读取发件人的姓名。我该如何实施。以下是我迄今为止尝试过的


    @Override
    public void onActivityResult(int requestCode,int resultCode,Intent data) {
        super.onActivityResult(requestCode,resultCode,data);
        if (requestCode == SMS_CONSENT_REQUEST) {
            if (resultCode == RESULT_OK) {
                // Get Message Sender
                String messageSender = data.getStringExtra(SmsRetriever.SMS_RETRIEVED_ACTION);
                // Get SMS message content
                String message = data.getStringExtra(SmsRetriever.EXTRA_SMS_MESSAGE);

                new AlertDialog.Builder(requireActivity())
                        .setMessage(message)
                        .setCancelable(false)
                        .show();

//                tvSmsMessage.setText(String.format("%s%s%s%s",getString(R.string.message),message,//                        getString(R.string.matched_string),parSEOneTimeCode(message)));

                // send one time code to the server

            } else {

                // Consent canceled,handle the error ...
                Log.wtf("ConsentCancelled","onActivityResultConsentCancelled: " + true);

            }
        }else {

            // Sms consent denied
            new AlertDialog.Builder(requireActivity())
                    .setMessage("Sms Consent Denied")
                    .show();
        }
    }

String message 是 sms 的消息正文,我尝试使用 String messageSender 获取消息发件人,但它返回的 null 是否有办法使用此一次性同意 api 获取发件人姓名

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...