我们如何从 Android 应用程序直接向 whatsapp 发送图像?我尝试使用
Bitmap b = BitmapFactory.decodeResource(getResources(), R.drawable.ic_launcher);
Uri imageuri = getImageUri(getApplicationContext(), b);
Intent sendIntent = new Intent();
sendIntent.setAction(Intent.ACTION_SEND);
sendIntent.setPackage("com.whatsapp");
sendIntent.putExtra(Intent.EXTRA_TEXT, "This is my text to send.");
sendIntent.putExtra(Intent.EXTRA_STREAM, imageuri);
sendIntent.setType("image/*");
startActivity(sendIntent);
上面的代码打开了 whatsapp 的发送窗口。有没有其他方法可以不打开whats app窗口直接发送图片?
最佳答案
Android Intent 系统
与 Android 上的大多数社交应用程序一样,WhatsApp 会聆听共享媒体和文本的 Intent 。例如,只需创建一个共享文本的 Intent ,系统选择器就会显示 WhatsApp:
Intent sendIntent = new Intent();
sendIntent.setAction(Intent.ACTION_SEND);
sendIntent.putExtra(Intent.EXTRA_TEXT, "This is my text to send.");
sendIntent.setType("text/plain");
startActivity(sendIntent);
但是,如果您更喜欢直接分享到 WhatsApp 并绕过系统选择器,您可以使用 setPackage 来实现。在你的 Intent 中:
sendIntent.setPackage("com.whatsapp");
This would simply be set right before you call startActivity(sendIntent);
同样,您可以使用 Android 的 Intent 系统通过 WhatsApp 发送媒体,如果您只想发送到 WhatsApp,则再次使用 setPackage 将包限制为 WhatsApp。检查这个developer page获取更多信息。
自定义 URL 方案
WhatsApp 提供自定义 URL 方案来与 WhatsApp 交互:
如果您有一个网站并想打开带有预填消息的 WhatsApp 聊天,您可以使用我们的自定义 URL 方案来实现。打开 whatsapp://send?text= 后跟要发送的文本,将打开 WhatsApp,允许用户选择联系人,并使用指定的文本预填充输入字段。
以下是如何在您的网站上编写此内容的示例:
<a href="whatsapp://send?text=Hello%20World!">Hello, world!</a>
//非原创:您也可以通过 Java 代码调用此端点
关于android - 从 Android 应用程序向 whatsapp 发送消息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32309061/