共享文本意图预填充电话号码问题

时间:2018-04-09 08:33:47

标签: android android-intent share share-intent

已编写以下代码在android中共享文本。我面临的问题是在短信应用程序中预填充电话号码。

public static void shareText(final String extraText, final String extraEmail, final String phoneNumber) {
    Intent textShareIntent = new Intent(android.content.Intent.ACTION_SEND);
    textShareIntent.setType("text/plain");
    if (null != extraText) {
        textShareIntent.putExtra(android.content.Intent.EXTRA_TEXT, extraText);
    }
    if (null != extraEmail) {
        textShareIntent.putExtra(android.content.Intent.EXTRA_EMAIL, new String[]{extraEmail});
    }
    if (null != phoneNumber) {
        textShareIntent.putExtra(Intent.EXTRA_PHONE_NUMBER, new String[]{phoneNumber});
    }
    startActivity(Intent.createChooser(textShareIntent, "Share via"));
}

1 个答案:

答案 0 :(得分:1)

如果我没错,那么您正在寻找的方案是您在屏幕上选择发送消息(来自WhatsApp或SMS),如果是SMS,则必须预先填写号码。据我所知和研究,你不能将这两种功能整合到一起,因为SMS是移动中的标准协议,而WhatsApp等其他消息服务则不是(我的意思是他们不支持查找SMS协议{{3} })。什么你可以给SMS提供选项,你可以打开短信支持应用程序,其中预先填写数字(这是你需要的)和消息,将选择其他选项,其中将打开其他消息应用程序(WhatsApp,Telegram) 。检查An example of messaging app