RxGalleryFinal
项目地址: FinalTeam/RxGalleryFinal

简介:Android 图片单选/多选、拍照、裁剪、压缩。视频选择和录制
简介
RxGalleryFinal 是一个 android 图片/视频文件选择器。其支持多选、单选、拍摄和裁剪,主题可自定义,无强制绑定第三方图片加载器。
使用 下载或添加依赖在 module gradle 中项目依赖代码:
compile 'cn.finalteam.rxgalleryfinal:library:0.0.3' //rxgalleryfinal 依赖 appcompat-v7 和 recyclerview-v7 扩展卡库 compile 'com.android.support:recyclerview-v7:24.2.0' compile 'com.android.support:appcompat-v7:24.2.0' //支持以下主流图片加载器,开发者自行选择 compile 'com.squareup.picasso:picasso:2.5.2' compile 'com.facebook.fresco:fresco:0.12.0' compile 'com.github.bumptech.glide:glide:3.7.0' compile 'com.nostra13.universalimageloader:universal-image-loader:1.9.5'配置 manifest
- 添加权限
- 注册 activity
这里可以配置主题
- 打开图片浏览器
RxGalleryFinal .with(context) .image() .radio() .crop() .imageLoader(ImageLoaderType.GLIDE) .subscribe(new RxBusResultSubscriber() { @Override protected void onEvent(ImageRadioResultEvent imageRadioResultEvent) throws Exception { //图片选择结果 ..... } }) .openGallery();自定义主题 混淆配置
#1.support-v7-appcompat -keep public class android.support.v7.widget.** { *; } -keep public class android.support.v7.internal.widget.** { *; } -keep public class android.support.v7.internal.view.menu.** { *; } -keep public class * extends android.support.v4.view.ActionProvider { public(android.content.Context); } #2.rxjava -keep class rx.schedulers.Schedulers { public static; } -keep class rx.schedulers.ImmediateScheduler { public; } -keep class rx.schedulers.TestScheduler { public; } -keep class rx.schedulers.Schedulers { public static ** test(); } -dontwarn sun.misc.** -keepclassmembers class rx.internal.util.unsafe.*ArrayQueue*Field* { long producerIndex; long consumerIndex; } -keepclassmembers class rx.internal.util.unsafe.BaseLinkedQueueProducerNodeRef { rx.internal.util.atomic.LinkedQueueNode producerNode; } -keepclassmembers class rx.internal.util.unsafe.BaseLinkedQueueConsumerNodeRef { rx.internal.util.atomic.LinkedQueueNode consumerNode; } #3.retrolambda -dontwarn java.lang.invoke.* #4.support-v4 -keep class android.support.v4.** { *; } -keep interface android.support.v4.** { *; } #5.ucrop -dontwarn com.yalantis.ucrop** -keep class com.yalantis.ucrop** { *; } -keep interface com.yalantis.ucrop** { *; } #6.photoview -keep class uk.co.senab.photoview** { *; } -keep interface uk.co.senab.photoview** { *; } #7.rxgalleryfinal -keep class cn.finalteam.rxgalleryfinal.ui.widget** { *; } -keepclassmembers class * extends android.app.Activity { public void *(android.view.View); } -keepclassmembers enum * { public static **[] values(); public static ** valueOf(java.lang.String); } -keep class * implements android.os.Parcelable { public static final android.os.Parcelable$Creator *; } -keepclassmembers class **.R$* { public static; } -keepattributes *Annotation* -keepclasseswithmembernames class * { native; } -keepclassmembers public class * extends android.view.View { void set*(***); *** get*(); }