Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/scala/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在android中将图像/文件复制到剪贴板?是否有其他方法/步骤来实现此目的_Android_Clipboard - Fatal编程技术网

如何在android中将图像/文件复制到剪贴板?是否有其他方法/步骤来实现此目的

如何在android中将图像/文件复制到剪贴板?是否有其他方法/步骤来实现此目的,android,clipboard,Android,Clipboard,我想将图像/文件复制到剪贴板。我已经在谷歌上搜索过了,但我没有找到任何替代/建议。但我看到一些应用程序在应用程序商店中完成。想知道我们如何才能做到这一点 有谁能帮我或给我一些建议吗 我发现了这一点,但现在知道了如何实现这一功能。我认为您无法在剪贴板中复制文件/图像。您可以这样做: 创建一个类似(ES浏览器)的文件浏览器应用程序。您可以使用内容提供商(不确定)创建文件浏览器应用程序,并在列表视图中显示文件夹/文件 让我们假设在应用程序中,ListView中的一个项目表示一个文件/图像。长按此按钮可

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

有谁能帮我或给我一些建议吗


我发现了这一点,但现在知道了如何实现这一功能。

我认为您无法在剪贴板中复制文件/图像。您可以这样做:

  • 创建一个类似(ES浏览器)的文件浏览器应用程序。您可以使用内容提供商(不确定)创建文件浏览器应用程序,并在列表视图中显示文件夹/文件

  • 让我们假设在应用程序中,ListView中的一个项目表示一个文件/图像。长按此按钮可打开一个弹出窗口。使用剪切/复制/移动/删除等选项。因为您拥有每个文件/图像的绝对路径。您可以使用JAVA文件处理来:

  • a) 删除一个文件

    b) 将其从一个位置移动到另一个位置

    c) 创建文件的副本

    等等,Android只支持文本和Uri。因此,您无法通过剪贴板实现图像数据的复制

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


    如果你想在应用程序中复制/粘贴,那么我建议你编写自己版本的ClipboardManager,并做任何你想做的事情:)

    有关如何在Android中复制/粘贴图像/文件的详细信息,请阅读Android官方文档

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

  • 数据源(从中复制数据的应用程序)应创建一个ContentProvider并生成一个Uri,该Uri可用于检索图像/文件。Uri看起来像content://[application package name]/path/to/file
  • 数据目标(将数据复制到的应用程序)从ClipboardManager和用户ContentResolver获取Uri以检索图像/文件
  • 如您所见,只有当两个应用程序一起工作时,才能实现复制/粘贴。不幸的是,大多数Android应用程序都没有遵循这一规则

    例如,在Android应用程序中,当你在谷歌文档中复制图像时,它将生成一个无效的Uri。你无法想象,即使谷歌本身也不遵守Android官方的复制/粘贴规则

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

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

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


    为了讨论您的需求,我想您希望充当复制数据源。尽管您自己的应用程序支持复制,但只要复制数据目标应用程序不遵循复制/粘贴框架,您就无法完成粘贴操作。

    那么,您正在编写一个Android应用程序,对吗?到目前为止,你在哪里尝试过?请看@Raptor:ThePost从剪贴板获取数据,但我要求将数据复制到剪贴板,然后我可以将数据粘贴到其他应用程序上,如messages/what's app。。如果我错了,请纠正我。谢谢你的帮助其中一个答案表明这样做是不可能的,至少不是建议的方式。您可以启动一个意图。根据您的评论,共享意图应该足以将类型设置为“image/*”。谢谢Ashish Rathee,我会尝试让您知道。非常感谢您的详细说明,您节省了我的时间!:)有关访问三星设备剪贴板数据中的图像的任何进展?我想建议您,我对制作自己的ClipboardManager感兴趣,如果您有任何示例代码或解决方案链接,请与我分享。