如何从我的Android应用程序将短信转发到选定的联系人whatsapp?

时间:2017-02-04 13:31:30

标签: android android-intent sms whatsapp

在这里我被困了几天,我试图发送短信(从我的应用程序预定义的设置)与选择的联系人到什么应用程序,在stackoverflow的帮助下,我发现两种方法发送短信到whatsapp

第一种方法:一种方法是转发短信到whatsapp,但不是选定的联系人,联系人可以从whatsapp中选择,但我不想这样做。我想要联系也应该从我的app.now中选择

第二种方法:第二种方法与第一种方法相反。此方法将所选联系人发送给whatsapp以获取短信,但不发送(预定义的短信)。 我的问题是我希望这两件事都应该从我的app sms + Contact传递给whatsapp。当我尝试合并时,两种方法都会出错。请帮我 这是第一种方法和第二种方法的代码。

    //1st method: for forward sms to whatsapp
        Intent waIntent = new Intent(Intent.ACTION_SEND);
        waIntent.setType("text/plain");
        String text = "YOUR TEXT HERE";
        waIntent.setPackage("com.whatsapp");
        waIntent.putExtra(Intent.EXTRA_TEXT, text);
        startActivity(waIntent);


    //2nd method: send sms with selected contact but not with predefined sms 
       void openWhatsappContact(String number) {
       Uri uri = Uri.parse("smsto:" + number);
       Intent i = new Intent(Intent.ACTION_SENDTO, uri);
       i.setPackage("com.whatsapp");
       startActivity(i);


  //here i am trying to send both SMS and contact from my Android app but not working and get error. 
        Uri uri = Uri.parse("smsto:" + "065214585756");
        Intent sendIntent = new Intent(Intent.ACTION_SENDTO, uri);
        sendIntent.putExtra(Intent.EXTRA_TEXT, "Hai Good Morning");
        sendIntent.putExtra("chat",true);
        sendIntent.setType("text/plain");
        sendIntent.setPackage("com.whatsapp");
        startActivity(sendIntent);

请任何人帮帮我。我怎么做。

4 个答案:

答案 0 :(得分:0)

直到除非Whatsapp开发人员公开API以编程方式发送消息,否则无法完成。据我所知,只有Google Now拥有在Whatsapp中发送邮件的特殊权限,您可以在Google即时中查看相同内容(语音邮件发送)。

如果有任何问题,请告诉我。

Best Regds

答案 1 :(得分:0)

据我所知,你不能这样做。 whatsapp没有公开的API。

答案 2 :(得分:0)

你做不到。 WhatsApp 允许用户手动选择联系人或群组,您无法以任何方式更改。你的两种方法都很好。

了解更多详情

https://www.whatsapp.com/faq/android/28000012

答案 3 :(得分:0)

如果您要向特定号码发送消息,则可以使用此代码。 它对我有用。

// number should be with country code but without plus(+) and any space. For example 919876543210
private void send(String number, String message) {
    Intent sendIntent = new Intent("android.intent.action.MAIN");
    sendIntent.putExtra("jid", number + "@s.whatsapp.net");
    sendIntent.putExtra(Intent.EXTRA_TEXT, message);
    sendIntent.setAction(Intent.ACTION_SEND);
    sendIntent.setPackage("com.whatsapp");
    sendIntent.setType("text/plain");
    startActivity(sendIntent);
}

它将直接打开带有特定内容的whatsapp,然后您只需按Enter或点按发送按钮即可。

享受吧。