From d5cc694e7891b4a157015107f0f508fd5f4fca91 Mon Sep 17 00:00:00 2001 From: wangsen Date: Thu, 22 Jul 2021 22:11:02 +0800 Subject: [PATCH 01/28] =?UTF-8?q?=E6=9B=B4=E6=96=B0=E7=BB=84=E4=BB=B6?= =?UTF-8?q?=E3=80=81=E4=BE=9D=E8=B5=96=EF=BC=8C=E7=9B=AE=E6=A0=87=20API=20?= =?UTF-8?q?=E5=8D=87=E7=BA=A7=E5=88=B0=20Android=2012=EF=BC=8C=E5=8D=87?= =?UTF-8?q?=E7=BA=A7=E5=88=B0=20AndroidX=EF=BC=8C=E9=87=8D=E6=9E=84?= =?UTF-8?q?=E4=BB=A3=E7=A0=81=E3=80=81=E5=B8=83=E5=B1=80=EF=BC=8C=E7=A7=BB?= =?UTF-8?q?=E9=99=A4=E5=BA=9F=E5=BC=83=E7=9A=84=E6=96=B9=E6=B3=95=EF=BC=8C?= =?UTF-8?q?=E6=A0=BC=E5=BC=8F=E5=8C=96=E4=BB=A3=E7=A0=81=E7=AD=89?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .gitignore | 2 ++ .idea/misc.xml | 35 +++++++++++++++++-- .idea/modules.xml | 6 ++-- .idea/runConfigurations.xml | 12 ------- app/build.gradle | 17 ++++----- app/src/main/AndroidManifest.xml | 4 ++- .../com/lcw/demo/imagepicker/GlideLoader.java | 2 +- .../lcw/demo/imagepicker/MApplication.java | 2 +- .../lcw/demo/imagepicker/MainActivity.java | 14 ++++---- app/src/main/res/layout/activity_main.xml | 1 - build.gradle | 14 ++------ gradle.properties | 1 + gradle/wrapper/gradle-wrapper.properties | 2 +- imagepicker/build.gradle | 24 ++++--------- imagepicker/src/main/AndroidManifest.xml | 3 +- .../lcw/library/imagepicker/ImagePicker.java | 2 +- .../imagepicker/activity/BaseActivity.java | 10 +++--- .../activity/ImagePickerActivity.java | 12 ++++--- .../activity/ImagePreActivity.java | 7 ++-- .../adapter/ImageFoldersAdapter.java | 11 +++--- .../adapter/ImagePickerAdapter.java | 8 +++-- .../adapter/ImagePreViewAdapter.java | 7 ++-- .../library/imagepicker/data/ItemType.java | 2 +- .../library/imagepicker/data/MediaFile.java | 3 +- .../library/imagepicker/data/MediaFolder.java | 4 +-- .../imagepicker/executors/CommonExecutor.java | 5 ++- .../listener/MediaLoadCallback.java | 3 +- .../imagepicker/loader/AbsMediaScanner.java | 3 +- .../imagepicker/loader/ImageScanner.java | 24 ++++--------- .../imagepicker/loader/MediaHandler.java | 4 +-- .../imagepicker/loader/VideoScanner.java | 26 +++++--------- .../imagepicker/manager/ConfigManager.java | 2 +- .../imagepicker/manager/SelectionManager.java | 4 +-- .../provider/ImagePickerProvider.java | 6 ++-- .../imagepicker/task/ImageLoadTask.java | 5 +-- .../imagepicker/task/MediaLoadTask.java | 4 +-- .../imagepicker/task/VideoLoadTask.java | 7 +--- .../library/imagepicker/utils/DataUtil.java | 5 +-- .../imagepicker/utils/ImageLoader.java | 3 +- .../imagepicker/utils/MediaFileUtil.java | 3 +- .../imagepicker/utils/PermissionUtil.java | 6 ++-- .../lcw/library/imagepicker/utils/Utils.java | 4 +-- .../imagepicker/view/HackyViewPager.java | 5 +-- .../view/ImageFolderPopupWindow.java | 9 +++-- .../imagepicker/view/PinchImageView.java | 6 ++-- .../imagepicker/view/SquareImageView.java | 8 +++-- .../view/SquareRelativeLayout.java | 7 ++-- .../main/res/layout/activity_imagepicker.xml | 5 ++- .../main/res/layout/activity_pre_image.xml | 7 ++-- .../res/layout/include_layout_actionbar.xml | 4 +-- .../res/layout/item_recyclerview_folder.xml | 5 ++- .../res/layout/item_recyclerview_image.xml | 1 - .../res/layout/item_recyclerview_video.xml | 1 - .../main/res/layout/window_image_folders.xml | 6 ++-- settings.gradle | 2 +- 55 files changed, 167 insertions(+), 218 deletions(-) delete mode 100644 .idea/runConfigurations.xml diff --git a/.gitignore b/.gitignore index 39b6783..2cfdd1e 100644 --- a/.gitignore +++ b/.gitignore @@ -63,3 +63,5 @@ fastlane/Preview.html fastlane/screenshots fastlane/test_output fastlane/readme.md +/.idea/compiler.xml +/.idea/jarRepositories.xml diff --git a/.idea/misc.xml b/.idea/misc.xml index 99202cc..d84c130 100644 --- a/.idea/misc.xml +++ b/.idea/misc.xml @@ -1,31 +1,60 @@ + + + - + diff --git a/.idea/modules.xml b/.idea/modules.xml index 20f0892..5a412f5 100644 --- a/.idea/modules.xml +++ b/.idea/modules.xml @@ -2,9 +2,9 @@ - - - + + + \ No newline at end of file diff --git a/.idea/runConfigurations.xml b/.idea/runConfigurations.xml deleted file mode 100644 index 7f68460..0000000 --- a/.idea/runConfigurations.xml +++ /dev/null @@ -1,12 +0,0 @@ - - - - - - \ No newline at end of file diff --git a/app/build.gradle b/app/build.gradle index 60e722d..9a16f83 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -1,11 +1,12 @@ apply plugin: 'com.android.application' android { - compileSdkVersion 27 + compileSdkVersion 31 + buildToolsVersion '31.0.0' defaultConfig { applicationId "com.lcw.demo.imagepicker" minSdkVersion 16 - targetSdkVersion 27 + targetSdkVersion 31 versionCode 228 versionName "2.2.8" } @@ -15,7 +16,6 @@ android { proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' } } - lintOptions { abortOnError false } @@ -23,11 +23,8 @@ android { dependencies { implementation fileTree(include: ['*.jar'], dir: 'libs') - implementation 'com.android.support:appcompat-v7:27.1.1' - implementation 'com.github.bumptech.glide:glide:4.9.0' - annotationProcessor 'com.github.bumptech.glide:compiler:4.9.0' - -// implementation 'com.lcw.library:imagepicker:2.2.7' + implementation 'androidx.appcompat:appcompat:1.4.0-alpha03' + implementation 'com.github.bumptech.glide:glide:4.12.0' + annotationProcessor 'com.github.bumptech.glide:compiler:4.12.0' implementation project(':imagepicker') - -} +} \ No newline at end of file diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index 3ad03e5..72cb2f7 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -10,7 +10,9 @@ android:roundIcon="@mipmap/ic_launcher_round" android:supportsRtl="true" android:theme="@style/AppTheme"> - + diff --git a/app/src/main/java/com/lcw/demo/imagepicker/GlideLoader.java b/app/src/main/java/com/lcw/demo/imagepicker/GlideLoader.java index 8bf60f7..ad09dee 100644 --- a/app/src/main/java/com/lcw/demo/imagepicker/GlideLoader.java +++ b/app/src/main/java/com/lcw/demo/imagepicker/GlideLoader.java @@ -44,4 +44,4 @@ public void clearMemoryCache() { //清理缓存 Glide.get(MApplication.getContext()).clearMemory(); } -} +} \ No newline at end of file diff --git a/app/src/main/java/com/lcw/demo/imagepicker/MApplication.java b/app/src/main/java/com/lcw/demo/imagepicker/MApplication.java index 0140603..d830a0c 100644 --- a/app/src/main/java/com/lcw/demo/imagepicker/MApplication.java +++ b/app/src/main/java/com/lcw/demo/imagepicker/MApplication.java @@ -21,4 +21,4 @@ public void onCreate() { public static MApplication getContext() { return mApplication; } -} +} \ No newline at end of file diff --git a/app/src/main/java/com/lcw/demo/imagepicker/MainActivity.java b/app/src/main/java/com/lcw/demo/imagepicker/MainActivity.java index ad2c5f1..c9e45ce 100644 --- a/app/src/main/java/com/lcw/demo/imagepicker/MainActivity.java +++ b/app/src/main/java/com/lcw/demo/imagepicker/MainActivity.java @@ -2,18 +2,17 @@ import android.content.Intent; import android.os.Bundle; -import android.support.v7.app.AppCompatActivity; import android.view.View; import android.widget.TextView; +import androidx.appcompat.app.AppCompatActivity; + import com.lcw.library.imagepicker.ImagePicker; import java.util.ArrayList; public class MainActivity extends AppCompatActivity { - private TextView mTextView; - private static final int REQUEST_SELECT_IMAGES_CODE = 0x01; private ArrayList mImagePaths; @@ -38,19 +37,20 @@ public void onClick(View v) { .start(MainActivity.this, REQUEST_SELECT_IMAGES_CODE);//REQEST_SELECT_IMAGES_CODE为Intent调用的requestCode } }); - } @Override protected void onActivityResult(int requestCode, int resultCode, Intent data) { + super.onActivityResult(requestCode, resultCode, data); + if (requestCode == REQUEST_SELECT_IMAGES_CODE && resultCode == RESULT_OK) { mImagePaths = data.getStringArrayListExtra(ImagePicker.EXTRA_SELECT_IMAGES); - StringBuffer stringBuffer = new StringBuffer(); + StringBuilder stringBuffer = new StringBuilder(); stringBuffer.append("当前选中图片路径:\n\n"); for (int i = 0; i < mImagePaths.size(); i++) { - stringBuffer.append(mImagePaths.get(i) + "\n\n"); + stringBuffer.append(mImagePaths.get(i)).append("\n\n"); } mTextView.setText(stringBuffer.toString()); } } -} +} \ No newline at end of file diff --git a/app/src/main/res/layout/activity_main.xml b/app/src/main/res/layout/activity_main.xml index 5e94926..86aaeef 100644 --- a/app/src/main/res/layout/activity_main.xml +++ b/app/src/main/res/layout/activity_main.xml @@ -19,5 +19,4 @@ android:layout_marginTop="20dp" android:textColor="@color/text_color_white" /> - \ No newline at end of file diff --git a/build.gradle b/build.gradle index 49b6d1c..a1e058b 100644 --- a/build.gradle +++ b/build.gradle @@ -1,16 +1,12 @@ // Top-level build file where you can add configuration options common to all sub-projects/modules. buildscript { - repositories { google() jcenter() } dependencies { - classpath 'com.android.tools.build:gradle:3.1.2' - classpath 'com.novoda:bintray-release:0.8.0' - - + classpath 'com.android.tools.build:gradle:7.1.0-alpha04' // NOTE: Do not place your application dependencies here; they belong // in the individual module build.gradle files } @@ -21,14 +17,8 @@ allprojects { google() jcenter() } - - tasks.withType(Javadoc) { - options.addStringOption('Xdoclint:none', '-quiet') - options.addStringOption('encoding', 'UTF-8') - } - } task clean(type: Delete) { delete rootProject.buildDir -} +} \ No newline at end of file diff --git a/gradle.properties b/gradle.properties index 743d692..3171704 100644 --- a/gradle.properties +++ b/gradle.properties @@ -11,3 +11,4 @@ org.gradle.jvmargs=-Xmx1536m # This option should only be used with decoupled projects. More details, visit # http://www.gradle.org/docs/current/userguide/multi_project_builds.html#sec:decoupled_projects # org.gradle.parallel=true +android.useAndroidX=true \ No newline at end of file diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties index c459843..91522ef 100644 --- a/gradle/wrapper/gradle-wrapper.properties +++ b/gradle/wrapper/gradle-wrapper.properties @@ -3,4 +3,4 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-4.4-all.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-7.1.1-all.zip \ No newline at end of file diff --git a/imagepicker/build.gradle b/imagepicker/build.gradle index 642bf65..db5e6af 100644 --- a/imagepicker/build.gradle +++ b/imagepicker/build.gradle @@ -1,35 +1,23 @@ apply plugin: 'com.android.library' -apply plugin: 'com.novoda.bintray-release' - -publish { - userOrg = 'lichenwei' - groupId = 'com.lcw.library' - artifactId = 'imagepicker' - publishVersion = '2.2.8' - desc = 'Android image picker library' - website = 'https://github.com/Lichenwei-Dev/ImagePicker' -} android { - compileSdkVersion 27 + compileSdkVersion 31 + buildToolsVersion '31.0.0' defaultConfig { minSdkVersion 16 - targetSdkVersion 27 + targetSdkVersion 31 versionCode 228 versionName "2.2.8" } - buildTypes { release { minifyEnabled false proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' } } - lintOptions { abortOnError false } - } repositories { @@ -39,6 +27,6 @@ repositories { dependencies { implementation fileTree(include: ['*.jar'], dir: 'libs') - implementation 'com.android.support:appcompat-v7:27.1.1' - implementation 'com.android.support:recyclerview-v7:27.1.1' -} + implementation 'androidx.appcompat:appcompat:1.4.0-alpha03' + implementation 'androidx.recyclerview:recyclerview:1.2.1' +} \ No newline at end of file diff --git a/imagepicker/src/main/AndroidManifest.xml b/imagepicker/src/main/AndroidManifest.xml index 3613136..8c69474 100644 --- a/imagepicker/src/main/AndroidManifest.xml +++ b/imagepicker/src/main/AndroidManifest.xml @@ -2,7 +2,6 @@ package="com.lcw.library.imagepicker"> - @@ -28,4 +27,4 @@ - + \ No newline at end of file diff --git a/imagepicker/src/main/java/com/lcw/library/imagepicker/ImagePicker.java b/imagepicker/src/main/java/com/lcw/library/imagepicker/ImagePicker.java index bf7fffe..cac5aa1 100644 --- a/imagepicker/src/main/java/com/lcw/library/imagepicker/ImagePicker.java +++ b/imagepicker/src/main/java/com/lcw/library/imagepicker/ImagePicker.java @@ -153,4 +153,4 @@ public void start(Activity activity, int requestCode) { activity.startActivityForResult(intent, requestCode); } -} +} \ No newline at end of file diff --git a/imagepicker/src/main/java/com/lcw/library/imagepicker/activity/BaseActivity.java b/imagepicker/src/main/java/com/lcw/library/imagepicker/activity/BaseActivity.java index ace5b90..902a57d 100644 --- a/imagepicker/src/main/java/com/lcw/library/imagepicker/activity/BaseActivity.java +++ b/imagepicker/src/main/java/com/lcw/library/imagepicker/activity/BaseActivity.java @@ -2,12 +2,13 @@ import android.os.Build; import android.os.Bundle; -import android.support.annotation.Nullable; -import android.support.v7.app.AppCompatActivity; import android.view.View; import android.view.Window; import android.view.WindowManager; +import androidx.annotation.Nullable; +import androidx.appcompat.app.AppCompatActivity; + import com.lcw.library.imagepicker.R; /** @@ -44,7 +45,6 @@ protected void onCreate(@Nullable Bundle savedInstanceState) { getData(); } - protected abstract int bindLayout(); protected void initConfig() { @@ -55,6 +55,4 @@ protected void initConfig() { protected abstract void initListener(); protected abstract void getData(); - - -} +} \ No newline at end of file diff --git a/imagepicker/src/main/java/com/lcw/library/imagepicker/activity/ImagePickerActivity.java b/imagepicker/src/main/java/com/lcw/library/imagepicker/activity/ImagePickerActivity.java index 2e819d0..95f0508 100644 --- a/imagepicker/src/main/java/com/lcw/library/imagepicker/activity/ImagePickerActivity.java +++ b/imagepicker/src/main/java/com/lcw/library/imagepicker/activity/ImagePickerActivity.java @@ -10,11 +10,6 @@ import android.os.Environment; import android.os.Handler; import android.provider.MediaStore; -import android.support.annotation.NonNull; -import android.support.v4.app.ActivityCompat; -import android.support.v4.content.FileProvider; -import android.support.v7.widget.GridLayoutManager; -import android.support.v7.widget.RecyclerView; import android.text.TextUtils; import android.view.View; import android.view.WindowManager; @@ -23,6 +18,12 @@ import android.widget.TextView; import android.widget.Toast; +import androidx.annotation.NonNull; +import androidx.core.app.ActivityCompat; +import androidx.core.content.FileProvider; +import androidx.recyclerview.widget.GridLayoutManager; +import androidx.recyclerview.widget.RecyclerView; + import com.lcw.library.imagepicker.ImagePicker; import com.lcw.library.imagepicker.R; import com.lcw.library.imagepicker.adapter.ImageFoldersAdapter; @@ -566,6 +567,7 @@ public void onImageFolderChange(View view, int position) { */ @Override protected void onActivityResult(int requestCode, int resultCode, Intent data) { + super.onActivityResult(requestCode, resultCode, data); if (resultCode == RESULT_OK) { if (requestCode == REQUEST_CODE_CAPTURE) { //通知媒体库刷新 diff --git a/imagepicker/src/main/java/com/lcw/library/imagepicker/activity/ImagePreActivity.java b/imagepicker/src/main/java/com/lcw/library/imagepicker/activity/ImagePreActivity.java index 1e46528..02d6f47 100644 --- a/imagepicker/src/main/java/com/lcw/library/imagepicker/activity/ImagePreActivity.java +++ b/imagepicker/src/main/java/com/lcw/library/imagepicker/activity/ImagePreActivity.java @@ -4,14 +4,15 @@ import android.content.pm.PackageManager; import android.content.pm.ResolveInfo; import android.net.Uri; -import android.support.v4.content.FileProvider; -import android.support.v4.view.ViewPager; import android.view.View; import android.widget.ImageView; import android.widget.LinearLayout; import android.widget.TextView; import android.widget.Toast; +import androidx.core.content.FileProvider; +import androidx.viewpager.widget.ViewPager; + import com.lcw.library.imagepicker.R; import com.lcw.library.imagepicker.adapter.ImagePreViewAdapter; import com.lcw.library.imagepicker.data.MediaFile; @@ -212,4 +213,4 @@ private void setIvPlayShow(MediaFile mediaFile) { } } -} +} \ No newline at end of file diff --git a/imagepicker/src/main/java/com/lcw/library/imagepicker/adapter/ImageFoldersAdapter.java b/imagepicker/src/main/java/com/lcw/library/imagepicker/adapter/ImageFoldersAdapter.java index 235c84a..a3bb522 100644 --- a/imagepicker/src/main/java/com/lcw/library/imagepicker/adapter/ImageFoldersAdapter.java +++ b/imagepicker/src/main/java/com/lcw/library/imagepicker/adapter/ImageFoldersAdapter.java @@ -1,8 +1,7 @@ package com.lcw.library.imagepicker.adapter; +import android.annotation.SuppressLint; import android.content.Context; -import android.support.annotation.NonNull; -import android.support.v7.widget.RecyclerView; import android.text.TextUtils; import android.view.LayoutInflater; import android.view.View; @@ -10,7 +9,9 @@ import android.widget.ImageView; import android.widget.TextView; -import com.lcw.library.imagepicker.ImagePicker; +import androidx.annotation.NonNull; +import androidx.recyclerview.widget.RecyclerView; + import com.lcw.library.imagepicker.R; import com.lcw.library.imagepicker.data.MediaFolder; import com.lcw.library.imagepicker.manager.ConfigManager; @@ -44,7 +45,7 @@ public ViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) { } @Override - public void onBindViewHolder(@NonNull ViewHolder holder, final int position) { + public void onBindViewHolder(@NonNull ViewHolder holder, @SuppressLint("RecyclerView") final int position) { final MediaFolder mediaFolder = mMediaFolderList.get(position); String folderCover = mediaFolder.getFolderCover(); @@ -115,4 +116,4 @@ public void setOnImageFolderChangeListener(ImageFoldersAdapter.OnImageFolderChan public interface OnImageFolderChangeListener { void onImageFolderChange(View view, int position); } -} +} \ No newline at end of file diff --git a/imagepicker/src/main/java/com/lcw/library/imagepicker/adapter/ImagePickerAdapter.java b/imagepicker/src/main/java/com/lcw/library/imagepicker/adapter/ImagePickerAdapter.java index e75c006..d470b50 100644 --- a/imagepicker/src/main/java/com/lcw/library/imagepicker/adapter/ImagePickerAdapter.java +++ b/imagepicker/src/main/java/com/lcw/library/imagepicker/adapter/ImagePickerAdapter.java @@ -1,9 +1,8 @@ package com.lcw.library.imagepicker.adapter; +import android.annotation.SuppressLint; import android.content.Context; import android.graphics.Color; -import android.support.annotation.NonNull; -import android.support.v7.widget.RecyclerView; import android.text.TextUtils; import android.view.LayoutInflater; import android.view.View; @@ -11,6 +10,9 @@ import android.widget.ImageView; import android.widget.TextView; +import androidx.annotation.NonNull; +import androidx.recyclerview.widget.RecyclerView; + import com.lcw.library.imagepicker.R; import com.lcw.library.imagepicker.data.ItemType; import com.lcw.library.imagepicker.data.MediaFile; @@ -105,7 +107,7 @@ public BaseHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) { @Override - public void onBindViewHolder(@NonNull BaseHolder holder, final int position) { + public void onBindViewHolder(@NonNull BaseHolder holder, @SuppressLint("RecyclerView") final int position) { int itemType = getItemViewType(position); MediaFile mediaFile = getMediaFile(position); switch (itemType) { diff --git a/imagepicker/src/main/java/com/lcw/library/imagepicker/adapter/ImagePreViewAdapter.java b/imagepicker/src/main/java/com/lcw/library/imagepicker/adapter/ImagePreViewAdapter.java index d0d644b..b7b307d 100644 --- a/imagepicker/src/main/java/com/lcw/library/imagepicker/adapter/ImagePreViewAdapter.java +++ b/imagepicker/src/main/java/com/lcw/library/imagepicker/adapter/ImagePreViewAdapter.java @@ -1,11 +1,12 @@ package com.lcw.library.imagepicker.adapter; import android.content.Context; -import android.support.annotation.NonNull; -import android.support.v4.view.PagerAdapter; import android.view.View; import android.view.ViewGroup; +import androidx.annotation.NonNull; +import androidx.viewpager.widget.PagerAdapter; + import com.lcw.library.imagepicker.data.MediaFile; import com.lcw.library.imagepicker.manager.ConfigManager; import com.lcw.library.imagepicker.view.PinchImageView; @@ -67,4 +68,4 @@ public void destroyItem(@NonNull ViewGroup container, int position, @NonNull Obj container.removeView(imageView); viewCache.add(imageView); } -} +} \ No newline at end of file diff --git a/imagepicker/src/main/java/com/lcw/library/imagepicker/data/ItemType.java b/imagepicker/src/main/java/com/lcw/library/imagepicker/data/ItemType.java index 2f699cc..b5cbc73 100644 --- a/imagepicker/src/main/java/com/lcw/library/imagepicker/data/ItemType.java +++ b/imagepicker/src/main/java/com/lcw/library/imagepicker/data/ItemType.java @@ -11,4 +11,4 @@ public class ItemType { public static final int ITEM_TYPE_CAMERA = 1; public static final int ITEM_TYPE_IMAGE = 2; public static final int ITEM_TYPE_VIDEO = 3; -} +} \ No newline at end of file diff --git a/imagepicker/src/main/java/com/lcw/library/imagepicker/data/MediaFile.java b/imagepicker/src/main/java/com/lcw/library/imagepicker/data/MediaFile.java index ffab5b5..e14a55b 100644 --- a/imagepicker/src/main/java/com/lcw/library/imagepicker/data/MediaFile.java +++ b/imagepicker/src/main/java/com/lcw/library/imagepicker/data/MediaFile.java @@ -63,5 +63,4 @@ public long getDateToken() { public void setDateToken(long dateToken) { this.dateToken = dateToken; } -} - +} \ No newline at end of file diff --git a/imagepicker/src/main/java/com/lcw/library/imagepicker/data/MediaFolder.java b/imagepicker/src/main/java/com/lcw/library/imagepicker/data/MediaFolder.java index 99fbbdd..68b1da8 100644 --- a/imagepicker/src/main/java/com/lcw/library/imagepicker/data/MediaFolder.java +++ b/imagepicker/src/main/java/com/lcw/library/imagepicker/data/MediaFolder.java @@ -63,6 +63,4 @@ public ArrayList getMediaFileList() { public void setMediaFileList(ArrayList mediaFileList) { this.mediaFileList = mediaFileList; } - - -} +} \ No newline at end of file diff --git a/imagepicker/src/main/java/com/lcw/library/imagepicker/executors/CommonExecutor.java b/imagepicker/src/main/java/com/lcw/library/imagepicker/executors/CommonExecutor.java index 49d01b8..e29ec2f 100644 --- a/imagepicker/src/main/java/com/lcw/library/imagepicker/executors/CommonExecutor.java +++ b/imagepicker/src/main/java/com/lcw/library/imagepicker/executors/CommonExecutor.java @@ -1,6 +1,6 @@ package com.lcw.library.imagepicker.executors; -import android.support.annotation.NonNull; +import androidx.annotation.NonNull; import java.util.concurrent.ExecutorService; import java.util.concurrent.Executors; @@ -44,5 +44,4 @@ public static CommonExecutor getInstance() { public void execute(Runnable runnable) { mExecutorService.execute(runnable); } - -} +} \ No newline at end of file diff --git a/imagepicker/src/main/java/com/lcw/library/imagepicker/listener/MediaLoadCallback.java b/imagepicker/src/main/java/com/lcw/library/imagepicker/listener/MediaLoadCallback.java index 3ccc419..c74ed9d 100644 --- a/imagepicker/src/main/java/com/lcw/library/imagepicker/listener/MediaLoadCallback.java +++ b/imagepicker/src/main/java/com/lcw/library/imagepicker/listener/MediaLoadCallback.java @@ -12,6 +12,5 @@ * Email: lichenwei.me@foxmail.com */ public interface MediaLoadCallback { - void loadMediaSuccess(List mediaFolderList); -} +} \ No newline at end of file diff --git a/imagepicker/src/main/java/com/lcw/library/imagepicker/loader/AbsMediaScanner.java b/imagepicker/src/main/java/com/lcw/library/imagepicker/loader/AbsMediaScanner.java index 8749f64..01f23ef 100644 --- a/imagepicker/src/main/java/com/lcw/library/imagepicker/loader/AbsMediaScanner.java +++ b/imagepicker/src/main/java/com/lcw/library/imagepicker/loader/AbsMediaScanner.java @@ -83,5 +83,4 @@ public ArrayList queryMedia() { } return list; } - -} +} \ No newline at end of file diff --git a/imagepicker/src/main/java/com/lcw/library/imagepicker/loader/ImageScanner.java b/imagepicker/src/main/java/com/lcw/library/imagepicker/loader/ImageScanner.java index 44f5a15..ba3d73b 100644 --- a/imagepicker/src/main/java/com/lcw/library/imagepicker/loader/ImageScanner.java +++ b/imagepicker/src/main/java/com/lcw/library/imagepicker/loader/ImageScanner.java @@ -1,21 +1,14 @@ package com.lcw.library.imagepicker.loader; +import android.annotation.SuppressLint; import android.content.Context; import android.database.Cursor; import android.net.Uri; import android.provider.MediaStore; -import android.support.annotation.WorkerThread; -import com.lcw.library.imagepicker.R; import com.lcw.library.imagepicker.data.MediaFile; -import com.lcw.library.imagepicker.data.MediaFolder; import com.lcw.library.imagepicker.manager.ConfigManager; -import java.util.ArrayList; -import java.util.HashMap; -import java.util.List; -import java.util.Map; - /** * 媒体库扫描类(图片) * Create by: chenWei.li @@ -77,12 +70,11 @@ protected String getOrder() { */ @Override protected MediaFile parse(Cursor cursor) { - - String path = cursor.getString(cursor.getColumnIndex(MediaStore.Images.Media.DATA)); - String mime = cursor.getString(cursor.getColumnIndex(MediaStore.Images.Media.MIME_TYPE)); - Integer folderId = cursor.getInt(cursor.getColumnIndex(MediaStore.Images.Media.BUCKET_ID)); - String folderName = cursor.getString(cursor.getColumnIndex(MediaStore.Images.Media.BUCKET_DISPLAY_NAME)); - long dateToken = cursor.getLong(cursor.getColumnIndex(MediaStore.Images.Media.DATE_TAKEN)); + @SuppressLint("Range") String path = cursor.getString(cursor.getColumnIndex(MediaStore.Images.Media.DATA)); + @SuppressLint("Range") String mime = cursor.getString(cursor.getColumnIndex(MediaStore.Images.Media.MIME_TYPE)); + @SuppressLint("Range") Integer folderId = cursor.getInt(cursor.getColumnIndex(MediaStore.Images.Media.BUCKET_ID)); + @SuppressLint("Range") String folderName = cursor.getString(cursor.getColumnIndex(MediaStore.Images.Media.BUCKET_DISPLAY_NAME)); + @SuppressLint("Range") long dateToken = cursor.getLong(cursor.getColumnIndex(MediaStore.Images.Media.DATE_TAKEN)); MediaFile mediaFile = new MediaFile(); mediaFile.setPath(path); @@ -93,6 +85,4 @@ protected MediaFile parse(Cursor cursor) { return mediaFile; } - - -} +} \ No newline at end of file diff --git a/imagepicker/src/main/java/com/lcw/library/imagepicker/loader/MediaHandler.java b/imagepicker/src/main/java/com/lcw/library/imagepicker/loader/MediaHandler.java index f247f46..39b8bbc 100644 --- a/imagepicker/src/main/java/com/lcw/library/imagepicker/loader/MediaHandler.java +++ b/imagepicker/src/main/java/com/lcw/library/imagepicker/loader/MediaHandler.java @@ -135,8 +135,6 @@ public int compare(MediaFolder o1, MediaFolder o2) { } }); - return mediaFolderList; } - -} +} \ No newline at end of file diff --git a/imagepicker/src/main/java/com/lcw/library/imagepicker/loader/VideoScanner.java b/imagepicker/src/main/java/com/lcw/library/imagepicker/loader/VideoScanner.java index 4d8ce05..eca2840 100644 --- a/imagepicker/src/main/java/com/lcw/library/imagepicker/loader/VideoScanner.java +++ b/imagepicker/src/main/java/com/lcw/library/imagepicker/loader/VideoScanner.java @@ -1,20 +1,12 @@ package com.lcw.library.imagepicker.loader; +import android.annotation.SuppressLint; import android.content.Context; import android.database.Cursor; import android.net.Uri; import android.provider.MediaStore; -import android.support.annotation.WorkerThread; -import android.util.Log; -import com.lcw.library.imagepicker.R; import com.lcw.library.imagepicker.data.MediaFile; -import com.lcw.library.imagepicker.data.MediaFolder; - -import java.util.ArrayList; -import java.util.HashMap; -import java.util.List; -import java.util.Map; /** * 媒体库扫描类(视频) @@ -75,12 +67,12 @@ protected String getOrder() { @Override protected MediaFile parse(Cursor cursor) { - String path = cursor.getString(cursor.getColumnIndex(MediaStore.Video.Media.DATA)); - String mime = cursor.getString(cursor.getColumnIndex(MediaStore.Video.Media.MIME_TYPE)); - Integer folderId = cursor.getInt(cursor.getColumnIndex(MediaStore.Video.Media.BUCKET_ID)); - String folderName = cursor.getString(cursor.getColumnIndex(MediaStore.Video.Media.BUCKET_DISPLAY_NAME)); - long duration = cursor.getLong(cursor.getColumnIndex(MediaStore.Video.Media.DURATION)); - long dateToken = cursor.getLong(cursor.getColumnIndex(MediaStore.Video.Media.DATE_TAKEN)); + @SuppressLint("Range") String path = cursor.getString(cursor.getColumnIndex(MediaStore.Video.Media.DATA)); + @SuppressLint("Range") String mime = cursor.getString(cursor.getColumnIndex(MediaStore.Video.Media.MIME_TYPE)); + @SuppressLint("Range") Integer folderId = cursor.getInt(cursor.getColumnIndex(MediaStore.Video.Media.BUCKET_ID)); + @SuppressLint("Range") String folderName = cursor.getString(cursor.getColumnIndex(MediaStore.Video.Media.BUCKET_DISPLAY_NAME)); + @SuppressLint("Range") long duration = cursor.getLong(cursor.getColumnIndex(MediaStore.Video.Media.DURATION)); + @SuppressLint("Range") long dateToken = cursor.getLong(cursor.getColumnIndex(MediaStore.Video.Media.DATE_TAKEN)); MediaFile mediaFile = new MediaFile(); mediaFile.setPath(path); @@ -92,6 +84,4 @@ protected MediaFile parse(Cursor cursor) { return mediaFile; } - - -} +} \ No newline at end of file diff --git a/imagepicker/src/main/java/com/lcw/library/imagepicker/manager/ConfigManager.java b/imagepicker/src/main/java/com/lcw/library/imagepicker/manager/ConfigManager.java index a4aa22e..cb8e79d 100644 --- a/imagepicker/src/main/java/com/lcw/library/imagepicker/manager/ConfigManager.java +++ b/imagepicker/src/main/java/com/lcw/library/imagepicker/manager/ConfigManager.java @@ -129,4 +129,4 @@ public void setSingleType(boolean singleType) { public void setImageLoader(ImageLoader imageLoader) { this.imageLoader = imageLoader; } -} +} \ No newline at end of file diff --git a/imagepicker/src/main/java/com/lcw/library/imagepicker/manager/SelectionManager.java b/imagepicker/src/main/java/com/lcw/library/imagepicker/manager/SelectionManager.java index ddd6179..8d1fe6c 100644 --- a/imagepicker/src/main/java/com/lcw/library/imagepicker/manager/SelectionManager.java +++ b/imagepicker/src/main/java/com/lcw/library/imagepicker/manager/SelectionManager.java @@ -95,7 +95,6 @@ public void addImagePathsToSelectList(List imagePaths) { } } - /** * 判断当前图片是否被选择 * @@ -142,5 +141,4 @@ public static boolean isCanAddSelectionPaths(String currentPath, String filePath public void removeAll() { mSelectImagePaths.clear(); } - -} +} \ No newline at end of file diff --git a/imagepicker/src/main/java/com/lcw/library/imagepicker/provider/ImagePickerProvider.java b/imagepicker/src/main/java/com/lcw/library/imagepicker/provider/ImagePickerProvider.java index d54f923..cf57eac 100644 --- a/imagepicker/src/main/java/com/lcw/library/imagepicker/provider/ImagePickerProvider.java +++ b/imagepicker/src/main/java/com/lcw/library/imagepicker/provider/ImagePickerProvider.java @@ -1,7 +1,8 @@ package com.lcw.library.imagepicker.provider; import android.content.Context; -import android.support.v4.content.FileProvider; + +import androidx.core.content.FileProvider; /** * 自定义Provider,避免上层发生provider冲突 @@ -15,5 +16,4 @@ public class ImagePickerProvider extends FileProvider { public static String getFileProviderName(Context context) { return context.getPackageName() + ".provider"; } - -} +} \ No newline at end of file diff --git a/imagepicker/src/main/java/com/lcw/library/imagepicker/task/ImageLoadTask.java b/imagepicker/src/main/java/com/lcw/library/imagepicker/task/ImageLoadTask.java index 6529ee2..877162a 100644 --- a/imagepicker/src/main/java/com/lcw/library/imagepicker/task/ImageLoadTask.java +++ b/imagepicker/src/main/java/com/lcw/library/imagepicker/task/ImageLoadTask.java @@ -40,8 +40,5 @@ public void run() { if (mMediaLoadCallback != null) { mMediaLoadCallback.loadMediaSuccess(MediaHandler.getImageFolder(mContext, imageFileList)); } - - } - -} +} \ No newline at end of file diff --git a/imagepicker/src/main/java/com/lcw/library/imagepicker/task/MediaLoadTask.java b/imagepicker/src/main/java/com/lcw/library/imagepicker/task/MediaLoadTask.java index ffea164..2ee4134 100644 --- a/imagepicker/src/main/java/com/lcw/library/imagepicker/task/MediaLoadTask.java +++ b/imagepicker/src/main/java/com/lcw/library/imagepicker/task/MediaLoadTask.java @@ -48,7 +48,5 @@ public void run() { if (mMediaLoadCallback != null) { mMediaLoadCallback.loadMediaSuccess(MediaHandler.getMediaFolder(mContext, imageFileList, videoFileList)); } - } - -} +} \ No newline at end of file diff --git a/imagepicker/src/main/java/com/lcw/library/imagepicker/task/VideoLoadTask.java b/imagepicker/src/main/java/com/lcw/library/imagepicker/task/VideoLoadTask.java index e03a996..0265766 100644 --- a/imagepicker/src/main/java/com/lcw/library/imagepicker/task/VideoLoadTask.java +++ b/imagepicker/src/main/java/com/lcw/library/imagepicker/task/VideoLoadTask.java @@ -17,7 +17,6 @@ * Email: lichenwei.me@foxmail.com */ public class VideoLoadTask implements Runnable { - private Context mContext; private VideoScanner mVideoScanner; private MediaLoadCallback mMediaLoadCallback; @@ -30,7 +29,6 @@ public VideoLoadTask(Context context, MediaLoadCallback mediaLoadCallback) { @Override public void run() { - //存放所有视频 ArrayList videoFileList = new ArrayList<>(); @@ -41,8 +39,5 @@ public void run() { if (mMediaLoadCallback != null) { mMediaLoadCallback.loadMediaSuccess(MediaHandler.getVideoFolder(mContext, videoFileList)); } - - } - -} +} \ No newline at end of file diff --git a/imagepicker/src/main/java/com/lcw/library/imagepicker/utils/DataUtil.java b/imagepicker/src/main/java/com/lcw/library/imagepicker/utils/DataUtil.java index a1f51e0..ab25b23 100644 --- a/imagepicker/src/main/java/com/lcw/library/imagepicker/utils/DataUtil.java +++ b/imagepicker/src/main/java/com/lcw/library/imagepicker/utils/DataUtil.java @@ -15,7 +15,6 @@ * Email: lichenwei.me@foxmail.com */ public class DataUtil { - private static volatile DataUtil mDataUtilInstance; private List mData = new ArrayList<>(); @@ -40,6 +39,4 @@ public List getMediaData() { public void setMediaData(List data) { this.mData = data; } - - -} +} \ No newline at end of file diff --git a/imagepicker/src/main/java/com/lcw/library/imagepicker/utils/ImageLoader.java b/imagepicker/src/main/java/com/lcw/library/imagepicker/utils/ImageLoader.java index 988abbe..411b605 100644 --- a/imagepicker/src/main/java/com/lcw/library/imagepicker/utils/ImageLoader.java +++ b/imagepicker/src/main/java/com/lcw/library/imagepicker/utils/ImageLoader.java @@ -42,5 +42,4 @@ public interface ImageLoader extends Serializable { * 缓存管理 */ void clearMemoryCache(); - -} +} \ No newline at end of file diff --git a/imagepicker/src/main/java/com/lcw/library/imagepicker/utils/MediaFileUtil.java b/imagepicker/src/main/java/com/lcw/library/imagepicker/utils/MediaFileUtil.java index 841ee51..7255413 100644 --- a/imagepicker/src/main/java/com/lcw/library/imagepicker/utils/MediaFileUtil.java +++ b/imagepicker/src/main/java/com/lcw/library/imagepicker/utils/MediaFileUtil.java @@ -179,5 +179,4 @@ public static int getFileTypeForMimeType(String mimeType) { Integer value = sMimeTypeMap.get(mimeType); return (value == null ? 0 : value.intValue()); } - -} +} \ No newline at end of file diff --git a/imagepicker/src/main/java/com/lcw/library/imagepicker/utils/PermissionUtil.java b/imagepicker/src/main/java/com/lcw/library/imagepicker/utils/PermissionUtil.java index f4fb016..4087deb 100644 --- a/imagepicker/src/main/java/com/lcw/library/imagepicker/utils/PermissionUtil.java +++ b/imagepicker/src/main/java/com/lcw/library/imagepicker/utils/PermissionUtil.java @@ -3,7 +3,8 @@ import android.Manifest; import android.content.Context; import android.content.pm.PackageManager; -import android.support.v4.content.ContextCompat; + +import androidx.core.content.ContextCompat; /** * Create by: chenWei.li @@ -12,7 +13,6 @@ * Email: lichenwei.me@foxmail.com */ public class PermissionUtil { - /** * 权限检查 * @@ -22,4 +22,4 @@ public class PermissionUtil { public static boolean checkPermission(Context context) { return ContextCompat.checkSelfPermission(context, Manifest.permission.READ_EXTERNAL_STORAGE) == PackageManager.PERMISSION_GRANTED && ContextCompat.checkSelfPermission(context, Manifest.permission.CAMERA) == PackageManager.PERMISSION_GRANTED; } -} +} \ No newline at end of file diff --git a/imagepicker/src/main/java/com/lcw/library/imagepicker/utils/Utils.java b/imagepicker/src/main/java/com/lcw/library/imagepicker/utils/Utils.java index b2f4ba4..f25eca7 100644 --- a/imagepicker/src/main/java/com/lcw/library/imagepicker/utils/Utils.java +++ b/imagepicker/src/main/java/com/lcw/library/imagepicker/utils/Utils.java @@ -68,6 +68,4 @@ public static String getVideoDuration(long timestamp) { SimpleDateFormat simpleDateFormat = new SimpleDateFormat("mm:ss"); return simpleDateFormat.format(date); } - - -} +} \ No newline at end of file diff --git a/imagepicker/src/main/java/com/lcw/library/imagepicker/view/HackyViewPager.java b/imagepicker/src/main/java/com/lcw/library/imagepicker/view/HackyViewPager.java index 35e2118..9229cad 100644 --- a/imagepicker/src/main/java/com/lcw/library/imagepicker/view/HackyViewPager.java +++ b/imagepicker/src/main/java/com/lcw/library/imagepicker/view/HackyViewPager.java @@ -1,10 +1,11 @@ package com.lcw.library.imagepicker.view; import android.content.Context; -import android.support.v4.view.ViewPager; import android.util.AttributeSet; import android.view.MotionEvent; +import androidx.viewpager.widget.ViewPager; + /** * Create by: chenWei.li * Date: 2018/10/7 @@ -29,4 +30,4 @@ public boolean onInterceptTouchEvent(MotionEvent ev) { return false; } } -} +} \ No newline at end of file diff --git a/imagepicker/src/main/java/com/lcw/library/imagepicker/view/ImageFolderPopupWindow.java b/imagepicker/src/main/java/com/lcw/library/imagepicker/view/ImageFolderPopupWindow.java index d6a39d1..3f72303 100644 --- a/imagepicker/src/main/java/com/lcw/library/imagepicker/view/ImageFolderPopupWindow.java +++ b/imagepicker/src/main/java/com/lcw/library/imagepicker/view/ImageFolderPopupWindow.java @@ -2,13 +2,14 @@ import android.content.Context; import android.graphics.drawable.ColorDrawable; -import android.support.v7.widget.LinearLayoutManager; -import android.support.v7.widget.RecyclerView; import android.view.LayoutInflater; import android.view.MotionEvent; import android.view.View; import android.widget.PopupWindow; +import androidx.recyclerview.widget.LinearLayoutManager; +import androidx.recyclerview.widget.RecyclerView; + import com.lcw.library.imagepicker.R; import com.lcw.library.imagepicker.adapter.ImageFoldersAdapter; import com.lcw.library.imagepicker.data.MediaFolder; @@ -24,7 +25,6 @@ * Email: lichenwei.me@foxmail.com */ public class ImageFolderPopupWindow extends PopupWindow { - private static final int DEFAULT_IMAGE_FOLDER_SELECT = 0;//默认选中文件夹 private Context mContext; @@ -78,5 +78,4 @@ public boolean onTouch(View view, MotionEvent motionEvent) { public ImageFoldersAdapter getAdapter() { return mImageFoldersAdapter; } - -} +} \ No newline at end of file diff --git a/imagepicker/src/main/java/com/lcw/library/imagepicker/view/PinchImageView.java b/imagepicker/src/main/java/com/lcw/library/imagepicker/view/PinchImageView.java index 62cf020..745fb64 100644 --- a/imagepicker/src/main/java/com/lcw/library/imagepicker/view/PinchImageView.java +++ b/imagepicker/src/main/java/com/lcw/library/imagepicker/view/PinchImageView.java @@ -10,6 +10,8 @@ import android.view.GestureDetector; import android.view.MotionEvent; +import androidx.appcompat.widget.AppCompatImageView; + import java.util.ArrayList; import java.util.LinkedList; import java.util.List; @@ -22,7 +24,7 @@ * Time: 下午5:29 * Email: lichenwei.me@foxmail.com */ -public class PinchImageView extends android.support.v7.widget.AppCompatImageView { +public class PinchImageView extends AppCompatImageView { ////////////////////////////////配置参数//////////////////////////////// @@ -1739,4 +1741,4 @@ public static void calculateScaledRectInContainer(RectF container, float srcWidt } } -} +} \ No newline at end of file diff --git a/imagepicker/src/main/java/com/lcw/library/imagepicker/view/SquareImageView.java b/imagepicker/src/main/java/com/lcw/library/imagepicker/view/SquareImageView.java index aad1cc8..baabf8f 100644 --- a/imagepicker/src/main/java/com/lcw/library/imagepicker/view/SquareImageView.java +++ b/imagepicker/src/main/java/com/lcw/library/imagepicker/view/SquareImageView.java @@ -1,9 +1,11 @@ package com.lcw.library.imagepicker.view; import android.content.Context; -import android.support.annotation.Nullable; import android.util.AttributeSet; +import androidx.annotation.Nullable; +import androidx.appcompat.widget.AppCompatImageView; + /** * 正方形ImageView * Create by: chenWei.li @@ -11,7 +13,7 @@ * Time: 下午10:12 * Email: lichenwei.me@foxmail.com */ -public class SquareImageView extends android.support.v7.widget.AppCompatImageView { +public class SquareImageView extends AppCompatImageView { public SquareImageView(Context context) { this(context, null); @@ -29,4 +31,4 @@ public SquareImageView(Context context, @Nullable AttributeSet attrs, int defSty protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) { super.onMeasure(widthMeasureSpec, widthMeasureSpec); } -} +} \ No newline at end of file diff --git a/imagepicker/src/main/java/com/lcw/library/imagepicker/view/SquareRelativeLayout.java b/imagepicker/src/main/java/com/lcw/library/imagepicker/view/SquareRelativeLayout.java index d9fb4d0..2482312 100644 --- a/imagepicker/src/main/java/com/lcw/library/imagepicker/view/SquareRelativeLayout.java +++ b/imagepicker/src/main/java/com/lcw/library/imagepicker/view/SquareRelativeLayout.java @@ -1,11 +1,11 @@ package com.lcw.library.imagepicker.view; import android.content.Context; -import android.support.annotation.Nullable; import android.util.AttributeSet; -import android.widget.FrameLayout; import android.widget.RelativeLayout; +import androidx.annotation.Nullable; + /** * 正方形RelativeLayout * Create by: chenWei.li @@ -14,7 +14,6 @@ * Email: lichenwei.me@foxmail.com */ public class SquareRelativeLayout extends RelativeLayout { - public SquareRelativeLayout(Context context) { this(context, null); } @@ -31,4 +30,4 @@ public SquareRelativeLayout(Context context, @Nullable AttributeSet attrs, int d protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) { super.onMeasure(widthMeasureSpec, widthMeasureSpec); } -} +} \ No newline at end of file diff --git a/imagepicker/src/main/res/layout/activity_imagepicker.xml b/imagepicker/src/main/res/layout/activity_imagepicker.xml index 9dfb896..0ea8b7a 100644 --- a/imagepicker/src/main/res/layout/activity_imagepicker.xml +++ b/imagepicker/src/main/res/layout/activity_imagepicker.xml @@ -23,8 +23,8 @@ android:layout_height="match_parent" android:layout_alignParentLeft="true" android:layout_marginLeft="10dp" - android:drawablePadding="4dp" android:drawableRight="@mipmap/icon_album_index" + android:drawablePadding="4dp" android:gravity="center" android:text="@string/all_media" android:textColor="@android:color/white" @@ -39,7 +39,7 @@ android:layout_above="@id/rl_main_bottom" android:layout_below="@id/layout_actionBar"> - - \ No newline at end of file diff --git a/imagepicker/src/main/res/layout/activity_pre_image.xml b/imagepicker/src/main/res/layout/activity_pre_image.xml index 5c91a06..fcaa95b 100644 --- a/imagepicker/src/main/res/layout/activity_pre_image.xml +++ b/imagepicker/src/main/res/layout/activity_pre_image.xml @@ -41,10 +41,8 @@ android:textColor="@color/text_color_white" android:textSize="14sp" /> - - + android:src="@mipmap/icon_video_play" + android:visibility="gone" /> - \ No newline at end of file diff --git a/imagepicker/src/main/res/layout/include_layout_actionbar.xml b/imagepicker/src/main/res/layout/include_layout_actionbar.xml index e7460ab..2264190 100644 --- a/imagepicker/src/main/res/layout/include_layout_actionbar.xml +++ b/imagepicker/src/main/res/layout/include_layout_actionbar.xml @@ -33,10 +33,10 @@ android:background="@drawable/selector_bt_commit" android:enabled="false" android:gravity="center" - android:paddingBottom="5dp" android:paddingLeft="10dp" - android:paddingRight="10dp" android:paddingTop="5dp" + android:paddingRight="10dp" + android:paddingBottom="5dp" android:text="@string/confirm" android:textColor="@color/text_color_white" android:textSize="14sp" /> diff --git a/imagepicker/src/main/res/layout/item_recyclerview_folder.xml b/imagepicker/src/main/res/layout/item_recyclerview_folder.xml index e96801b..a0c6ef4 100644 --- a/imagepicker/src/main/res/layout/item_recyclerview_folder.xml +++ b/imagepicker/src/main/res/layout/item_recyclerview_folder.xml @@ -11,10 +11,10 @@ android:layout_centerVertical="true" android:layout_marginLeft="10dp" android:background="@mipmap/icon_image_folder" - android:paddingBottom="17dp" android:paddingLeft="12dp" - android:paddingRight="12dp" android:paddingTop="9dp" + android:paddingRight="12dp" + android:paddingBottom="17dp" android:scaleType="fitXY" /> - \ No newline at end of file diff --git a/imagepicker/src/main/res/layout/item_recyclerview_image.xml b/imagepicker/src/main/res/layout/item_recyclerview_image.xml index fb19387..cd8ff3c 100644 --- a/imagepicker/src/main/res/layout/item_recyclerview_image.xml +++ b/imagepicker/src/main/res/layout/item_recyclerview_image.xml @@ -31,5 +31,4 @@ android:src="@mipmap/icon_gif" android:visibility="gone" /> - \ No newline at end of file diff --git a/imagepicker/src/main/res/layout/item_recyclerview_video.xml b/imagepicker/src/main/res/layout/item_recyclerview_video.xml index b575de5..25842d9 100644 --- a/imagepicker/src/main/res/layout/item_recyclerview_video.xml +++ b/imagepicker/src/main/res/layout/item_recyclerview_video.xml @@ -45,5 +45,4 @@ - \ No newline at end of file diff --git a/imagepicker/src/main/res/layout/window_image_folders.xml b/imagepicker/src/main/res/layout/window_image_folders.xml index a58bbc8..7267bda 100644 --- a/imagepicker/src/main/res/layout/window_image_folders.xml +++ b/imagepicker/src/main/res/layout/window_image_folders.xml @@ -5,11 +5,11 @@ android:background="@android:color/white" android:orientation="vertical"> - + android:layout_marginTop="4dp" + android:layout_marginBottom="4dp" /> \ No newline at end of file diff --git a/settings.gradle b/settings.gradle index 3102320..b194edc 100644 --- a/settings.gradle +++ b/settings.gradle @@ -1 +1 @@ -include ':app', ':imagepicker' +include ':app', ':imagepicker' \ No newline at end of file From c37a10e21a8023c75490402232392b5469fc709c Mon Sep 17 00:00:00 2001 From: wangsen Date: Sun, 24 Oct 2021 23:41:28 +0800 Subject: [PATCH 02/28] =?UTF-8?q?=E6=9B=B4=E6=96=B0=E7=BB=84=E4=BB=B6?= =?UTF-8?q?=EF=BC=8C=E9=87=8D=E6=9E=84=E4=BB=A3=E7=A0=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/build.gradle | 6 +++++- .../com/lcw/demo/imagepicker/GlideLoader.java | 1 - build.gradle | 2 +- gradle/wrapper/gradle-wrapper.properties | 2 +- imagepicker/build.gradle | 6 +++++- .../activity/ImagePickerActivity.java | 18 +++--------------- .../imagepicker/activity/ImagePreActivity.java | 7 ------- .../imagepicker/utils/MediaFileUtil.java | 2 +- 8 files changed, 16 insertions(+), 28 deletions(-) diff --git a/app/build.gradle b/app/build.gradle index 9a16f83..ed4d13f 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -19,11 +19,15 @@ android { lintOptions { abortOnError false } + compileOptions { + sourceCompatibility JavaVersion.VERSION_1_8 + targetCompatibility JavaVersion.VERSION_1_8 + } } dependencies { implementation fileTree(include: ['*.jar'], dir: 'libs') - implementation 'androidx.appcompat:appcompat:1.4.0-alpha03' + implementation 'androidx.appcompat:appcompat:1.4.0-beta01' implementation 'com.github.bumptech.glide:glide:4.12.0' annotationProcessor 'com.github.bumptech.glide:compiler:4.12.0' implementation project(':imagepicker') diff --git a/app/src/main/java/com/lcw/demo/imagepicker/GlideLoader.java b/app/src/main/java/com/lcw/demo/imagepicker/GlideLoader.java index ad09dee..024ebfd 100644 --- a/app/src/main/java/com/lcw/demo/imagepicker/GlideLoader.java +++ b/app/src/main/java/com/lcw/demo/imagepicker/GlideLoader.java @@ -36,7 +36,6 @@ public void loadImage(ImageView imageView, String imagePath) { public void loadPreImage(ImageView imageView, String imagePath) { //大图加载 Glide.with(imageView.getContext()).load(imagePath).apply(mPreOptions).into(imageView); - } @Override diff --git a/build.gradle b/build.gradle index a1e058b..fd904c4 100644 --- a/build.gradle +++ b/build.gradle @@ -6,7 +6,7 @@ buildscript { jcenter() } dependencies { - classpath 'com.android.tools.build:gradle:7.1.0-alpha04' + classpath 'com.android.tools.build:gradle:7.2.0-alpha02' // NOTE: Do not place your application dependencies here; they belong // in the individual module build.gradle files } diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties index 91522ef..49b7487 100644 --- a/gradle/wrapper/gradle-wrapper.properties +++ b/gradle/wrapper/gradle-wrapper.properties @@ -3,4 +3,4 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-7.1.1-all.zip \ No newline at end of file +distributionUrl=https\://services.gradle.org/distributions/gradle-7.2-all.zip \ No newline at end of file diff --git a/imagepicker/build.gradle b/imagepicker/build.gradle index db5e6af..f4b7329 100644 --- a/imagepicker/build.gradle +++ b/imagepicker/build.gradle @@ -18,6 +18,10 @@ android { lintOptions { abortOnError false } + compileOptions { + sourceCompatibility JavaVersion.VERSION_1_8 + targetCompatibility JavaVersion.VERSION_1_8 + } } repositories { @@ -27,6 +31,6 @@ repositories { dependencies { implementation fileTree(include: ['*.jar'], dir: 'libs') - implementation 'androidx.appcompat:appcompat:1.4.0-alpha03' + implementation 'androidx.appcompat:appcompat:1.4.0-beta01' implementation 'androidx.recyclerview:recyclerview:1.2.1' } \ No newline at end of file diff --git a/imagepicker/src/main/java/com/lcw/library/imagepicker/activity/ImagePickerActivity.java b/imagepicker/src/main/java/com/lcw/library/imagepicker/activity/ImagePickerActivity.java index 95f0508..a149a3e 100644 --- a/imagepicker/src/main/java/com/lcw/library/imagepicker/activity/ImagePickerActivity.java +++ b/imagepicker/src/main/java/com/lcw/library/imagepicker/activity/ImagePickerActivity.java @@ -103,13 +103,11 @@ public void run() { } }; - /** * 大图预览页相关 */ private static final int REQUEST_SELECT_IMAGES_CODE = 0x01;//用于在大图预览页中点击提交按钮标识 - /** * 拍照相关 */ @@ -121,13 +119,11 @@ public void run() { */ private static final int REQUEST_PERMISSION_CAMERA_CODE = 0x03; - @Override protected int bindLayout() { return R.layout.activity_imagepicker; } - /** * 初始化配置 */ @@ -148,7 +144,6 @@ protected void initConfig() { } } - /** * 初始化布局控件 */ @@ -185,8 +180,6 @@ protected void initView() { mImagePickerAdapter = new ImagePickerAdapter(this, mMediaFileList); mImagePickerAdapter.setOnItemClickListener(this); mRecyclerView.setAdapter(mImagePickerAdapter); - - } /** @@ -233,7 +226,6 @@ public void onScrolled(RecyclerView recyclerView, int dx, int dy) { updateImageTime(); } }); - } /** @@ -278,7 +270,6 @@ public void onRequestPermissionsResult(int requestCode, @NonNull String[] permis } } - /** * 开启扫描任务 */ @@ -308,7 +299,6 @@ private void startScannerTask() { CommonExecutor.getInstance().execute(mediaLoadTask); } - /** * 处理媒体数据加载成功后的UI渲染 */ @@ -343,7 +333,6 @@ public void onDismiss() { } } - /** * 隐藏时间 */ @@ -489,15 +478,16 @@ private void updateCommitButton() { mTvCommit.setText(getString(R.string.confirm)); return; } + if (selectCount < mMaxCount) { mTvCommit.setEnabled(true); mTvCommit.setText(String.format(getString(R.string.confirm_msg), selectCount, mMaxCount)); return; } + if (selectCount == mMaxCount) { mTvCommit.setEnabled(true); mTvCommit.setText(String.format(getString(R.string.confirm_msg), selectCount, mMaxCount)); - return; } } @@ -601,7 +591,6 @@ private void commitSelection() { finish(); } - @Override protected void onResume() { super.onResume(); @@ -624,5 +613,4 @@ protected void onDestroy() { e.printStackTrace(); } } - -} +} \ No newline at end of file diff --git a/imagepicker/src/main/java/com/lcw/library/imagepicker/activity/ImagePreActivity.java b/imagepicker/src/main/java/com/lcw/library/imagepicker/activity/ImagePreActivity.java index 02d6f47..32ce1b6 100644 --- a/imagepicker/src/main/java/com/lcw/library/imagepicker/activity/ImagePreActivity.java +++ b/imagepicker/src/main/java/com/lcw/library/imagepicker/activity/ImagePreActivity.java @@ -34,7 +34,6 @@ * Email: lichenwei.me@foxmail.com */ public class ImagePreActivity extends BaseActivity { - public static final String IMAGE_POSITION = "imagePosition"; private List mMediaFileList; private int mPosition = 0; @@ -47,7 +46,6 @@ public class ImagePreActivity extends BaseActivity { private ImageView mIvPreCheck; private ImagePreViewAdapter mImagePreViewAdapter; - @Override protected int bindLayout() { return R.layout.activity_pre_image; @@ -65,7 +63,6 @@ protected void initView() { @Override protected void initListener() { - findViewById(R.id.iv_actionBar_back).setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { @@ -145,7 +142,6 @@ public void onClick(View v) { startActivity(intent); } }); - } @Override @@ -166,7 +162,6 @@ protected void getData() { * 更新确认按钮状态 */ private void updateCommitButton() { - int maxCount = SelectionManager.getInstance().getMaxCount(); //改变确定按钮UI @@ -184,7 +179,6 @@ private void updateCommitButton() { if (selectCount == maxCount) { mTvCommit.setEnabled(true); mTvCommit.setText(String.format(getString(R.string.confirm_msg), selectCount, maxCount)); - return; } } @@ -212,5 +206,4 @@ private void setIvPlayShow(MediaFile mediaFile) { mIvPlay.setVisibility(View.GONE); } } - } \ No newline at end of file diff --git a/imagepicker/src/main/java/com/lcw/library/imagepicker/utils/MediaFileUtil.java b/imagepicker/src/main/java/com/lcw/library/imagepicker/utils/MediaFileUtil.java index 7255413..1c8bd5e 100644 --- a/imagepicker/src/main/java/com/lcw/library/imagepicker/utils/MediaFileUtil.java +++ b/imagepicker/src/main/java/com/lcw/library/imagepicker/utils/MediaFileUtil.java @@ -177,6 +177,6 @@ public static boolean isAudioFileType(String path) { //自己增加 //根据mime类型查看文件类型 public static int getFileTypeForMimeType(String mimeType) { Integer value = sMimeTypeMap.get(mimeType); - return (value == null ? 0 : value.intValue()); + return (value == null ? 0 : value); } } \ No newline at end of file From 3b957c5e3048439356f45554cc6af46f3cc3c045 Mon Sep 17 00:00:00 2001 From: wangsen Date: Mon, 8 Nov 2021 00:02:55 +0800 Subject: [PATCH 03/28] =?UTF-8?q?=E6=9B=B4=E6=96=B0=E7=BB=84=E4=BB=B6?= =?UTF-8?q?=EF=BC=8C=E9=87=8D=E6=9E=84=E4=BB=A3=E7=A0=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .idea/modules.xml | 6 ++++++ app/build.gradle | 2 +- build.gradle | 6 +++--- gradle/wrapper/gradle-wrapper.properties | 2 +- imagepicker/build.gradle | 2 +- .../imagepicker/adapter/ImageFoldersAdapter.java | 4 ---- .../imagepicker/adapter/ImagePickerAdapter.java | 15 +-------------- .../imagepicker/adapter/ImagePreViewAdapter.java | 1 - .../lcw/library/imagepicker/data/MediaFile.java | 1 - .../lcw/library/imagepicker/data/MediaFolder.java | 1 - .../library/imagepicker/loader/ImageScanner.java | 2 -- .../library/imagepicker/loader/MediaHandler.java | 4 ---- .../library/imagepicker/loader/VideoScanner.java | 3 --- .../imagepicker/manager/ConfigManager.java | 1 - .../imagepicker/manager/SelectionManager.java | 3 --- .../imagepicker/provider/ImagePickerProvider.java | 1 - .../library/imagepicker/task/ImageLoadTask.java | 1 - .../library/imagepicker/task/MediaLoadTask.java | 1 - .../library/imagepicker/utils/ImageLoader.java | 2 -- .../library/imagepicker/utils/MediaFileUtil.java | 4 +--- .../com/lcw/library/imagepicker/utils/Utils.java | 1 - 21 files changed, 14 insertions(+), 49 deletions(-) diff --git a/.idea/modules.xml b/.idea/modules.xml index 5a412f5..11ab2b3 100644 --- a/.idea/modules.xml +++ b/.idea/modules.xml @@ -4,7 +4,13 @@ + + + + + + \ No newline at end of file diff --git a/app/build.gradle b/app/build.gradle index ed4d13f..a3502d0 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -27,7 +27,7 @@ android { dependencies { implementation fileTree(include: ['*.jar'], dir: 'libs') - implementation 'androidx.appcompat:appcompat:1.4.0-beta01' + implementation 'androidx.appcompat:appcompat:1.4.0-rc01' implementation 'com.github.bumptech.glide:glide:4.12.0' annotationProcessor 'com.github.bumptech.glide:compiler:4.12.0' implementation project(':imagepicker') diff --git a/build.gradle b/build.gradle index fd904c4..8afe127 100644 --- a/build.gradle +++ b/build.gradle @@ -3,10 +3,10 @@ buildscript { repositories { google() - jcenter() + mavenCentral() } dependencies { - classpath 'com.android.tools.build:gradle:7.2.0-alpha02' + classpath 'com.android.tools.build:gradle:7.2.0-alpha03' // NOTE: Do not place your application dependencies here; they belong // in the individual module build.gradle files } @@ -15,7 +15,7 @@ buildscript { allprojects { repositories { google() - jcenter() + mavenCentral() } } diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties index 49b7487..7477f1e 100644 --- a/gradle/wrapper/gradle-wrapper.properties +++ b/gradle/wrapper/gradle-wrapper.properties @@ -3,4 +3,4 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-7.2-all.zip \ No newline at end of file +distributionUrl=https\://services.gradle.org/distributions/gradle-7.3-rc-3-all.zip \ No newline at end of file diff --git a/imagepicker/build.gradle b/imagepicker/build.gradle index f4b7329..24926dd 100644 --- a/imagepicker/build.gradle +++ b/imagepicker/build.gradle @@ -31,6 +31,6 @@ repositories { dependencies { implementation fileTree(include: ['*.jar'], dir: 'libs') - implementation 'androidx.appcompat:appcompat:1.4.0-beta01' + implementation 'androidx.appcompat:appcompat:1.4.0-rc01' implementation 'androidx.recyclerview:recyclerview:1.2.1' } \ No newline at end of file diff --git a/imagepicker/src/main/java/com/lcw/library/imagepicker/adapter/ImageFoldersAdapter.java b/imagepicker/src/main/java/com/lcw/library/imagepicker/adapter/ImageFoldersAdapter.java index a3bb522..25d1bc6 100644 --- a/imagepicker/src/main/java/com/lcw/library/imagepicker/adapter/ImageFoldersAdapter.java +++ b/imagepicker/src/main/java/com/lcw/library/imagepicker/adapter/ImageFoldersAdapter.java @@ -26,12 +26,10 @@ * Email: lichenwei.me@foxmail.com */ public class ImageFoldersAdapter extends RecyclerView.Adapter { - private Context mContext; private List mMediaFolderList; private int mCurrentImageFolderIndex; - public ImageFoldersAdapter(Context context, List mediaFolderList, int position) { this.mContext = context; this.mMediaFolderList = mediaFolderList; @@ -46,7 +44,6 @@ public ViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) { @Override public void onBindViewHolder(@NonNull ViewHolder holder, @SuppressLint("RecyclerView") final int position) { - final MediaFolder mediaFolder = mMediaFolderList.get(position); String folderCover = mediaFolder.getFolderCover(); String folderName = mediaFolder.getFolderName(); @@ -89,7 +86,6 @@ public int getItemCount() { } class ViewHolder extends RecyclerView.ViewHolder { - private ImageView mImageCover; private TextView mFolderName; private TextView mImageSize; diff --git a/imagepicker/src/main/java/com/lcw/library/imagepicker/adapter/ImagePickerAdapter.java b/imagepicker/src/main/java/com/lcw/library/imagepicker/adapter/ImagePickerAdapter.java index d470b50..a447088 100644 --- a/imagepicker/src/main/java/com/lcw/library/imagepicker/adapter/ImagePickerAdapter.java +++ b/imagepicker/src/main/java/com/lcw/library/imagepicker/adapter/ImagePickerAdapter.java @@ -32,19 +32,16 @@ * Email: lichenwei.me@foxmail.com */ public class ImagePickerAdapter extends RecyclerView.Adapter { - private Context mContext; private List mMediaFileList; private boolean isShowCamera; - public ImagePickerAdapter(Context context, List mediaFiles) { this.mContext = context; this.mMediaFileList = mediaFiles; this.isShowCamera = ConfigManager.getInstance().isShowCamera(); } - @Override public int getItemViewType(int position) { if (isShowCamera) { @@ -85,7 +82,6 @@ public MediaFile getMediaFile(int position) { return mMediaFileList.get(position); } - @NonNull @Override public BaseHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) { @@ -105,7 +101,6 @@ public BaseHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) { return null; } - @Override public void onBindViewHolder(@NonNull BaseHolder holder, @SuppressLint("RecyclerView") final int position) { int itemType = getItemViewType(position); @@ -141,7 +136,6 @@ public void onClick(View view) { } } - /** * 绑定数据(图片、视频) * @@ -149,7 +143,6 @@ public void onClick(View view) { * @param mediaFile */ private void bindMedia(MediaHolder mediaHolder, MediaFile mediaFile) { - String imagePath = mediaFile.getPath(); if (!TextUtils.isEmpty(imagePath)) { //选择状态(仅是UI表现,真正数据交给SelectionManager管理) @@ -183,14 +176,12 @@ private void bindMedia(MediaHolder mediaHolder, MediaFile mediaFile) { ((VideoHolder) mediaHolder).mVideoDuration.setText(duration); } } - } /** * 图片Item */ class ImageHolder extends MediaHolder { - public ImageView mImageGif; public ImageHolder(View itemView) { @@ -203,7 +194,6 @@ public ImageHolder(View itemView) { * 视频Item */ class VideoHolder extends MediaHolder { - TextView mVideoDuration; VideoHolder(View itemView) { @@ -216,7 +206,6 @@ class VideoHolder extends MediaHolder { * 媒体Item */ class MediaHolder extends BaseHolder { - SquareImageView mImageView; ImageView mImageCheck; @@ -231,7 +220,6 @@ class MediaHolder extends BaseHolder { * 基础Item */ class BaseHolder extends RecyclerView.ViewHolder { - SquareRelativeLayout mSquareRelativeLayout; BaseHolder(View itemView) { @@ -240,7 +228,6 @@ class BaseHolder extends RecyclerView.ViewHolder { } } - /** * 接口回调,将点击事件向外抛 */ @@ -255,4 +242,4 @@ public interface OnItemClickListener { void onMediaCheck(View view, int position); } -} +} \ No newline at end of file diff --git a/imagepicker/src/main/java/com/lcw/library/imagepicker/adapter/ImagePreViewAdapter.java b/imagepicker/src/main/java/com/lcw/library/imagepicker/adapter/ImagePreViewAdapter.java index b7b307d..f619e72 100644 --- a/imagepicker/src/main/java/com/lcw/library/imagepicker/adapter/ImagePreViewAdapter.java +++ b/imagepicker/src/main/java/com/lcw/library/imagepicker/adapter/ImagePreViewAdapter.java @@ -22,7 +22,6 @@ * Email: lichenwei.me@foxmail.com */ public class ImagePreViewAdapter extends PagerAdapter { - private Context mContext; private List mMediaFileList; diff --git a/imagepicker/src/main/java/com/lcw/library/imagepicker/data/MediaFile.java b/imagepicker/src/main/java/com/lcw/library/imagepicker/data/MediaFile.java index e14a55b..8536a6c 100644 --- a/imagepicker/src/main/java/com/lcw/library/imagepicker/data/MediaFile.java +++ b/imagepicker/src/main/java/com/lcw/library/imagepicker/data/MediaFile.java @@ -8,7 +8,6 @@ * Email: lichenwei.me@foxmail.com */ public class MediaFile { - private String path; private String mime; private Integer folderId; diff --git a/imagepicker/src/main/java/com/lcw/library/imagepicker/data/MediaFolder.java b/imagepicker/src/main/java/com/lcw/library/imagepicker/data/MediaFolder.java index 68b1da8..0dfbf34 100644 --- a/imagepicker/src/main/java/com/lcw/library/imagepicker/data/MediaFolder.java +++ b/imagepicker/src/main/java/com/lcw/library/imagepicker/data/MediaFolder.java @@ -10,7 +10,6 @@ * Email: lichenwei.me@foxmail.com */ public class MediaFolder { - private int folderId; private String folderName; private String folderCover; diff --git a/imagepicker/src/main/java/com/lcw/library/imagepicker/loader/ImageScanner.java b/imagepicker/src/main/java/com/lcw/library/imagepicker/loader/ImageScanner.java index ba3d73b..165098e 100644 --- a/imagepicker/src/main/java/com/lcw/library/imagepicker/loader/ImageScanner.java +++ b/imagepicker/src/main/java/com/lcw/library/imagepicker/loader/ImageScanner.java @@ -17,12 +17,10 @@ * Email: lichenwei.me@foxmail.com */ public class ImageScanner extends AbsMediaScanner { - public ImageScanner(Context context) { super(context); } - @Override protected Uri getScanUri() { return MediaStore.Images.Media.EXTERNAL_CONTENT_URI; diff --git a/imagepicker/src/main/java/com/lcw/library/imagepicker/loader/MediaHandler.java b/imagepicker/src/main/java/com/lcw/library/imagepicker/loader/MediaHandler.java index 39b8bbc..f59db1c 100644 --- a/imagepicker/src/main/java/com/lcw/library/imagepicker/loader/MediaHandler.java +++ b/imagepicker/src/main/java/com/lcw/library/imagepicker/loader/MediaHandler.java @@ -21,7 +21,6 @@ * Email: lichenwei.me@foxmail.com */ public class MediaHandler { - public static final int ALL_MEDIA_FOLDER = -1;//全部媒体 public static final int ALL_VIDEO_FOLDER = -2;//全部视频 @@ -36,7 +35,6 @@ public static List getImageFolder(Context context, ArrayList getVideoFolder(Context context, ArrayList getVideoFolder(Context context, ArrayList getMediaFolder(Context context, ArrayList imageFileList, ArrayList videoFileList) { - //根据媒体所在文件夹Id进行聚类(相册) Map mediaFolderMap = new HashMap<>(); diff --git a/imagepicker/src/main/java/com/lcw/library/imagepicker/loader/VideoScanner.java b/imagepicker/src/main/java/com/lcw/library/imagepicker/loader/VideoScanner.java index eca2840..8784991 100644 --- a/imagepicker/src/main/java/com/lcw/library/imagepicker/loader/VideoScanner.java +++ b/imagepicker/src/main/java/com/lcw/library/imagepicker/loader/VideoScanner.java @@ -16,9 +16,7 @@ * Email: lichenwei.me@foxmail.com */ public class VideoScanner extends AbsMediaScanner { - public static final int ALL_IMAGES_FOLDER = -1;//全部图片 - private Context mContext; public VideoScanner(Context context) { @@ -66,7 +64,6 @@ protected String getOrder() { */ @Override protected MediaFile parse(Cursor cursor) { - @SuppressLint("Range") String path = cursor.getString(cursor.getColumnIndex(MediaStore.Video.Media.DATA)); @SuppressLint("Range") String mime = cursor.getString(cursor.getColumnIndex(MediaStore.Video.Media.MIME_TYPE)); @SuppressLint("Range") Integer folderId = cursor.getInt(cursor.getColumnIndex(MediaStore.Video.Media.BUCKET_ID)); diff --git a/imagepicker/src/main/java/com/lcw/library/imagepicker/manager/ConfigManager.java b/imagepicker/src/main/java/com/lcw/library/imagepicker/manager/ConfigManager.java index cb8e79d..399cab8 100644 --- a/imagepicker/src/main/java/com/lcw/library/imagepicker/manager/ConfigManager.java +++ b/imagepicker/src/main/java/com/lcw/library/imagepicker/manager/ConfigManager.java @@ -12,7 +12,6 @@ * Email: lichenwei.me@foxmail.com */ public class ConfigManager { - public static final int SELECT_MODE_SINGLE = 0; public static final int SELECT_MODE_MULTI = 1; diff --git a/imagepicker/src/main/java/com/lcw/library/imagepicker/manager/SelectionManager.java b/imagepicker/src/main/java/com/lcw/library/imagepicker/manager/SelectionManager.java index 8d1fe6c..98aac8a 100644 --- a/imagepicker/src/main/java/com/lcw/library/imagepicker/manager/SelectionManager.java +++ b/imagepicker/src/main/java/com/lcw/library/imagepicker/manager/SelectionManager.java @@ -13,11 +13,8 @@ * Email: lichenwei.me@foxmail.com */ public class SelectionManager { - private static volatile SelectionManager mSelectionManager; - private ArrayList mSelectImagePaths = new ArrayList<>(); - private int mMaxCount = 1; private SelectionManager() { diff --git a/imagepicker/src/main/java/com/lcw/library/imagepicker/provider/ImagePickerProvider.java b/imagepicker/src/main/java/com/lcw/library/imagepicker/provider/ImagePickerProvider.java index cf57eac..59a568c 100644 --- a/imagepicker/src/main/java/com/lcw/library/imagepicker/provider/ImagePickerProvider.java +++ b/imagepicker/src/main/java/com/lcw/library/imagepicker/provider/ImagePickerProvider.java @@ -12,7 +12,6 @@ * Email: lichenwei.me@foxmail.com */ public class ImagePickerProvider extends FileProvider { - public static String getFileProviderName(Context context) { return context.getPackageName() + ".provider"; } diff --git a/imagepicker/src/main/java/com/lcw/library/imagepicker/task/ImageLoadTask.java b/imagepicker/src/main/java/com/lcw/library/imagepicker/task/ImageLoadTask.java index 877162a..11a9342 100644 --- a/imagepicker/src/main/java/com/lcw/library/imagepicker/task/ImageLoadTask.java +++ b/imagepicker/src/main/java/com/lcw/library/imagepicker/task/ImageLoadTask.java @@ -17,7 +17,6 @@ * Email: lichenwei.me@foxmail.com */ public class ImageLoadTask implements Runnable { - private Context mContext; private ImageScanner mImageScanner; private MediaLoadCallback mMediaLoadCallback; diff --git a/imagepicker/src/main/java/com/lcw/library/imagepicker/task/MediaLoadTask.java b/imagepicker/src/main/java/com/lcw/library/imagepicker/task/MediaLoadTask.java index 2ee4134..1891d03 100644 --- a/imagepicker/src/main/java/com/lcw/library/imagepicker/task/MediaLoadTask.java +++ b/imagepicker/src/main/java/com/lcw/library/imagepicker/task/MediaLoadTask.java @@ -18,7 +18,6 @@ * Email: lichenwei.me@foxmail.com */ public class MediaLoadTask implements Runnable { - private Context mContext; private ImageScanner mImageScanner; private VideoScanner mVideoScanner; diff --git a/imagepicker/src/main/java/com/lcw/library/imagepicker/utils/ImageLoader.java b/imagepicker/src/main/java/com/lcw/library/imagepicker/utils/ImageLoader.java index 411b605..f195ee3 100644 --- a/imagepicker/src/main/java/com/lcw/library/imagepicker/utils/ImageLoader.java +++ b/imagepicker/src/main/java/com/lcw/library/imagepicker/utils/ImageLoader.java @@ -12,7 +12,6 @@ * Email: lichenwei.me@foxmail.com */ public interface ImageLoader extends Serializable { - /** * 缩略图加载方案 * @@ -29,7 +28,6 @@ public interface ImageLoader extends Serializable { */ void loadPreImage(ImageView imageView, String imagePath); - /** * 视频播放方案 * diff --git a/imagepicker/src/main/java/com/lcw/library/imagepicker/utils/MediaFileUtil.java b/imagepicker/src/main/java/com/lcw/library/imagepicker/utils/MediaFileUtil.java index 1c8bd5e..eeace88 100644 --- a/imagepicker/src/main/java/com/lcw/library/imagepicker/utils/MediaFileUtil.java +++ b/imagepicker/src/main/java/com/lcw/library/imagepicker/utils/MediaFileUtil.java @@ -9,7 +9,6 @@ * E-Mail Address:xingzhe@gaoding.com */ public class MediaFileUtil { - // comma separated list of all file extensions supported by the media scanner public static String sFileExtensions; @@ -58,7 +57,6 @@ public class MediaFileUtil { //静态内部类 static class MediaFileType { - int fileType; String mimeType; @@ -75,7 +73,7 @@ static class MediaFileType { static void addFileType(String extension, int fileType, String mimeType) { sFileTypeMap.put(extension, new MediaFileType(fileType, mimeType)); - sMimeTypeMap.put(mimeType, new Integer(fileType)); + sMimeTypeMap.put(mimeType, Integer.valueOf(fileType)); } static { diff --git a/imagepicker/src/main/java/com/lcw/library/imagepicker/utils/Utils.java b/imagepicker/src/main/java/com/lcw/library/imagepicker/utils/Utils.java index f25eca7..c7e1322 100644 --- a/imagepicker/src/main/java/com/lcw/library/imagepicker/utils/Utils.java +++ b/imagepicker/src/main/java/com/lcw/library/imagepicker/utils/Utils.java @@ -16,7 +16,6 @@ * Email: lichenwei.me@foxmail.com */ public class Utils { - /** * 获取屏幕的宽和高 * From 9ef6ed4842d8e4a8a95ca4c4cab8df1c2e03a9bc Mon Sep 17 00:00:00 2001 From: wangsen Date: Sat, 20 Nov 2021 17:12:55 +0800 Subject: [PATCH 04/28] =?UTF-8?q?=E6=9B=B4=E6=96=B0=E7=BB=84=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/build.gradle | 2 +- build.gradle | 2 +- gradle/wrapper/gradle-wrapper.properties | 2 +- imagepicker/build.gradle | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/app/build.gradle b/app/build.gradle index a3502d0..ae97e0b 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -27,7 +27,7 @@ android { dependencies { implementation fileTree(include: ['*.jar'], dir: 'libs') - implementation 'androidx.appcompat:appcompat:1.4.0-rc01' + implementation 'androidx.appcompat:appcompat:1.4.0' implementation 'com.github.bumptech.glide:glide:4.12.0' annotationProcessor 'com.github.bumptech.glide:compiler:4.12.0' implementation project(':imagepicker') diff --git a/build.gradle b/build.gradle index 8afe127..47f12be 100644 --- a/build.gradle +++ b/build.gradle @@ -6,7 +6,7 @@ buildscript { mavenCentral() } dependencies { - classpath 'com.android.tools.build:gradle:7.2.0-alpha03' + classpath 'com.android.tools.build:gradle:7.2.0-alpha05' // NOTE: Do not place your application dependencies here; they belong // in the individual module build.gradle files } diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties index 7477f1e..a8d2afa 100644 --- a/gradle/wrapper/gradle-wrapper.properties +++ b/gradle/wrapper/gradle-wrapper.properties @@ -3,4 +3,4 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-7.3-rc-3-all.zip \ No newline at end of file +distributionUrl=https\://services.gradle.org/distributions/gradle-7.3-all.zip \ No newline at end of file diff --git a/imagepicker/build.gradle b/imagepicker/build.gradle index 24926dd..b710b31 100644 --- a/imagepicker/build.gradle +++ b/imagepicker/build.gradle @@ -31,6 +31,6 @@ repositories { dependencies { implementation fileTree(include: ['*.jar'], dir: 'libs') - implementation 'androidx.appcompat:appcompat:1.4.0-rc01' + implementation 'androidx.appcompat:appcompat:1.4.0' implementation 'androidx.recyclerview:recyclerview:1.2.1' } \ No newline at end of file From 2676f4d03b47e8bd3bc7698d56815fe5d5a9b12e Mon Sep 17 00:00:00 2001 From: wangsen Date: Sat, 11 Dec 2021 11:34:11 +0800 Subject: [PATCH 05/28] =?UTF-8?q?=E5=8D=87=E7=BA=A7=E5=88=B0=20API=2032?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/build.gradle | 6 +++--- gradle/wrapper/gradle-wrapper.properties | 2 +- imagepicker/build.gradle | 6 +++--- 3 files changed, 7 insertions(+), 7 deletions(-) diff --git a/app/build.gradle b/app/build.gradle index ae97e0b..990ee90 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -1,12 +1,12 @@ apply plugin: 'com.android.application' android { - compileSdkVersion 31 - buildToolsVersion '31.0.0' + compileSdkVersion 32 + buildToolsVersion '32.0.0' defaultConfig { applicationId "com.lcw.demo.imagepicker" minSdkVersion 16 - targetSdkVersion 31 + targetSdkVersion 32 versionCode 228 versionName "2.2.8" } diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties index a8d2afa..ae81649 100644 --- a/gradle/wrapper/gradle-wrapper.properties +++ b/gradle/wrapper/gradle-wrapper.properties @@ -3,4 +3,4 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-7.3-all.zip \ No newline at end of file +distributionUrl=https\://services.gradle.org/distributions/gradle-7.3.1-all.zip \ No newline at end of file diff --git a/imagepicker/build.gradle b/imagepicker/build.gradle index b710b31..654fdd6 100644 --- a/imagepicker/build.gradle +++ b/imagepicker/build.gradle @@ -1,11 +1,11 @@ apply plugin: 'com.android.library' android { - compileSdkVersion 31 - buildToolsVersion '31.0.0' + compileSdkVersion 32 + buildToolsVersion '32.0.0' defaultConfig { minSdkVersion 16 - targetSdkVersion 31 + targetSdkVersion 32 versionCode 228 versionName "2.2.8" } From 3329746db95609766119e89ad6cf49982d2c61a4 Mon Sep 17 00:00:00 2001 From: wangsen Date: Fri, 24 Dec 2021 17:27:44 +0800 Subject: [PATCH 06/28] =?UTF-8?q?=E6=9B=B4=E6=96=B0=E7=BB=84=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- build.gradle | 2 +- gradle/wrapper/gradle-wrapper.properties | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/build.gradle b/build.gradle index 47f12be..c78bbb6 100644 --- a/build.gradle +++ b/build.gradle @@ -6,7 +6,7 @@ buildscript { mavenCentral() } dependencies { - classpath 'com.android.tools.build:gradle:7.2.0-alpha05' + classpath 'com.android.tools.build:gradle:7.2.0-alpha06' // NOTE: Do not place your application dependencies here; they belong // in the individual module build.gradle files } diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties index ae81649..018f0b0 100644 --- a/gradle/wrapper/gradle-wrapper.properties +++ b/gradle/wrapper/gradle-wrapper.properties @@ -3,4 +3,4 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-7.3.1-all.zip \ No newline at end of file +distributionUrl=https\://services.gradle.org/distributions/gradle-7.3.3-all.zip \ No newline at end of file From 45d5680c82562cd39fe2db4ad3684bf6ed36a02f Mon Sep 17 00:00:00 2001 From: wangsen Date: Sat, 15 Jan 2022 13:08:47 +0800 Subject: [PATCH 07/28] =?UTF-8?q?=E6=9B=B4=E6=96=B0=E7=BB=84=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/build.gradle | 2 +- build.gradle | 2 +- imagepicker/build.gradle | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/app/build.gradle b/app/build.gradle index 990ee90..8a0e086 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -27,7 +27,7 @@ android { dependencies { implementation fileTree(include: ['*.jar'], dir: 'libs') - implementation 'androidx.appcompat:appcompat:1.4.0' + implementation 'androidx.appcompat:appcompat:1.4.1' implementation 'com.github.bumptech.glide:glide:4.12.0' annotationProcessor 'com.github.bumptech.glide:compiler:4.12.0' implementation project(':imagepicker') diff --git a/build.gradle b/build.gradle index c78bbb6..7a1823e 100644 --- a/build.gradle +++ b/build.gradle @@ -6,7 +6,7 @@ buildscript { mavenCentral() } dependencies { - classpath 'com.android.tools.build:gradle:7.2.0-alpha06' + classpath 'com.android.tools.build:gradle:7.2.0-alpha07' // NOTE: Do not place your application dependencies here; they belong // in the individual module build.gradle files } diff --git a/imagepicker/build.gradle b/imagepicker/build.gradle index 654fdd6..c2310b2 100644 --- a/imagepicker/build.gradle +++ b/imagepicker/build.gradle @@ -31,6 +31,6 @@ repositories { dependencies { implementation fileTree(include: ['*.jar'], dir: 'libs') - implementation 'androidx.appcompat:appcompat:1.4.0' + implementation 'androidx.appcompat:appcompat:1.4.1' implementation 'androidx.recyclerview:recyclerview:1.2.1' } \ No newline at end of file From 90005d618de23459b5db4d1faa964df05a9fa243 Mon Sep 17 00:00:00 2001 From: wangsen Date: Sun, 30 Jan 2022 10:09:50 +0800 Subject: [PATCH 08/28] =?UTF-8?q?=E6=9B=B4=E6=96=B0=E7=BB=84=E4=BB=B6?= =?UTF-8?q?=EF=BC=8C=E5=8D=87=E7=BA=A7=E5=88=B0=20Java=2011?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/build.gradle | 6 +++--- build.gradle | 2 +- imagepicker/build.gradle | 6 +++--- 3 files changed, 7 insertions(+), 7 deletions(-) diff --git a/app/build.gradle b/app/build.gradle index 8a0e086..4bbcf38 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -2,7 +2,7 @@ apply plugin: 'com.android.application' android { compileSdkVersion 32 - buildToolsVersion '32.0.0' + buildToolsVersion '32.1.0-rc1' defaultConfig { applicationId "com.lcw.demo.imagepicker" minSdkVersion 16 @@ -20,8 +20,8 @@ android { abortOnError false } compileOptions { - sourceCompatibility JavaVersion.VERSION_1_8 - targetCompatibility JavaVersion.VERSION_1_8 + sourceCompatibility JavaVersion.VERSION_11 + targetCompatibility JavaVersion.VERSION_11 } } diff --git a/build.gradle b/build.gradle index 7a1823e..41b4304 100644 --- a/build.gradle +++ b/build.gradle @@ -6,7 +6,7 @@ buildscript { mavenCentral() } dependencies { - classpath 'com.android.tools.build:gradle:7.2.0-alpha07' + classpath 'com.android.tools.build:gradle:7.2.0-beta01' // NOTE: Do not place your application dependencies here; they belong // in the individual module build.gradle files } diff --git a/imagepicker/build.gradle b/imagepicker/build.gradle index c2310b2..169eba8 100644 --- a/imagepicker/build.gradle +++ b/imagepicker/build.gradle @@ -2,7 +2,7 @@ apply plugin: 'com.android.library' android { compileSdkVersion 32 - buildToolsVersion '32.0.0' + buildToolsVersion '32.1.0-rc1' defaultConfig { minSdkVersion 16 targetSdkVersion 32 @@ -19,8 +19,8 @@ android { abortOnError false } compileOptions { - sourceCompatibility JavaVersion.VERSION_1_8 - targetCompatibility JavaVersion.VERSION_1_8 + sourceCompatibility JavaVersion.VERSION_11 + targetCompatibility JavaVersion.VERSION_11 } } From b0a2b27fc010b20405dea5a7c5a7b3b863a428d4 Mon Sep 17 00:00:00 2001 From: wangsen Date: Tue, 8 Feb 2022 21:23:37 +0800 Subject: [PATCH 09/28] =?UTF-8?q?=E6=9B=B4=E6=96=B0=E7=BB=84=E4=BB=B6?= =?UTF-8?q?=EF=BC=8C=E6=9C=80=E4=BD=8E=20API=20=E5=8D=87=E7=BA=A7=E5=88=B0?= =?UTF-8?q?=2026=EF=BC=8C=E5=8F=AA=E6=94=AF=E6=8C=81=2064=20=E4=BD=8D?= =?UTF-8?q?=E6=9E=B6=E6=9E=84?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .gitignore | 1 + .idea/misc.xml | 63 ---------------------------------------- app/build.gradle | 7 +++-- build.gradle | 2 +- imagepicker/build.gradle | 3 +- 5 files changed, 8 insertions(+), 68 deletions(-) delete mode 100644 .idea/misc.xml diff --git a/.gitignore b/.gitignore index 2cfdd1e..82edc91 100644 --- a/.gitignore +++ b/.gitignore @@ -65,3 +65,4 @@ fastlane/test_output fastlane/readme.md /.idea/compiler.xml /.idea/jarRepositories.xml +/.idea/misc.xml diff --git a/.idea/misc.xml b/.idea/misc.xml deleted file mode 100644 index d84c130..0000000 --- a/.idea/misc.xml +++ /dev/null @@ -1,63 +0,0 @@ - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/app/build.gradle b/app/build.gradle index 4bbcf38..e571d06 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -5,10 +5,11 @@ android { buildToolsVersion '32.1.0-rc1' defaultConfig { applicationId "com.lcw.demo.imagepicker" - minSdkVersion 16 + minSdkVersion 26 targetSdkVersion 32 versionCode 228 versionName "2.2.8" + ndk.abiFilters 'arm64-v8a' } buildTypes { release { @@ -28,7 +29,7 @@ android { dependencies { implementation fileTree(include: ['*.jar'], dir: 'libs') implementation 'androidx.appcompat:appcompat:1.4.1' - implementation 'com.github.bumptech.glide:glide:4.12.0' - annotationProcessor 'com.github.bumptech.glide:compiler:4.12.0' + implementation 'com.github.bumptech.glide:glide:4.13.0' + annotationProcessor 'com.github.bumptech.glide:compiler:4.13.0' implementation project(':imagepicker') } \ No newline at end of file diff --git a/build.gradle b/build.gradle index 41b4304..cb58f0e 100644 --- a/build.gradle +++ b/build.gradle @@ -6,7 +6,7 @@ buildscript { mavenCentral() } dependencies { - classpath 'com.android.tools.build:gradle:7.2.0-beta01' + classpath 'com.android.tools.build:gradle:7.3.0-alpha01' // NOTE: Do not place your application dependencies here; they belong // in the individual module build.gradle files } diff --git a/imagepicker/build.gradle b/imagepicker/build.gradle index 169eba8..81f74f7 100644 --- a/imagepicker/build.gradle +++ b/imagepicker/build.gradle @@ -4,10 +4,11 @@ android { compileSdkVersion 32 buildToolsVersion '32.1.0-rc1' defaultConfig { - minSdkVersion 16 + minSdkVersion 26 targetSdkVersion 32 versionCode 228 versionName "2.2.8" + ndk.abiFilters 'arm64-v8a' } buildTypes { release { From 8d46dfddbf7904d3ea0d04af1ba4aeeae4745fbd Mon Sep 17 00:00:00 2001 From: wangsen Date: Sun, 13 Feb 2022 08:35:43 +0800 Subject: [PATCH 10/28] =?UTF-8?q?=E6=9B=B4=E6=96=B0=E7=BB=84=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- build.gradle | 2 +- gradle/wrapper/gradle-wrapper.properties | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/build.gradle b/build.gradle index cb58f0e..7f26be4 100644 --- a/build.gradle +++ b/build.gradle @@ -6,7 +6,7 @@ buildscript { mavenCentral() } dependencies { - classpath 'com.android.tools.build:gradle:7.3.0-alpha01' + classpath 'com.android.tools.build:gradle:7.3.0-alpha02' // NOTE: Do not place your application dependencies here; they belong // in the individual module build.gradle files } diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties index 018f0b0..15cb4cd 100644 --- a/gradle/wrapper/gradle-wrapper.properties +++ b/gradle/wrapper/gradle-wrapper.properties @@ -3,4 +3,4 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-7.3.3-all.zip \ No newline at end of file +distributionUrl=https\://services.gradle.org/distributions/gradle-7.4-all.zip \ No newline at end of file From 1c014904c6d2d33b5a6efeba43e39e1db77a18b4 Mon Sep 17 00:00:00 2001 From: wangsen Date: Mon, 21 Feb 2022 12:42:21 +0800 Subject: [PATCH 11/28] =?UTF-8?q?=E6=9B=B4=E6=96=B0=E7=BB=84=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- build.gradle | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/build.gradle b/build.gradle index 7f26be4..67d47d3 100644 --- a/build.gradle +++ b/build.gradle @@ -6,7 +6,7 @@ buildscript { mavenCentral() } dependencies { - classpath 'com.android.tools.build:gradle:7.3.0-alpha02' + classpath 'com.android.tools.build:gradle:7.3.0-alpha03' // NOTE: Do not place your application dependencies here; they belong // in the individual module build.gradle files } From ac7eebf19528e7d3274c13108f4d897835d901b9 Mon Sep 17 00:00:00 2001 From: wangsen Date: Sun, 6 Mar 2022 10:51:54 +0800 Subject: [PATCH 12/28] =?UTF-8?q?=E6=9B=B4=E6=96=B0=E7=BB=84=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- build.gradle | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/build.gradle b/build.gradle index 67d47d3..03463ce 100644 --- a/build.gradle +++ b/build.gradle @@ -6,7 +6,7 @@ buildscript { mavenCentral() } dependencies { - classpath 'com.android.tools.build:gradle:7.3.0-alpha03' + classpath 'com.android.tools.build:gradle:7.3.0-alpha05' // NOTE: Do not place your application dependencies here; they belong // in the individual module build.gradle files } From d08dfcf47243e66f13bb894f00d6d3d8fd8f3584 Mon Sep 17 00:00:00 2001 From: wangsen Date: Sun, 13 Mar 2022 22:21:06 +0800 Subject: [PATCH 13/28] =?UTF-8?q?=E6=9B=B4=E6=96=B0=E7=BB=84=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- gradle/wrapper/gradle-wrapper.properties | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties index 15cb4cd..33f2f38 100644 --- a/gradle/wrapper/gradle-wrapper.properties +++ b/gradle/wrapper/gradle-wrapper.properties @@ -3,4 +3,4 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-7.4-all.zip \ No newline at end of file +distributionUrl=https\://services.gradle.org/distributions/gradle-7.4.1-all.zip \ No newline at end of file From 6bd111a2f19f483d86bfcc7b93940bbcae329c3b Mon Sep 17 00:00:00 2001 From: wangsen Date: Sat, 19 Mar 2022 10:49:15 +0800 Subject: [PATCH 14/28] =?UTF-8?q?=E6=9B=B4=E6=96=B0=E7=BB=84=E4=BB=B6?= =?UTF-8?q?=EF=BC=8C=E5=8D=87=E7=BA=A7=E5=88=B0=20Android=2013=20API?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/build.gradle | 8 ++++---- build.gradle | 2 +- imagepicker/build.gradle | 10 +++++----- 3 files changed, 10 insertions(+), 10 deletions(-) diff --git a/app/build.gradle b/app/build.gradle index e571d06..8870a89 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -1,12 +1,12 @@ apply plugin: 'com.android.application' android { - compileSdkVersion 32 - buildToolsVersion '32.1.0-rc1' + compileSdkPreview "Tiramisu" + buildToolsVersion '33.0.0-rc2' defaultConfig { applicationId "com.lcw.demo.imagepicker" minSdkVersion 26 - targetSdkVersion 32 + targetSdkPreview "Tiramisu" versionCode 228 versionName "2.2.8" ndk.abiFilters 'arm64-v8a' @@ -28,7 +28,7 @@ android { dependencies { implementation fileTree(include: ['*.jar'], dir: 'libs') - implementation 'androidx.appcompat:appcompat:1.4.1' + implementation 'androidx.appcompat:appcompat:1.6.0-alpha01' implementation 'com.github.bumptech.glide:glide:4.13.0' annotationProcessor 'com.github.bumptech.glide:compiler:4.13.0' implementation project(':imagepicker') diff --git a/build.gradle b/build.gradle index 03463ce..3f43c82 100644 --- a/build.gradle +++ b/build.gradle @@ -6,7 +6,7 @@ buildscript { mavenCentral() } dependencies { - classpath 'com.android.tools.build:gradle:7.3.0-alpha05' + classpath 'com.android.tools.build:gradle:7.3.0-alpha07' // NOTE: Do not place your application dependencies here; they belong // in the individual module build.gradle files } diff --git a/imagepicker/build.gradle b/imagepicker/build.gradle index 81f74f7..f458da0 100644 --- a/imagepicker/build.gradle +++ b/imagepicker/build.gradle @@ -1,11 +1,11 @@ apply plugin: 'com.android.library' android { - compileSdkVersion 32 - buildToolsVersion '32.1.0-rc1' + compileSdkPreview "Tiramisu" + buildToolsVersion '33.0.0-rc2' defaultConfig { minSdkVersion 26 - targetSdkVersion 32 + targetSdkPreview "Tiramisu" versionCode 228 versionName "2.2.8" ndk.abiFilters 'arm64-v8a' @@ -32,6 +32,6 @@ repositories { dependencies { implementation fileTree(include: ['*.jar'], dir: 'libs') - implementation 'androidx.appcompat:appcompat:1.4.1' - implementation 'androidx.recyclerview:recyclerview:1.2.1' + implementation 'androidx.appcompat:appcompat:1.6.0-alpha01' + implementation 'androidx.recyclerview:recyclerview:1.3.0-alpha01' } \ No newline at end of file From bccc27519ed57bab19264ecfc36579dc6ed10c90 Mon Sep 17 00:00:00 2001 From: wangsen Date: Thu, 7 Apr 2022 09:42:11 +0800 Subject: [PATCH 15/28] =?UTF-8?q?=E6=9B=B4=E6=96=B0=E7=BB=84=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- gradle/wrapper/gradle-wrapper.properties | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties index 33f2f38..01d39be 100644 --- a/gradle/wrapper/gradle-wrapper.properties +++ b/gradle/wrapper/gradle-wrapper.properties @@ -3,4 +3,4 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-7.4.1-all.zip \ No newline at end of file +distributionUrl=https\://services.gradle.org/distributions/gradle-7.4.2-all.zip \ No newline at end of file From 7647b54af5fcb48284dc8ad7afb053f7875991d0 Mon Sep 17 00:00:00 2001 From: wangsen Date: Sun, 17 Apr 2022 20:23:28 +0800 Subject: [PATCH 16/28] =?UTF-8?q?=E6=9B=B4=E6=96=B0=E7=BB=84=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- build.gradle | 2 +- imagepicker/build.gradle | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/build.gradle b/build.gradle index 3f43c82..743c6c9 100644 --- a/build.gradle +++ b/build.gradle @@ -6,7 +6,7 @@ buildscript { mavenCentral() } dependencies { - classpath 'com.android.tools.build:gradle:7.3.0-alpha07' + classpath 'com.android.tools.build:gradle:7.3.0-alpha08' // NOTE: Do not place your application dependencies here; they belong // in the individual module build.gradle files } diff --git a/imagepicker/build.gradle b/imagepicker/build.gradle index f458da0..0673c9f 100644 --- a/imagepicker/build.gradle +++ b/imagepicker/build.gradle @@ -33,5 +33,5 @@ repositories { dependencies { implementation fileTree(include: ['*.jar'], dir: 'libs') implementation 'androidx.appcompat:appcompat:1.6.0-alpha01' - implementation 'androidx.recyclerview:recyclerview:1.3.0-alpha01' + implementation 'androidx.recyclerview:recyclerview:1.3.0-alpha02' } \ No newline at end of file From 15d2425dd021276eb3225045020673761e8c4925 Mon Sep 17 00:00:00 2001 From: wangsen Date: Sat, 23 Apr 2022 21:07:55 +0800 Subject: [PATCH 17/28] =?UTF-8?q?=E6=9B=B4=E6=96=B0=E7=BB=84=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- build.gradle | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/build.gradle b/build.gradle index 743c6c9..be72757 100644 --- a/build.gradle +++ b/build.gradle @@ -6,7 +6,7 @@ buildscript { mavenCentral() } dependencies { - classpath 'com.android.tools.build:gradle:7.3.0-alpha08' + classpath 'com.android.tools.build:gradle:7.3.0-alpha09' // NOTE: Do not place your application dependencies here; they belong // in the individual module build.gradle files } From ac4dbb3f859a5f8e9b6ba6b8071093686faf99d1 Mon Sep 17 00:00:00 2001 From: wangsen Date: Sun, 10 Jul 2022 22:39:59 +0800 Subject: [PATCH 18/28] =?UTF-8?q?=E6=9B=B4=E6=96=B0=E7=BB=84=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .idea/.gitignore | 3 +++ app/build.gradle | 12 ++++++------ build.gradle | 2 +- imagepicker/build.gradle | 10 +++++----- 4 files changed, 15 insertions(+), 12 deletions(-) create mode 100644 .idea/.gitignore diff --git a/.idea/.gitignore b/.idea/.gitignore new file mode 100644 index 0000000..26d3352 --- /dev/null +++ b/.idea/.gitignore @@ -0,0 +1,3 @@ +# Default ignored files +/shelf/ +/workspace.xml diff --git a/app/build.gradle b/app/build.gradle index 8870a89..8921ee1 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -1,12 +1,12 @@ apply plugin: 'com.android.application' android { - compileSdkPreview "Tiramisu" - buildToolsVersion '33.0.0-rc2' + compileSdkVersion 33 + buildToolsVersion '33.0.0' defaultConfig { applicationId "com.lcw.demo.imagepicker" minSdkVersion 26 - targetSdkPreview "Tiramisu" + targetSdkVersion 33 versionCode 228 versionName "2.2.8" ndk.abiFilters 'arm64-v8a' @@ -28,8 +28,8 @@ android { dependencies { implementation fileTree(include: ['*.jar'], dir: 'libs') - implementation 'androidx.appcompat:appcompat:1.6.0-alpha01' - implementation 'com.github.bumptech.glide:glide:4.13.0' - annotationProcessor 'com.github.bumptech.glide:compiler:4.13.0' + implementation 'androidx.appcompat:appcompat:1.6.0-alpha05' + implementation 'com.github.bumptech.glide:glide:4.13.2' + annotationProcessor 'com.github.bumptech.glide:compiler:4.13.2' implementation project(':imagepicker') } \ No newline at end of file diff --git a/build.gradle b/build.gradle index be72757..a2a9e26 100644 --- a/build.gradle +++ b/build.gradle @@ -6,7 +6,7 @@ buildscript { mavenCentral() } dependencies { - classpath 'com.android.tools.build:gradle:7.3.0-alpha09' + classpath 'com.android.tools.build:gradle:7.4.0-alpha08' // NOTE: Do not place your application dependencies here; they belong // in the individual module build.gradle files } diff --git a/imagepicker/build.gradle b/imagepicker/build.gradle index 0673c9f..85eb8fc 100644 --- a/imagepicker/build.gradle +++ b/imagepicker/build.gradle @@ -1,11 +1,11 @@ apply plugin: 'com.android.library' android { - compileSdkPreview "Tiramisu" - buildToolsVersion '33.0.0-rc2' + compileSdkVersion 33 + buildToolsVersion '33.0.0' defaultConfig { minSdkVersion 26 - targetSdkPreview "Tiramisu" + targetSdkVersion 33 versionCode 228 versionName "2.2.8" ndk.abiFilters 'arm64-v8a' @@ -32,6 +32,6 @@ repositories { dependencies { implementation fileTree(include: ['*.jar'], dir: 'libs') - implementation 'androidx.appcompat:appcompat:1.6.0-alpha01' - implementation 'androidx.recyclerview:recyclerview:1.3.0-alpha02' + implementation 'androidx.appcompat:appcompat:1.6.0-alpha05' + implementation 'androidx.recyclerview:recyclerview:1.3.0-beta01' } \ No newline at end of file From 2830de2269d11514946f9e58a08ae43560c90231 Mon Sep 17 00:00:00 2001 From: wangsen Date: Tue, 12 Jul 2022 16:17:45 +0800 Subject: [PATCH 19/28] =?UTF-8?q?=E5=85=A8=E9=9D=A2=E6=94=AF=E6=8C=81=20An?= =?UTF-8?q?droid=2013=EF=BC=8C=E4=BF=AE=E5=A4=8D=E8=8E=B7=E5=8F=96?= =?UTF-8?q?=E7=9B=B8=E5=86=8C=E6=9D=83=E9=99=90=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .idea/modules.xml | 1 - imagepicker/src/main/AndroidManifest.xml | 7 ++++++- .../library/imagepicker/activity/ImagePickerActivity.java | 2 +- .../com/lcw/library/imagepicker/utils/PermissionUtil.java | 7 ++++++- 4 files changed, 13 insertions(+), 4 deletions(-) diff --git a/.idea/modules.xml b/.idea/modules.xml index 11ab2b3..04b0b4a 100644 --- a/.idea/modules.xml +++ b/.idea/modules.xml @@ -4,7 +4,6 @@ - diff --git a/imagepicker/src/main/AndroidManifest.xml b/imagepicker/src/main/AndroidManifest.xml index 8c69474..cb5aa35 100644 --- a/imagepicker/src/main/AndroidManifest.xml +++ b/imagepicker/src/main/AndroidManifest.xml @@ -1,9 +1,14 @@ - + + + + diff --git a/imagepicker/src/main/java/com/lcw/library/imagepicker/activity/ImagePickerActivity.java b/imagepicker/src/main/java/com/lcw/library/imagepicker/activity/ImagePickerActivity.java index a149a3e..5e0a44a 100644 --- a/imagepicker/src/main/java/com/lcw/library/imagepicker/activity/ImagePickerActivity.java +++ b/imagepicker/src/main/java/com/lcw/library/imagepicker/activity/ImagePickerActivity.java @@ -236,7 +236,7 @@ protected void getData() { //进行权限的判断 boolean hasPermission = PermissionUtil.checkPermission(this); if (!hasPermission) { - ActivityCompat.requestPermissions(this, new String[]{Manifest.permission.CAMERA, Manifest.permission.WRITE_EXTERNAL_STORAGE}, REQUEST_PERMISSION_CAMERA_CODE); + ActivityCompat.requestPermissions(this, new String[]{Manifest.permission.CAMERA, Manifest.permission.WRITE_EXTERNAL_STORAGE, Manifest.permission.READ_MEDIA_IMAGES}, REQUEST_PERMISSION_CAMERA_CODE); } else { startScannerTask(); } diff --git a/imagepicker/src/main/java/com/lcw/library/imagepicker/utils/PermissionUtil.java b/imagepicker/src/main/java/com/lcw/library/imagepicker/utils/PermissionUtil.java index 4087deb..cda7130 100644 --- a/imagepicker/src/main/java/com/lcw/library/imagepicker/utils/PermissionUtil.java +++ b/imagepicker/src/main/java/com/lcw/library/imagepicker/utils/PermissionUtil.java @@ -3,6 +3,7 @@ import android.Manifest; import android.content.Context; import android.content.pm.PackageManager; +import android.os.Build; import androidx.core.content.ContextCompat; @@ -20,6 +21,10 @@ public class PermissionUtil { * @return */ public static boolean checkPermission(Context context) { - return ContextCompat.checkSelfPermission(context, Manifest.permission.READ_EXTERNAL_STORAGE) == PackageManager.PERMISSION_GRANTED && ContextCompat.checkSelfPermission(context, Manifest.permission.CAMERA) == PackageManager.PERMISSION_GRANTED; + if (Build.VERSION.SDK_INT >= 33) { + return ContextCompat.checkSelfPermission(context, Manifest.permission.READ_MEDIA_IMAGES) == PackageManager.PERMISSION_GRANTED && ContextCompat.checkSelfPermission(context, Manifest.permission.CAMERA) == PackageManager.PERMISSION_GRANTED; + } else { + return ContextCompat.checkSelfPermission(context, Manifest.permission.READ_EXTERNAL_STORAGE) == PackageManager.PERMISSION_GRANTED && ContextCompat.checkSelfPermission(context, Manifest.permission.CAMERA) == PackageManager.PERMISSION_GRANTED; + } } } \ No newline at end of file From a0fae91bbb22d02110bfc48cd5abac8cab2e45ac Mon Sep 17 00:00:00 2001 From: wangsen Date: Mon, 12 Sep 2022 22:00:52 +0800 Subject: [PATCH 20/28] =?UTF-8?q?=E6=9B=B4=E6=96=B0=E7=BB=84=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .idea/modules.xml | 1 + app/build.gradle | 2 +- build.gradle | 2 +- gradle/wrapper/gradle-wrapper.properties | 2 +- imagepicker/build.gradle | 4 ++-- 5 files changed, 6 insertions(+), 5 deletions(-) diff --git a/.idea/modules.xml b/.idea/modules.xml index 04b0b4a..11ab2b3 100644 --- a/.idea/modules.xml +++ b/.idea/modules.xml @@ -4,6 +4,7 @@ + diff --git a/app/build.gradle b/app/build.gradle index 8921ee1..ec57bdb 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -28,7 +28,7 @@ android { dependencies { implementation fileTree(include: ['*.jar'], dir: 'libs') - implementation 'androidx.appcompat:appcompat:1.6.0-alpha05' + implementation 'androidx.appcompat:appcompat:1.6.0-rc01' implementation 'com.github.bumptech.glide:glide:4.13.2' annotationProcessor 'com.github.bumptech.glide:compiler:4.13.2' implementation project(':imagepicker') diff --git a/build.gradle b/build.gradle index a2a9e26..1a029fd 100644 --- a/build.gradle +++ b/build.gradle @@ -6,7 +6,7 @@ buildscript { mavenCentral() } dependencies { - classpath 'com.android.tools.build:gradle:7.4.0-alpha08' + classpath 'com.android.tools.build:gradle:7.4.0-alpha10' // NOTE: Do not place your application dependencies here; they belong // in the individual module build.gradle files } diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties index 01d39be..159f14e 100644 --- a/gradle/wrapper/gradle-wrapper.properties +++ b/gradle/wrapper/gradle-wrapper.properties @@ -3,4 +3,4 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-7.4.2-all.zip \ No newline at end of file +distributionUrl=https\://services.gradle.org/distributions/gradle-7.5.1.all.zip \ No newline at end of file diff --git a/imagepicker/build.gradle b/imagepicker/build.gradle index 85eb8fc..fd8e0a9 100644 --- a/imagepicker/build.gradle +++ b/imagepicker/build.gradle @@ -32,6 +32,6 @@ repositories { dependencies { implementation fileTree(include: ['*.jar'], dir: 'libs') - implementation 'androidx.appcompat:appcompat:1.6.0-alpha05' - implementation 'androidx.recyclerview:recyclerview:1.3.0-beta01' + implementation 'androidx.appcompat:appcompat:1.6.0-rc01' + implementation 'androidx.recyclerview:recyclerview:1.3.0-beta02' } \ No newline at end of file From f11fda78be0cbf93b56553bea5b5808cb71aea6e Mon Sep 17 00:00:00 2001 From: wangsen Date: Sat, 1 Oct 2022 12:38:02 +0800 Subject: [PATCH 21/28] =?UTF-8?q?=E6=9B=B4=E6=96=B0=E7=BB=84=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/build.gradle | 4 ++-- build.gradle | 2 +- imagepicker/build.gradle | 4 +--- 3 files changed, 4 insertions(+), 6 deletions(-) diff --git a/app/build.gradle b/app/build.gradle index ec57bdb..21e9f91 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -29,7 +29,7 @@ android { dependencies { implementation fileTree(include: ['*.jar'], dir: 'libs') implementation 'androidx.appcompat:appcompat:1.6.0-rc01' - implementation 'com.github.bumptech.glide:glide:4.13.2' - annotationProcessor 'com.github.bumptech.glide:compiler:4.13.2' + implementation 'com.github.bumptech.glide:glide:4.14.1' + annotationProcessor 'com.github.bumptech.glide:compiler:4.14.1' implementation project(':imagepicker') } \ No newline at end of file diff --git a/build.gradle b/build.gradle index 1a029fd..45f707e 100644 --- a/build.gradle +++ b/build.gradle @@ -6,7 +6,7 @@ buildscript { mavenCentral() } dependencies { - classpath 'com.android.tools.build:gradle:7.4.0-alpha10' + classpath 'com.android.tools.build:gradle:8.0.0-alpha02' // NOTE: Do not place your application dependencies here; they belong // in the individual module build.gradle files } diff --git a/imagepicker/build.gradle b/imagepicker/build.gradle index fd8e0a9..0181818 100644 --- a/imagepicker/build.gradle +++ b/imagepicker/build.gradle @@ -6,8 +6,6 @@ android { defaultConfig { minSdkVersion 26 targetSdkVersion 33 - versionCode 228 - versionName "2.2.8" ndk.abiFilters 'arm64-v8a' } buildTypes { @@ -33,5 +31,5 @@ repositories { dependencies { implementation fileTree(include: ['*.jar'], dir: 'libs') implementation 'androidx.appcompat:appcompat:1.6.0-rc01' - implementation 'androidx.recyclerview:recyclerview:1.3.0-beta02' + implementation 'androidx.recyclerview:recyclerview:1.3.0-rc01' } \ No newline at end of file From 1b9ec8845e729d29a5029cf9b97043e6acba6c62 Mon Sep 17 00:00:00 2001 From: wangsen Date: Fri, 7 Oct 2022 16:53:38 +0800 Subject: [PATCH 22/28] =?UTF-8?q?=E6=9B=B4=E6=96=B0=E7=BB=84=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/build.gradle | 7 ++++--- app/src/main/AndroidManifest.xml | 3 +-- build.gradle | 2 +- imagepicker/build.gradle | 7 ++++--- imagepicker/src/main/AndroidManifest.xml | 3 +-- 5 files changed, 11 insertions(+), 11 deletions(-) diff --git a/app/build.gradle b/app/build.gradle index 21e9f91..306d319 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -1,6 +1,7 @@ apply plugin: 'com.android.application' android { + namespace 'com.lcw.demo.imagepicker' compileSdkVersion 33 buildToolsVersion '33.0.0' defaultConfig { @@ -21,14 +22,14 @@ android { abortOnError false } compileOptions { - sourceCompatibility JavaVersion.VERSION_11 - targetCompatibility JavaVersion.VERSION_11 + sourceCompatibility JavaVersion.VERSION_17 + targetCompatibility JavaVersion.VERSION_17 } } dependencies { implementation fileTree(include: ['*.jar'], dir: 'libs') - implementation 'androidx.appcompat:appcompat:1.6.0-rc01' + implementation 'androidx.appcompat:appcompat:1.7.0-alpha01' implementation 'com.github.bumptech.glide:glide:4.14.1' annotationProcessor 'com.github.bumptech.glide:compiler:4.14.1' implementation project(':imagepicker') diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index 72cb2f7..96d325f 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -1,6 +1,5 @@ - + + From 494eb801b2ad424f46806617c072d756bb9b65e8 Mon Sep 17 00:00:00 2001 From: wangsen Date: Sun, 16 Oct 2022 22:27:27 +0800 Subject: [PATCH 23/28] =?UTF-8?q?=E6=9B=B4=E6=96=B0=E7=BB=84=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/build.gradle | 4 ++-- build.gradle | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/app/build.gradle b/app/build.gradle index 306d319..1b22030 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -30,7 +30,7 @@ android { dependencies { implementation fileTree(include: ['*.jar'], dir: 'libs') implementation 'androidx.appcompat:appcompat:1.7.0-alpha01' - implementation 'com.github.bumptech.glide:glide:4.14.1' - annotationProcessor 'com.github.bumptech.glide:compiler:4.14.1' + implementation 'com.github.bumptech.glide:glide:4.14.2' + annotationProcessor 'com.github.bumptech.glide:compiler:4.14.2' implementation project(':imagepicker') } \ No newline at end of file diff --git a/build.gradle b/build.gradle index 7bd1bf5..d411b83 100644 --- a/build.gradle +++ b/build.gradle @@ -6,7 +6,7 @@ buildscript { mavenCentral() } dependencies { - classpath 'com.android.tools.build:gradle:8.0.0-alpha03' + classpath 'com.android.tools.build:gradle:8.0.0-alpha04' // NOTE: Do not place your application dependencies here; they belong // in the individual module build.gradle files } From 2a3e9cd58b033b994494f5172e985f7140700490 Mon Sep 17 00:00:00 2001 From: wangsen Date: Mon, 31 Oct 2022 21:01:41 +0800 Subject: [PATCH 24/28] =?UTF-8?q?=E6=9B=B4=E6=96=B0=E7=BB=84=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- build.gradle | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/build.gradle b/build.gradle index d411b83..8d4a113 100644 --- a/build.gradle +++ b/build.gradle @@ -6,7 +6,7 @@ buildscript { mavenCentral() } dependencies { - classpath 'com.android.tools.build:gradle:8.0.0-alpha04' + classpath 'com.android.tools.build:gradle:8.0.0-alpha06' // NOTE: Do not place your application dependencies here; they belong // in the individual module build.gradle files } From 7440a706f1f57f4b6b816b6e1adcf4c81e15b707 Mon Sep 17 00:00:00 2001 From: wangsen Date: Sun, 4 Dec 2022 18:21:08 +0800 Subject: [PATCH 25/28] =?UTF-8?q?=E6=9B=B4=E6=96=B0=E7=BB=84=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/build.gradle | 2 +- build.gradle | 2 +- gradle/wrapper/gradle-wrapper.properties | 2 +- imagepicker/build.gradle | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/app/build.gradle b/app/build.gradle index 1b22030..aabe670 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -3,7 +3,7 @@ apply plugin: 'com.android.application' android { namespace 'com.lcw.demo.imagepicker' compileSdkVersion 33 - buildToolsVersion '33.0.0' + buildToolsVersion '33.0.1' defaultConfig { applicationId "com.lcw.demo.imagepicker" minSdkVersion 26 diff --git a/build.gradle b/build.gradle index 8d4a113..f410909 100644 --- a/build.gradle +++ b/build.gradle @@ -6,7 +6,7 @@ buildscript { mavenCentral() } dependencies { - classpath 'com.android.tools.build:gradle:8.0.0-alpha06' + classpath 'com.android.tools.build:gradle:8.0.0-alpha09' // NOTE: Do not place your application dependencies here; they belong // in the individual module build.gradle files } diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties index 159f14e..2f59034 100644 --- a/gradle/wrapper/gradle-wrapper.properties +++ b/gradle/wrapper/gradle-wrapper.properties @@ -3,4 +3,4 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-7.5.1.all.zip \ No newline at end of file +distributionUrl=https\://services.gradle.org/distributions/gradle-7.6.all.zip \ No newline at end of file diff --git a/imagepicker/build.gradle b/imagepicker/build.gradle index e8a6274..2c94773 100644 --- a/imagepicker/build.gradle +++ b/imagepicker/build.gradle @@ -3,7 +3,7 @@ apply plugin: 'com.android.library' android { namespace 'com.lcw.library.imagepicker' compileSdkVersion 33 - buildToolsVersion '33.0.0' + buildToolsVersion '33.0.1' defaultConfig { minSdkVersion 26 targetSdkVersion 33 From 6081311623757331f4efffda6d9786ac40cabf5b Mon Sep 17 00:00:00 2001 From: wangsen Date: Sun, 15 Jan 2023 21:14:53 +0800 Subject: [PATCH 26/28] =?UTF-8?q?=E6=9B=B4=E6=96=B0=E7=BB=84=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/build.gradle | 1 + build.gradle | 2 +- imagepicker/build.gradle | 1 + 3 files changed, 3 insertions(+), 1 deletion(-) diff --git a/app/build.gradle b/app/build.gradle index aabe670..8ebca4f 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -10,6 +10,7 @@ android { targetSdkVersion 33 versionCode 228 versionName "2.2.8" + //noinspection ChromeOsAbiSupport ndk.abiFilters 'arm64-v8a' } buildTypes { diff --git a/build.gradle b/build.gradle index f410909..dcc90df 100644 --- a/build.gradle +++ b/build.gradle @@ -6,7 +6,7 @@ buildscript { mavenCentral() } dependencies { - classpath 'com.android.tools.build:gradle:8.0.0-alpha09' + classpath 'com.android.tools.build:gradle:8.0.0-alpha11' // NOTE: Do not place your application dependencies here; they belong // in the individual module build.gradle files } diff --git a/imagepicker/build.gradle b/imagepicker/build.gradle index 2c94773..5e4df73 100644 --- a/imagepicker/build.gradle +++ b/imagepicker/build.gradle @@ -7,6 +7,7 @@ android { defaultConfig { minSdkVersion 26 targetSdkVersion 33 + //noinspection ChromeOsAbiSupport ndk.abiFilters 'arm64-v8a' } buildTypes { From 75308f701d3a85c38a40503f100878fd21414ffc Mon Sep 17 00:00:00 2001 From: wangsen Date: Sun, 29 Jan 2023 19:28:41 +0800 Subject: [PATCH 27/28] =?UTF-8?q?=E6=9B=B4=E6=96=B0=E7=BB=84=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/build.gradle | 8 +++++--- build.gradle | 4 ++-- gradle.properties | 3 ++- imagepicker/build.gradle | 5 ++--- 4 files changed, 11 insertions(+), 9 deletions(-) diff --git a/app/build.gradle b/app/build.gradle index 8ebca4f..b02d72c 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -2,8 +2,7 @@ apply plugin: 'com.android.application' android { namespace 'com.lcw.demo.imagepicker' - compileSdkVersion 33 - buildToolsVersion '33.0.1' + compileSdk 33 defaultConfig { applicationId "com.lcw.demo.imagepicker" minSdkVersion 26 @@ -19,7 +18,7 @@ android { proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' } } - lintOptions { + lint { abortOnError false } compileOptions { @@ -28,6 +27,9 @@ android { } } +group = 'io.ruibu' +version = '1.0.0' + dependencies { implementation fileTree(include: ['*.jar'], dir: 'libs') implementation 'androidx.appcompat:appcompat:1.7.0-alpha01' diff --git a/build.gradle b/build.gradle index dcc90df..1b10918 100644 --- a/build.gradle +++ b/build.gradle @@ -6,7 +6,7 @@ buildscript { mavenCentral() } dependencies { - classpath 'com.android.tools.build:gradle:8.0.0-alpha11' + classpath 'com.android.tools.build:gradle:8.1.0-alpha02' // NOTE: Do not place your application dependencies here; they belong // in the individual module build.gradle files } @@ -19,6 +19,6 @@ allprojects { } } -task clean(type: Delete) { +tasks.register('clean') { delete rootProject.buildDir } \ No newline at end of file diff --git a/gradle.properties b/gradle.properties index 3171704..9cccaed 100644 --- a/gradle.properties +++ b/gradle.properties @@ -11,4 +11,5 @@ org.gradle.jvmargs=-Xmx1536m # This option should only be used with decoupled projects. More details, visit # http://www.gradle.org/docs/current/userguide/multi_project_builds.html#sec:decoupled_projects # org.gradle.parallel=true -android.useAndroidX=true \ No newline at end of file +android.useAndroidX=true +android.nonFinalResIds=false \ No newline at end of file diff --git a/imagepicker/build.gradle b/imagepicker/build.gradle index 5e4df73..adbb755 100644 --- a/imagepicker/build.gradle +++ b/imagepicker/build.gradle @@ -2,8 +2,7 @@ apply plugin: 'com.android.library' android { namespace 'com.lcw.library.imagepicker' - compileSdkVersion 33 - buildToolsVersion '33.0.1' + compileSdk 33 defaultConfig { minSdkVersion 26 targetSdkVersion 33 @@ -16,7 +15,7 @@ android { proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' } } - lintOptions { + lint { abortOnError false } compileOptions { From eb6b7e4b6c65bfc0553f29075a19512d78a8be53 Mon Sep 17 00:00:00 2001 From: wangsen Date: Wed, 7 Feb 2024 09:42:33 +0800 Subject: [PATCH 28/28] =?UTF-8?q?=E6=9B=B4=E6=96=B0=E7=BB=84=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .idea/deploymentTargetSelector.xml | 10 +++++++ .idea/migrations.xml | 10 +++++++ app/build.gradle | 10 +++---- .../lcw/demo/imagepicker/MainActivity.java | 28 ++++++++----------- build.gradle | 6 +--- gradle/wrapper/gradle-wrapper.properties | 2 +- imagepicker/build.gradle | 8 +++--- 7 files changed, 43 insertions(+), 31 deletions(-) create mode 100644 .idea/deploymentTargetSelector.xml create mode 100644 .idea/migrations.xml diff --git a/.idea/deploymentTargetSelector.xml b/.idea/deploymentTargetSelector.xml new file mode 100644 index 0000000..b268ef3 --- /dev/null +++ b/.idea/deploymentTargetSelector.xml @@ -0,0 +1,10 @@ + + + + + + + + + \ No newline at end of file diff --git a/.idea/migrations.xml b/.idea/migrations.xml new file mode 100644 index 0000000..f8051a6 --- /dev/null +++ b/.idea/migrations.xml @@ -0,0 +1,10 @@ + + + + + + \ No newline at end of file diff --git a/app/build.gradle b/app/build.gradle index b02d72c..e8ca8a1 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -2,11 +2,11 @@ apply plugin: 'com.android.application' android { namespace 'com.lcw.demo.imagepicker' - compileSdk 33 + compileSdk 34 defaultConfig { applicationId "com.lcw.demo.imagepicker" minSdkVersion 26 - targetSdkVersion 33 + targetSdkVersion 34 versionCode 228 versionName "2.2.8" //noinspection ChromeOsAbiSupport @@ -32,8 +32,8 @@ version = '1.0.0' dependencies { implementation fileTree(include: ['*.jar'], dir: 'libs') - implementation 'androidx.appcompat:appcompat:1.7.0-alpha01' - implementation 'com.github.bumptech.glide:glide:4.14.2' - annotationProcessor 'com.github.bumptech.glide:compiler:4.14.2' + implementation 'androidx.appcompat:appcompat:1.7.0-alpha03' + implementation 'com.github.bumptech.glide:glide:4.16.0' + annotationProcessor 'com.github.bumptech.glide:compiler:4.16.0' implementation project(':imagepicker') } \ No newline at end of file diff --git a/app/src/main/java/com/lcw/demo/imagepicker/MainActivity.java b/app/src/main/java/com/lcw/demo/imagepicker/MainActivity.java index c9e45ce..283efb2 100644 --- a/app/src/main/java/com/lcw/demo/imagepicker/MainActivity.java +++ b/app/src/main/java/com/lcw/demo/imagepicker/MainActivity.java @@ -2,7 +2,6 @@ import android.content.Intent; import android.os.Bundle; -import android.view.View; import android.widget.TextView; import androidx.appcompat.app.AppCompatActivity; @@ -21,21 +20,18 @@ protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); mTextView = findViewById(R.id.tv_select_images); - findViewById(R.id.bt_select_images).setOnClickListener(new View.OnClickListener() { - @Override - public void onClick(View v) { - ImagePicker.getInstance() - .setTitle("标题")//设置标题 - .showCamera(true)//设置是否显示拍照按钮 - .showImage(true)//设置是否展示图片 - .showVideo(true)//设置是否展示视频 - .filterGif(false)//设置是否过滤gif图片 - .setMaxCount(9)//设置最大选择图片数目(默认为1,单选) - .setSingleType(true)//设置图片视频不能同时选择 - .setImagePaths(mImagePaths)//设置历史选择记录 - .setImageLoader(new GlideLoader())//设置自定义图片加载器 - .start(MainActivity.this, REQUEST_SELECT_IMAGES_CODE);//REQEST_SELECT_IMAGES_CODE为Intent调用的requestCode - } + findViewById(R.id.bt_select_images).setOnClickListener(v -> { + ImagePicker.getInstance() + .setTitle("标题")//设置标题 + .showCamera(true)//设置是否显示拍照按钮 + .showImage(true)//设置是否展示图片 + .showVideo(true)//设置是否展示视频 + .filterGif(false)//设置是否过滤gif图片 + .setMaxCount(9)//设置最大选择图片数目(默认为1,单选) + .setSingleType(true)//设置图片视频不能同时选择 + .setImagePaths(mImagePaths)//设置历史选择记录 + .setImageLoader(new GlideLoader())//设置自定义图片加载器 + .start(MainActivity.this, REQUEST_SELECT_IMAGES_CODE);//REQEST_SELECT_IMAGES_CODE为Intent调用的requestCode }); } diff --git a/build.gradle b/build.gradle index 1b10918..c34f7c6 100644 --- a/build.gradle +++ b/build.gradle @@ -6,7 +6,7 @@ buildscript { mavenCentral() } dependencies { - classpath 'com.android.tools.build:gradle:8.1.0-alpha02' + classpath 'com.android.tools.build:gradle:8.4.0-alpha07' // NOTE: Do not place your application dependencies here; they belong // in the individual module build.gradle files } @@ -17,8 +17,4 @@ allprojects { google() mavenCentral() } -} - -tasks.register('clean') { - delete rootProject.buildDir } \ No newline at end of file diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties index 2f59034..fe39203 100644 --- a/gradle/wrapper/gradle-wrapper.properties +++ b/gradle/wrapper/gradle-wrapper.properties @@ -3,4 +3,4 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-7.6.all.zip \ No newline at end of file +distributionUrl=https\://services.gradle.org/distributions/gradle-8.6.all.zip \ No newline at end of file diff --git a/imagepicker/build.gradle b/imagepicker/build.gradle index adbb755..c7d6232 100644 --- a/imagepicker/build.gradle +++ b/imagepicker/build.gradle @@ -2,10 +2,10 @@ apply plugin: 'com.android.library' android { namespace 'com.lcw.library.imagepicker' - compileSdk 33 + compileSdk 34 defaultConfig { minSdkVersion 26 - targetSdkVersion 33 + targetSdkVersion 34 //noinspection ChromeOsAbiSupport ndk.abiFilters 'arm64-v8a' } @@ -31,6 +31,6 @@ repositories { dependencies { implementation fileTree(include: ['*.jar'], dir: 'libs') - implementation 'androidx.appcompat:appcompat:1.7.0-alpha01' - implementation 'androidx.recyclerview:recyclerview:1.3.0-rc01' + implementation 'androidx.appcompat:appcompat:1.7.0-alpha03' + implementation 'androidx.recyclerview:recyclerview:1.3.2' } \ No newline at end of file