diff --git a/.idea/caches/build_file_checksums.ser b/.idea/caches/build_file_checksums.ser index b28f89c..2c865a6 100644 Binary files a/.idea/caches/build_file_checksums.ser and b/.idea/caches/build_file_checksums.ser differ diff --git a/app-test/build.gradle b/app-test/build.gradle index 6a629b5..8e7d56c 100644 --- a/app-test/build.gradle +++ b/app-test/build.gradle @@ -8,7 +8,7 @@ android { compileSdkVersion 27 defaultConfig { applicationId "oupson.apngcreator" - minSdkVersion 25 + minSdkVersion 24 targetSdkVersion 26 versionCode 1 versionName "1.0" @@ -30,9 +30,10 @@ android { productFlavors { } } -ext.anko_version='0.10.6' +ext.anko_version = '0.10.6' dependencies { implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version" + //noinspection GradleCompatible implementation 'com.android.support:appcompat-v7:27.1.1' implementation 'com.android.support.constraint:constraint-layout:1.1.3' testImplementation 'junit:junit:4.12' diff --git a/app-test/src/main/AndroidManifest.xml b/app-test/src/main/AndroidManifest.xml index 9667448..4369a79 100644 --- a/app-test/src/main/AndroidManifest.xml +++ b/app-test/src/main/AndroidManifest.xml @@ -1,8 +1,11 @@ - - + + + + + + + + + + + + + + \ No newline at end of file diff --git a/app-test/src/main/java/oupson/apngcreator/Main2Activity.kt b/app-test/src/main/java/oupson/apngcreator/Main2Activity.kt new file mode 100644 index 0000000..bf2a872 --- /dev/null +++ b/app-test/src/main/java/oupson/apngcreator/Main2Activity.kt @@ -0,0 +1,63 @@ +package oupson.apngcreator + +import android.content.ContentResolver +import android.net.Uri +import android.os.Bundle +import android.provider.MediaStore +import android.support.v7.app.AppCompatActivity +import android.util.Log +import kotlinx.android.synthetic.main.activity_main2.* +import oupson.apng.ApngAnimator + +class Main2Activity : AppCompatActivity() { + + override fun onCreate(savedInstanceState: Bundle?) { + super.onCreate(savedInstanceState) + setContentView(R.layout.activity_main2) + + } + + override fun onResume() { + super.onResume() + val animator = ApngAnimator(imageView3) + val uri = intent.data + if (uri.toString().contains("file:///")) { + animator.load(uri.path) + } + Log.e("TAG", intent.data.toString()) + + animator.load(getImageRealPath(contentResolver, uri, null)) + } + + private fun getImageRealPath(contentResolver: ContentResolver, uri: Uri, whereClause: String?): String { + var ret = "" + + // Query the uri with condition. + val cursor = contentResolver.query(uri, null, whereClause, null, null) + + if (cursor != null) { + val moveToFirst = cursor.moveToFirst() + if (moveToFirst) { + + // Get columns name by uri type. + var columnName = MediaStore.Images.Media.DATA + + if (uri === MediaStore.Images.Media.EXTERNAL_CONTENT_URI) { + columnName = MediaStore.Images.Media.DATA + } else if (uri === MediaStore.Audio.Media.EXTERNAL_CONTENT_URI) { + columnName = MediaStore.Audio.Media.DATA + } else if (uri === MediaStore.Video.Media.EXTERNAL_CONTENT_URI) { + columnName = MediaStore.Video.Media.DATA + } + + // Get column index. + val imageColumnIndex = cursor.getColumnIndex(columnName) + + // Get column value which is the uri related file local path. + ret = cursor.getString(imageColumnIndex) + } + } + + return ret + } +} diff --git a/app-test/src/main/java/oupson/apngcreator/MainActivity.kt b/app-test/src/main/java/oupson/apngcreator/MainActivity.kt index 74ec105..a941106 100644 --- a/app-test/src/main/java/oupson/apngcreator/MainActivity.kt +++ b/app-test/src/main/java/oupson/apngcreator/MainActivity.kt @@ -26,7 +26,7 @@ import java.net.URL class MainActivity : AppCompatActivity() { lateinit var animator : ApngAnimator - val imageUrl = "https://cloud.githubusercontent.com/assets/13003036/24979875/e658e7c8-1fa3-11e7-908a-f1a201d38d52.png" + val imageUrl = "https://raw.githubusercontent.com/tinify/iMessage-Panda-sticker/master/Source/panda-original.png" override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) diff --git a/app-test/src/main/res/layout/activity_main2.xml b/app-test/src/main/res/layout/activity_main2.xml new file mode 100644 index 0000000..a31de56 --- /dev/null +++ b/app-test/src/main/res/layout/activity_main2.xml @@ -0,0 +1,22 @@ + + + + + \ No newline at end of file