在Android中如何将图片/文件复制到剪贴板?有没有其他替代方法或步骤可以实现这个功能?

13

我想将图像/文件复制到剪贴板。我已经谷歌搜索过,但没有找到任何替代方法或建议。但我在应用商店中看到了一些应用程序。想知道如何实现这一点。

请有人帮帮我或提供一些建议吗?

我找到了这个链接,但不知道如何实现此功能。


所以,你正在编写 Android 应用程序,对吧?你目前尝试了哪些? - Raptor
请查看此链接:http://stackoverflow.com/questions/8998325/copying-an-image-from-the-clipboard - Raptor
@Raptor:那篇帖子是从剪贴板获取数据,但我想要将数据复制到剪贴板,然后可以在其他应用程序中粘贴,比如信息/WhatsApp等。如果我错了,请纠正我。感谢您的帮助。 - Satish Kutikuppala
其中一个答案表明这似乎不可能,至少没有推荐的方法。您可以选择启动一个 Intent 代替。 - Raptor
1
根据您的评论,分享意图应该足够了,例如将类型设置为“image / *”。 - Edson Menegatti
@SatishKutikuppala,你提到了哪个可以将图像复制到剪贴板的Android应用程序? - TOP
3个回答

16

关于如何在 Android 上复制/粘贴图像/文件的详细信息,请阅读此处的 Android 官方文档。

简而言之,复制/粘贴图像/文件遵循以下步骤:

  1. 数据源(从中复制数据的应用程序)应创建 ContentProvider 并生成可用于检索图像/文件的 Uri。Uri 的格式类似于 content://[应用程序包名称]/path/to/file
  2. 数据目的地(将数据粘贴到的应用程序)从 ClipboardManager 获取 Uri,并使用 ContentResolver 检索图像/文件。

正如您所看到的,只有当两个应用程序共同工作时,才能实现复制/粘贴功能。不幸的是,大多数 Android 应用程序没有遵循此规则。

例如,Google 文档 Android 应用程序,在 Google 文档中复制图像时,会生成无效的 Uri。甚至连 Google 自己都没有遵循 Android 官方复制/粘贴规则。

我已经测试了许多主流编辑应用程序,包括Microsoft WordEvernote,它们甚至都不支持复制图像。

通过我的测试,我发现在一些三星 Android 手机上可以复制/粘贴图像/文件(例如,您可以从原装浏览器中复制图像到三星 Galaxy Note3 上的消息应用程序中)。然而,三星并没有遵循 Android 复制/粘贴框架。他们使用自己的机制实现复制/粘贴,这意味着第三方应用程序无法访问剪贴板数据。

因此,我认为 Android 应用程序要遵循 Android 官方复制/粘贴框架还有很长的路要走。

谈到您的需求,我猜想您希望能扮演复制数据源的角色。虽然您自己的应用程序支持复制,但只要复制的数据目标应用程序不遵循复制/粘贴框架,您就无法完成粘贴操作。


2
非常感谢您的详细解释,您节省了我的时间! :) - Jenix
三星设备中访问剪贴板数据中的图像有什么进展吗? - nhoxbypass

2

Android的ClipData.Item仅支持文本和Uri。因此,您无法通过剪贴板复制图像数据。

一种可能的解决方案是将图像数据保存在某种存储中,并复制相同的内容URI。但是,这不会使您的生活更轻松,因为复制的数据将对所有可以从ClipboardManager获取数据的编辑器可用,他们可能不知道如何处理此类型的数据。

如果您想要在应用程序中进行复制/粘贴,则建议编写您自己版本的ClipboardManager并随意操作 :)


我想向您建议,我对制作自己的ClipboardManager很感兴趣,如果您有任何示例代码或解决方案链接,请与我分享。 - Kishan Donga

2
我认为你不能复制剪贴板中的文件/图像。你可以做类似于(ES Explorer)的文件浏览器应用程序。你可以使用内容提供者(不确定)创建文件浏览器应用程序,并在列表视图中显示文件夹/文件。假设在应用程序中,ListView中的一个项目表示一个文件/图像。长按它会打开一个弹出窗口,其中包含一些选项,如剪切/复制/移动/删除。由于你拥有每个文件/图像的绝对路径,因此你可以使用JAVA文件处理来:
a) 删除文件。
b) 将其从一个位置移动到另一个位置
c) 创建文件的副本
等等。

谢谢Ashish Rathee,我会尝试并告诉你。 - Satish Kutikuppala

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接