如何在 Android 中将图像 URL 分享到 WhatsApp?

2023-11-30

我需要在我的应用程序中将图像分享到 WhatsApp。我有图片网址。为了分享到 WhatsApp,我使用以下代码。

String image_url = "http://images.cartradeexchange.com//img//800//vehicle//Honda_Brio_562672_5995_6_1438153637072.jpg";

URI uri = null;
try {
    uri = new URI(image_url.toString());
} catch (URISyntaxException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
}
Log.e("uri=", "" + uri);
Intent shareIntent = new Intent();
shareIntent.setAction(Intent.ACTION_SEND);
shareIntent.putExtra(Intent.EXTRA_STREAM, uri);
shareIntent.setType("image/jpg");

// Target whatsapp:
shareIntent.setPackage("com.whatsapp");
shareIntent.addFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION);

try {
    startActivity(shareIntent);
} catch (android.content.ActivityNotFoundException ex) {
    Toast.makeText(InventoryManageOnlineActivity.this,
            "Whatsapp have not been installed.",
            Toast.LENGTH_SHORT).show();
}

但这没有用。我收到以下错误。

08-26 11:57:34.674: W/Bundle(19447): Key android.intent.extra.STREAM expected Parcelable but value was a java.net.URI.  The default value <null> was returned.
08-26 11:57:34.738: W/Bundle(19447): Attempt to cast generated internal exception:
08-26 11:57:34.738: W/Bundle(19447): java.lang.ClassCastException: java.net.URI cannot be cast to android.os.Parcelable
08-26 11:57:34.738: W/Bundle(19447):    at android.os.Bundle.getParcelable(Bundle.java:810)
08-26 11:57:34.738: W/Bundle(19447):    at android.content.Intent.getParcelableExtra(Intent.java:4850)
08-26 11:57:34.738: W/Bundle(19447):    at android.content.Intent.migrateExtraStreamToClipData(Intent.java:7548)
08-26 11:57:34.738: W/Bundle(19447):    at android.app.Instrumentation.execStartActivity(Instrumentation.java:1545)
08-26 11:57:34.738: W/Bundle(19447):    at android.app.Activity.startActivityForResult(Activity.java:3746)
08-26 11:57:34.738: W/Bundle(19447):    at android.app.Activity.startActivityForResult(Activity.java:3707)
08-26 11:57:34.738: W/Bundle(19447):    at android.app.Activity.startActivity(Activity.java:4027)
08-26 11:57:34.738: W/Bundle(19447):    at android.app.Activity.startActivity(Activity.java:3989)
08-26 11:57:34.738: W/Bundle(19447):    at com.cartradrexchange.inventory.InventoryManageOnlineActivity$ManageOnlineAdapter.onClick(InventoryManageOnlineActivity.java:441)
08-26 11:57:34.738: W/Bundle(19447):    at android.view.View.performClick(View.java:4761)
08-26 11:57:34.738: W/Bundle(19447):    at android.view.View$PerformClick.run(View.java:19767)
08-26 11:57:34.738: W/Bundle(19447):    at android.os.Handler.handleCallback(Handler.java:739)
08-26 11:57:34.738: W/Bundle(19447):    at android.os.Handler.dispatchMessage(Handler.java:95)
08-26 11:57:34.738: W/Bundle(19447):    at android.os.Looper.loop(Looper.java:135)
08-26 11:57:34.738: W/Bundle(19447):    at android.app.ActivityThread.main(ActivityThread.java:5312)
08-26 11:57:34.738: W/Bundle(19447):    at java.lang.reflect.Method.invoke(Native Method)
08-26 11:57:34.738: W/Bundle(19447):    at java.lang.reflect.Method.invoke(Method.java:372)
08-26 11:57:34.738: W/Bundle(19447):    at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:901)
08-26 11:57:34.738: W/Bundle(19447):    at com.android.internal.os.ZygoteInit.main(Zygote

为此,我在谷歌上搜索了很多,然后我点击了下面的网址

Android 共享图片不起作用.

但这对我来说没有用。请告诉我如何共享图像 URL。


查看这个答案

如何在android中的ImageView上设置的whatsapp上共享图像.

顺便说一句,我不明白你为什么这么做image_url.toString()?它已经在字符串中了,对吗?

也尝试一下这个代码。

String image_url = "http://images.cartradeexchange.com//img//800//vehicle//Honda_Brio_562672_5995_6_1438153637072.jpg";

        Intent shareIntent = new Intent();
        shareIntent.setType("image/*");
        shareIntent.addFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION);
        shareIntent.setAction(Intent.ACTION_SEND);
        //without the below line intent will show error
        shareIntent.setType("text/plain");
        shareIntent.putExtra(Intent.EXTRA_TEXT, image_url);
                // Target whatsapp:
        shareIntent.setPackage("com.whatsapp");
        shareIntent.addFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION);

                try {
                    startActivity(shareIntent);
                } catch (android.content.ActivityNotFoundException ex) {
                    Toast.makeText(InventoryManageOnlineActivity.this,
                            "Whatsapp have not been installed.",
                            Toast.LENGTH_SHORT).show();
                }
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何在 Android 中将图像 URL 分享到 WhatsApp? 的相关文章

随机推荐

  • NSMutableArray 对副本的更改也会导致父 NSMutableArray 的更改

    我有一个 NSMutableArray 是我的委托 我也在我的视图控制器之一中使用它 所以在 viewDidLoad 中 我像这样制作了 NSMutableArray 的可变副本 implementation ItemsViewContro
  • 是什么原因导致 Android Dalvik java.lang.VerifyError“数组索引的注册表类型无效”?

    我最近将用于构建应用程序的 Android 构建工具从 19 1 0 升级到了 21 0 2 该应用程序编译 但当我启动它时 出现此错误 net i2p android W dalvikvm Invalid reg type for arr
  • 为什么故事板 ui 元素没有显示在 xcode 6 中的 UIViewController 上?

    我是IOS开发新手 我正在为 IOS 8 设备开发一个应用程序 我昨天使用故事板进行设计 我的故事板显示了所有 UI 设计 但今天早上它显示空白 UIViewController 没有 UI 元素视觉 请在屏幕截图中看到 非常奇怪的是 当我
  • 如何将工件从一个存储库移动到另一个存储库?

    我的项目现在从中央存储库获取工件 现在我创建了新的工件存储库 并希望我的项目从中获取工件 如何将所有工件从以前的中央存储库下载到新创建的存储库 Maven 存储库管理器 Nexus Artfactory Archiva 并非旨在镜像远程存储
  • 更改 profilepictureview 的大小:Facebook:preset_size 无效

    我正在尝试更改 ProfilePictureView 的大小 太小 但我无法通过 XML 执行此操作
  • 如果使用基指针声明,为什么简单析构函数不会删除派生对象[重复]

    这个问题在这里已经有答案了 int main Base p new Derived delete p return 0 我有一些困惑 为什么在这里删除 p 不会删除派生对象 是否使得派生对象包含基类型和指针的子对象p实际上是指向派生对象的基
  • 如何将 xsi:type 属性添加到 XML 元素

    如何在 xml 元素中添加 xsi type 我正在用 C 编写一个例程 它使用 XmlSerializer 序列化 Xml 文件 一切似乎都很好 除了一些我最初以为是次要的事情但结果并非如此 这是我的代码 public class Out
  • 将 magento 联系表单电子邮件的“发件人”字段更改为发件人

    如何将联系表单电子邮件的 发件人 字段更改为发件人的字段 例如 如果客户要使用电子邮件填写表格 电子邮件受保护 我怎样才能使生成的电子邮件来自 电子邮件受保护 我查看了系统管理面板中的 电子邮件发件人 字段 但这仅允许一系列预设的商店电子邮
  • JSP - 帮助在分页中生成固定数量的链接

    我的分页效果很好 但我无法理解如何生成固定数量的页面链接 例如 我需要这样有5个固定链接 1 2 3 4 5 gt 如果我点击第三页 我总是会看到 5 个链接 现在用我的算法我只能生成所有链接 但我不知道如何创建我上面解释的内容 这是我的代
  • Spring Data JPA 查询返回重复行而不是实际数据,为什么?

    实体类 public class Event Id private String name private String description private Date eventDateTime getter and setter co
  • HTML 表格不同行中的列数不同

    就像在 Excel 工作表中一样 我可以有 第一行 2 列 第 2 行 1 长列 这在html中可能吗 意识到你不熟悉colspan 我想你也不陌生rowspan 所以我想我会免费把它扔进去 使用时需要注意的重要一点rowspan 下列tr
  • 生成不重复的随机数数组[重复]

    这个问题在这里已经有答案了 我已经绞尽脑汁两天了 试图确保随机生成器方法不会生成重复项 我只需要使用循环来完成此操作 而不导入任何库 我已经找到了这个解决方案 从长远来看 这段代码会生成重复吗 如果是 请帮忙 int vargu1 new
  • SQL Server 的 SoundEx 函数在非拉丁字符集上?

    SQL Server 2000 是否Soundex 函数适用于亚洲字符集 我在查询中使用了它 它似乎没有正常工作 但我意识到这可能是因为我不知道如何阅读中文 此外 还有其他语言的函数可能会遇到问题吗 以俄语为例 谢谢你 Frank Soun
  • 有条件地子集化并计算闪亮数据框中的新变量

    我正在尝试在 Shiny 的数据框中计算一个新变量 该变量是根据另一个变量有条件计算的 这是我正在尝试做的一个小例子 mydata lt data frame cbind x 1 y 1 10 value lt 10 from user i
  • GPU 的哈希表实现[关闭]

    Closed 这个问题不符合堆栈溢出指南 目前不接受答案 我正在寻找可用于 CUDA 编码的哈希表实现 那里有什么好的吗 像Python字典之类的东西 我将使用字符串作为我的键 阿尔坎塔拉等人演示了一种在 GPU 上构建哈希表的数据并行算法
  • MediaPlayer.setDataSource 导致有效文件出现 IOException

    这段代码曾经有效 然后 也许我在某个地方改变了一些东西 或者如果我对 Android 很了解的话 更新会在媒体播放器中引入一个错误 它停止工作了some设备 特别是我的 Nexus S 2 3 6 文件test m4a 17 775 201
  • 从 dll 导出函数指针

    我在 dll 文件中有一个函数指针 在实现中 而不是标头中 如何在exe源代码中调用this指针指向的函数 您可以导出返回指针的函数 标题 typedef void MyPtr declspec dllexport MyPtr GetMyP
  • 写入视频文件并同时播放

    在我有趣的项目中 我从 youtube 下载视频文件 并写入本地磁盘上的文件 同时我也想玩一下 目的是将文件缓存在本地磁盘上 以便当我想再次观看视频时 应用程序可以在本地播放它 从而节省带宽 我在用着Python 3 3 1 PyQt4 P
  • 如何在 XML Schema 1.1 中使用替代方案

    从我读到的所有内容来看 我在下面定义的模式应该有效 强调替代方案 我收到以下错误 http www w3 org 2001 XMLSchema alternative 在此上下文中不支持元素 你能指出我做错了什么吗 这是我当前的架构
  • 如何在 Android 中将图像 URL 分享到 WhatsApp?

    我需要在我的应用程序中将图像分享到 WhatsApp 我有图片网址 为了分享到 WhatsApp 我使用以下代码 String image url http images cartradeexchange com img 800 vehic