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

Posted

技术标签:

【中文标题】如何从我的 Android 应用程序将短信转发给选定的联系人到 whatsapp?【英文标题】:How to forward sms to selected contacts to whatsapp from my Android app? 【发布时间】:2017-06-21 19:29:10 【问题描述】:

几天后我被困在这里,我正在尝试将选定联系人的短信(从我的应用程序中预定义的设置)发送到什么应用程序,在 *** 的帮助下,我找到了两种将短信发送到 whatsapp 的方法。

第一种方法: 一种方法是将短信转发到whatsapp 好吧,但不能选择联系人,联系人可以从whatsapp 中选择,但我不希望那样。我希望联系人也应该从我的应用程序中选择。现在

第二种方法:第二种方法与第一种相反。此方法将选定的联系人发送到whatsapp 发送短信,但不发送(预定义短信)。 我的问题是我希望这两个东西都应该从我的应用程序 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);

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

【问题讨论】:

我猜不幸的是.. 它不是 p o s s i b l e @sajidHussain 尚不可能,因为 whatsapp 不提供从其他应用程序发送文本的这种功能。 【参考方案1】:

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

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

最佳推荐

【讨论】:

问题不是关于发送消息,而是关于与特定联系人发送消息首先阅读问题!【参考方案2】:

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

【讨论】:

【参考方案3】:

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

更多详情

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

【讨论】:

【参考方案4】:

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

// 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或点击发送按钮。

尽情享受吧。

【讨论】:

以上是关于如何从我的 Android 应用程序将短信转发给选定的联系人到 whatsapp?的主要内容,如果未能解决你的问题,请参考以下文章

从安卓应用链接短信

如何在 Android Kitkat 中设置我的短信应用默认值?

如何解决有关“使用短信或通话记录权限组”的Google Play警告

由于短信权限,Google Play 商店删除了我的应用

如何将崩溃信息从我的 Android 应用程序发送到我的服务器? [复制]

如何将文档从我的 mongodb 数据库发送到 android 应用程序?