通过 WhatsApp 按意图发送消息

Posted

技术标签:

【中文标题】通过 WhatsApp 按意图发送消息【英文标题】:Sending message through WhatsApp By intent 【发布时间】:2013-07-21 03:11:58 【问题描述】:

如何将我的应用程序中的按摩发送到 whatsapp 中的特殊号码,我知道此代码可以将按摩分享给 whatsapp 上的群组或联系人

Intent waIntent = new Intent(Intent.ACTION_SEND);
waIntent.setType("text/plain");
String text = "Sorry For Interruption,I'm Just Trying Something";
waIntent.setPackage("com.whatsapp");

if (waIntent != null) 
    waIntent.putExtra(Intent.EXTRA_TEXT, text);//
    startActivity(Intent.createChooser(waIntent,"Share with"));

但我想将按摩发送到“966xxxxxxx”之类的特殊号码,我该怎么做?

【问题讨论】:

除非whatsapp有能力这样做,否则没有办法做到这一点。 您需要 whatsapp 来了解您的意图中的额外字段。所以如果whatsapp不能做到这一点,你就没有办法实现你的目标。尝试搜索有关 whatsapp BroadcastReveivers 以及如何解析 Intent 的文档。 谢谢,我找到了解决方案:) Sending message through WhatsApp 的可能重复项 【参考方案1】:

这是一个解决方案:

private void openWhatsApp(String id) 

Cursor c = getSherlockActivity().getContentResolver()
            .query(ContactsContract.Data.CONTENT_URI,
                  new String[]  ContactsContract.Contacts.Data._ID ,  
                  ContactsContract.Data.DATA1 + "=?",
                  new String[]  id , 
                  null);

c.moveToFirst();
Intent i = new Intent(Intent.ACTION_VIEW, 
              Uri.parse(
                   "content://com.android.contacts/data/" +           
                    c.getString(0)));

startActivity(i);
c.close();

其中 id 是什么是应用程序 uri,例如 966123456789@s.whatsapp.net

【讨论】:

真的有效吗?,代码可以发送whatsapp消息吗?还是只查看联系信息? @Sieryuu 它只是打开特定联系人的聊天记录。【参考方案2】:

您可以使用此代码向特定号码发送数据

void openWhatsappContact(String number) 
Uri uri = Uri.parse("smsto:" + number);
Intent i = new Intent(Intent.ACTION_SENDTO, uri);
i.setPackage("com.whatsapp");  
startActivity(Intent.createChooser(i, ""));

这对我真的有用 享受你的代码:)

【讨论】:

它只是打开该号码的聊天控制台。消息被传递到聊天控制台。 Intent.createChooser(i, "message") 也没有效果。 嗨,约翰,有什么方法可以让我发送到群组吗? 还没有。据我所知。

以上是关于通过 WhatsApp 按意图发送消息的主要内容,如果未能解决你的问题,请参考以下文章

通过 Android Intent 发送到 Whatsapp 的链接

如何从我的 Android 应用程序通过 WhatsApp 向特定联系人发送消息?

如何从我的应用程序发送应用程序邀请(通过whatsapp、hike、消息)

将 Whatsapp 消息发送到特定的联系号码(Swift 项目)

如何使用 WhatsAPI Official 从 PHP 中的 WhatsApp 发送消息?

有没有办法从桌面/服务器盒发送WhatsApp消息?