使用剪贴板经理在Android的复制粘贴图像(Copy-Paste image in Android

2019-08-18 01:50发布

我想从我的Android应用程序复制图像,使用剪贴板管理的其他android应用。 我已经研究了很多,阅读本教程,但它不包括图像复制的一部分。 下面的代码拷贝图像,但是当我试图粘贴,只图像的路径粘贴。

   ContentValues values = new ContentValues(2);
    values.put(MediaStore.Images.Media.MIME_TYPE, "image/png");
    values.put(MediaStore.Images.Media.DATA, "/mnt/sdcard/1.jpg");
    ContentResolver theContent = getContentResolver();
    Uri imageUri = theContent.insert(MediaStore.Images.Media.EXTERNAL_CONTENT_URI, values);
    ClipData theClip = ClipData.newUri(getContentResolver(), "Image", imageUri);
    mClipboard.setPrimaryClip(theClip);

我试图让过去支持图像粘贴的应用程序,所以我想这个问题是“复制”。 任何答案和建议,将不胜感激。

Answer 1:

此代码的工作,只要找到合适的应用程序和操作系统进行测试。

    ClipboardManager mClipboard = (ClipboardManager) getSystemService(Context.CLIPBOARD_SERVICE);
    ContentValues values = new ContentValues(2);
    values.put(MediaStore.Images.Media.MIME_TYPE, "Image/jpg");
    values.put(MediaStore.Images.Media.DATA, filename.getAbsolutePath());
    ContentResolver theContent = getContentResolver();
    Uri imageUri = theContent.insert(MediaStore.Images.Media.EXTERNAL_CONTENT_URI, values);
    ClipData theClip = ClipData.newUri(getContentResolver(), "Image", imageUri);
    mClipboard.setPrimaryClip(theClip);

编辑:据我进一步的调查,但是,在大多数的Android平台的图像复制过去,因为原来的Android操作系统不具备这样的功能是不可能的。 上面的代码仅适用于几种情况,其中OS被修改。 例如,在三星平板电脑说明它的工作原理。 你可以过去北极星办公室的形象。 但宝来使用由三星提供的隐藏API,为应用程序自带的设备。



文章来源: Copy-Paste image in Android using Clipboard Manager