Copy-Paste image in Android using Clipboard Manager

有些话、适合烂在心里 提交于 2019-11-30 13:17:21

问题


I would like to copy image from my android application to the other android application using clipboard manager. I have researched a lot and read this tutorial but it doesn't cover the image copying part. The below code which copies image but when I am trying to paste, only the image's path is pasted.

   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);

I tried to past in apps which support image pasting, so I guess the problem is "copy". Any answers and advises would be appreciated.


回答1:


This code works, just find appropriate app and OS to test it.

    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);

Edit: According to my further investigations, however, in most of Android platforms the image copy past is not possible because original android OS does not have such a feature. The code above works only for several cases where the OS is modified. For example, in Samsung Note tablet it works. And you can past the image in Polaris office. But Polaris is used the hidden API provided by Samsung, as that app comes with devices.



来源:https://stackoverflow.com/questions/15657592/copy-paste-image-in-android-using-clipboard-manager

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!