android 视频录制尺寸裁剪,galleryfinal 实现Android图片单选/多选、拍照、裁剪、压缩。视频选择和录制。...

RxGalleryFinal是一个android图片/视频文件选择器。其支持多选、单选、拍摄和裁剪,主题可自定义,无强制绑定第三方图片加载器。

1.首先加入权限

2.在module gradle中项目依赖代码:

compile 'cn.finalteam.rxgalleryfinal:library:0.0.1'

//支持以下主流图片加载器,开发者自行选择

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'

3.在fest加入所需的activity

...

android:theme="@style/Theme_Light">

android:name="cn.finalteam.rxgalleryfinal.ui.activity.MediaActivity"

android:screenOrientation="portrait"

android:exported="true"

android:theme="@style/Theme_Light.Default"/>

android:name="com.yalantis.ucrop.UCropActivity"

android:screenOrientation="portrait"

android:theme="@style/Theme_Light.Default"/>

4.java代码

RxGalleryFinal

.with(PhotoActivity.this)

.image()

.radio()

.crop()

.imageLoader(ImageLoaderType.FRESCO)

.subscribe(new RxBusResultSubscriber() {

@Override

protected void onEvent(ImageRadioResultEvent imageRadioResultEvent) throws Exception {

//图片选择结果

simpleDraweeView.setImageURI("file://" + imageRadioResultEvent.getResult().getCropPath());

// simpleDraweeView.setImageURI(imageRadioResultEvent.getResult().getOriginalPath());

imageView.setImageURI(Uri.parse(imageRadioResultEvent.getResult().getOriginalPath()));

}

})

.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*();

}

另附上demo地址:

https://github.com/meijius/RxGalleryFinal

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值