【问题标题】:SMS Intent not populating recipient only in oneplus mobilesSMS Intent 仅在 oneplus 手机中不填充收件人
【发布时间】:2019-10-19 16:17:50
【问题描述】:

在 google 政策更改为不使用 SEND_SMS 之后。我正在使用短信意图发送带有自定义消息和自动填充发件人地址的短信。它适用于几乎所有移动设备。但仅在 oneplus 手机中,收款人地址不会被填充

private void sendSMS(String phoneNumber, String message) {

    if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT)
    {
        String defaultSmsPackageName = Telephony.Sms.getDefaultSmsPackage(getActivity());
        Intent sendIntent = new Intent(Intent.ACTION_SEND);
        sendIntent.setType("text/plain");
        sendIntent.putExtra(Intent.EXTRA_TEXT, message);
        sendIntent.putExtra("address",phoneNumber);
        sendIntent.putExtra("exit_on_sent", true);

        if (defaultSmsPackageName != null)
        {
            sendIntent.setPackage(defaultSmsPackageName);
        }
        startActivity(sendIntent);

    }
    else
    {
        Intent smsIntent = new Intent(android.content.Intent.ACTION_VIEW);
        smsIntent.setType("vnd.android-dir/mms-sms");
        smsIntent.putExtra("address",phoneNumber);
        smsIntent.putExtra("sms_body",message);
        startActivity(smsIntent);
    }

}

我也试过

            Intent sendIntent =new Intent(Intent.ACTION_VIEW);
            sendIntent.setType("text/plain");
            sendIntent.putExtra(Intent.EXTRA_TEXT, message);
            sendIntent.putExtra("address",phoneNumber);
            sendIntent.putExtra("exit_on_sent", true);
            sendIntent.setData(Uri.parse("smsto:" + phoneNumber));

and 


            Intent intent = new Intent(Intent.ACTION_VIEW);
            intent.putExtra("address", phoneNumber);
            intent.putExtra("sms_body", message);
            intent.setData(Uri.parse("smsto:" + phoneNumber));
            intent.putExtra("exit_on_sent", true);

没有人在 oneplus 手机(3、7 和 7 pro)上工作。它适用于所有 MI 手机、三星、诺基亚、荣耀、摩托罗拉、联想等。仅在一加手机有问题。

【问题讨论】:

  • 我也有同样的问题。你找到解决办法了吗?

标签: java android


【解决方案1】:

我在下面尝试过,它成功地为我工作。在一加 3t 上测试。

            String phoneNumber="+91xxxxxxxxxx";
            String message ="Hi ABZ";
            Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse("sms:" + phoneNumber));
            intent.putExtra("sms_body", message);
            startActivity(intent);[![enter image description here][1]][1]

【讨论】:

    猜你喜欢
    • 2011-03-20
    • 1970-01-01
    • 2017-08-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多