From 0de94f40f38a9da05835c85a2d79bb8be848b76b Mon Sep 17 00:00:00 2001 From: Saber Date: Thu, 7 Feb 2019 23:49:44 +0800 Subject: [PATCH 1/2] add content decoder --- .../me/kareluo/imaging/IMGEditActivity.java | 3 ++ .../imaging/core/file/IMGContentDecoder.java | 45 +++++++++++++++++++ 2 files changed, 48 insertions(+) create mode 100644 image/src/main/java/me/kareluo/imaging/core/file/IMGContentDecoder.java diff --git a/image/src/main/java/me/kareluo/imaging/IMGEditActivity.java b/image/src/main/java/me/kareluo/imaging/IMGEditActivity.java index bd194c5..e40bd45 100644 --- a/image/src/main/java/me/kareluo/imaging/IMGEditActivity.java +++ b/image/src/main/java/me/kareluo/imaging/IMGEditActivity.java @@ -59,6 +59,9 @@ public Bitmap getBitmap() { case "file": decoder = new IMGFileDecoder(uri); break; + case "content": + decoder = new IMGContentDecoder(uri, getContentResolver()); + break; } } diff --git a/image/src/main/java/me/kareluo/imaging/core/file/IMGContentDecoder.java b/image/src/main/java/me/kareluo/imaging/core/file/IMGContentDecoder.java new file mode 100644 index 0000000..f18282b --- /dev/null +++ b/image/src/main/java/me/kareluo/imaging/core/file/IMGContentDecoder.java @@ -0,0 +1,45 @@ +package me.kareluo.imaging.core.file; + +import android.content.ContentResolver; +import android.graphics.Bitmap; +import android.graphics.BitmapFactory; +import android.net.Uri; + +import java.io.FileNotFoundException; +import java.io.InputStream; + +public class IMGContentDecoder extends IMGDecoder { + + private ContentResolver _resolver; + + public IMGContentDecoder(Uri uri) { + super(uri); + } + + public IMGContentDecoder(Uri uri,ContentResolver resolver){ + super(uri); + _resolver = resolver; + } + + + @Override + public Bitmap decode(BitmapFactory.Options options) { + if(_resolver == null) + return null; + InputStream is; + try { + is = _resolver.openInputStream(getUri()); + } catch (FileNotFoundException e) { + return null; + } + return BitmapFactory.decodeStream(is,null,options); + } + + public ContentResolver getResolver(){ + return _resolver; + } + + public void setResolver(ContentResolver resolver){ + _resolver = resolver; + } +} From 4198291c4a58adb84ca71e31ea8d7321974ef98a Mon Sep 17 00:00:00 2001 From: EdgeNeko Date: Fri, 8 Feb 2019 12:20:29 +0800 Subject: [PATCH 2/2] add import --- image/src/main/java/me/kareluo/imaging/IMGEditActivity.java | 1 + 1 file changed, 1 insertion(+) diff --git a/image/src/main/java/me/kareluo/imaging/IMGEditActivity.java b/image/src/main/java/me/kareluo/imaging/IMGEditActivity.java index e40bd45..b72cdde 100644 --- a/image/src/main/java/me/kareluo/imaging/IMGEditActivity.java +++ b/image/src/main/java/me/kareluo/imaging/IMGEditActivity.java @@ -11,6 +11,7 @@ import me.kareluo.imaging.core.file.IMGAssetFileDecoder; import me.kareluo.imaging.core.file.IMGDecoder; import me.kareluo.imaging.core.file.IMGFileDecoder; +import me.kareluo.imaging.core.file.IMGContentDecoder; import me.kareluo.imaging.core.util.IMGUtils; import java.io.FileNotFoundException;