正在查看: 用信花 v1.1.3 应用的 CameraActivity.java JAVA 源代码文件
本页面展示 JAVA 反编译生成的源代码文件,支持语法高亮显示。 仅供安全研究与技术分析使用,严禁用于任何非法用途。请遵守相关法律法规。
正在查看: 用信花 v1.1.3 应用的 CameraActivity.java JAVA 源代码文件
本页面展示 JAVA 反编译生成的源代码文件,支持语法高亮显示。 仅供安全研究与技术分析使用,严禁用于任何非法用途。请遵守相关法律法规。
package com.duoshan.loan.ui.auth.activity;
import android.annotation.SuppressLint;
import android.app.Activity;
import android.content.Context;
import android.content.Intent;
import android.net.Uri;
import android.os.Handler;
import android.text.TextUtils;
import android.view.View;
import android.widget.ImageView;
import androidx.activity.result.ActivityResult;
import androidx.activity.result.ActivityResultLauncher;
import androidx.activity.result.contract.ActivityResultContracts;
import com.duoshan.loan.a;
import com.duoshan.loan.base.BaseActivity;
import com.duoshan.loan.base.BaseViewModel;
import com.duoshan.loan.databinding.ActivityCameraBinding;
import com.duoshan.loan.dialog.PermissionTipsDialog;
import com.luck.picture.lib.config.PictureMimeType;
import com.luck.picture.lib.entity.LocalMedia;
import com.luck.picture.lib.entity.LocalMediaFolder;
import com.luck.picture.lib.model.LocalMediaLoader;
import com.luck.picture.lib.thread.PictureThreadUtils;
import com.luck.picture.lib.tools.DateUtils;
import com.luck.picture.lib.tools.DoubleUtils;
import com.luck.picture.lib.tools.PictureFileUtils;
import com.lxj.xpopup.core.BasePopupView;
import com.yalantis.ucrop.UCrop;
import e2.y;
import h4.k;
import i2.i;
import java.io.File;
import java.util.List;
import l2.h;
import l5.d;
import m4.c;
import t1.f0;
import t1.g0;
import t1.h0;
import t1.i0;
import t1.j0;
import t1.k0;
import z3.m;
public class CameraActivity extends BaseActivity<ActivityCameraBinding, BaseViewModel> {
public static final int f2606l = 0;
public static final int f2607m = 1;
public static BasePopupView f2608n;
public int f2611g;
public Handler f2612h;
public d f2613i;
public String[] f2609e = {m.E, m.C, m.D};
public boolean f2610f = true;
public String[] f2614j = {m.E, m.f6355c};
public ActivityResultLauncher<Intent> f2615k = registerForActivityResult(new ActivityResultContracts.StartActivityForResult(), new g0(this));
public class a implements i.f {
public a() {
}
@Override
public void onCancel() {
CameraActivity.this.J();
}
@Override
public void onResult(String str) {
h.o("相册选中的路径 --->" + str);
CameraActivity.this.J();
CameraActivity.this.B(str);
}
}
public class b extends PictureThreadUtils.SimpleTask<List<LocalMediaFolder>> {
public b() {
}
public List<LocalMediaFolder> doInBackground() {
return new LocalMediaLoader(CameraActivity.this).loadAllMedia();
}
public void onSuccess(List<LocalMediaFolder> list) {
PictureThreadUtils.cancel(PictureThreadUtils.getIoPool());
if (list == null || list.size() == 0) {
return;
}
CameraActivity cameraActivity = CameraActivity.this;
if (cameraActivity.E(cameraActivity)) {
return;
}
LocalMedia localMedia = (LocalMedia) list.get(0).getData().get(0);
y.h(CameraActivity.this, localMedia.getPath(), ((ActivityCameraBinding) CameraActivity.this.f2431a).ivAlbum, 8);
h.o("最新图片的路径 --->" + localMedia.getPath());
}
}
public void F(File file, ImageView imageView) {
com.bumptech.glide.b.H(this).g(file).l1(imageView);
String absolutePath = file.getAbsolutePath();
h.o("拍照后的路径 --->" + absolutePath);
A(true, absolutePath);
}
public void G(boolean z4, String str) {
setResult(-1, new Intent().putExtra("type", this.f2611g).putExtra("imagePath", str));
finish();
if (z4) {
h.o("拍照后压缩的路径 --->" + str);
return;
}
h.o("裁剪后压缩的路径 --->" + str);
}
public void H(View view) {
int id = view.getId();
if (id == 2131296660) {
if (this.f2613i.j(this.f2609e[1])) {
L();
return;
} else {
M(true, this.f2609e[1]);
return;
}
}
int i4 = a.h.icon_flashlight_open;
if (id != 2131296671) {
if (id != 2131296688) {
return;
}
((ActivityCameraBinding) this.f2431a).cameraView.setFlashlight(this.f2610f);
ImageView imageView = ((ActivityCameraBinding) this.f2431a).ivFlashlight;
if (!this.f2610f) {
i4 = a.h.icon_flashlight_close;
}
imageView.setImageResource(i4);
this.f2610f = !this.f2610f;
return;
}
if (!this.f2613i.j(this.f2609e[0])) {
M(true, this.f2609e[0]);
return;
}
if (((ActivityCameraBinding) this.f2431a).cameraView.findViewById(a.i.image_preview).getVisibility() == 0) {
h.o("image_preview is View.VISIBLE.");
((ActivityCameraBinding) this.f2431a).cameraView.O();
} else {
h.o("image_preview is View.INVISIBLE.");
((ActivityCameraBinding) this.f2431a).cameraView.N();
((ActivityCameraBinding) this.f2431a).cameraView.setFlashlight(false);
((ActivityCameraBinding) this.f2431a).ivFlashlight.setImageResource(a.h.icon_flashlight_open);
}
}
public void I(ActivityResult activityResult) {
Intent data;
if (activityResult.getResultCode() != -1 || (data = activityResult.getData()) == null) {
return;
}
A(false, UCrop.getOutput(data).getPath());
}
public void K(boolean z4, l5.b bVar) throws Exception {
if (bVar.b) {
h.o(bVar.a + " is granted.");
if (this.f2609e[0].equals(bVar.a)) {
J();
}
} else if (bVar.c) {
h.o(bVar.a + " is denied. More info should be provided.");
} else {
h.o(bVar.a + " is denied.");
if (z4) {
if (bVar.a.equals(this.f2609e[0])) {
k.u("请前往设置界面授予相机权限");
} else {
k.u("请前往设置界面授予存储权限");
}
Intent intent = new Intent("android.settings.APPLICATION_DETAILS_SETTINGS");
intent.setData(Uri.fromParts(z3.b.f6281l, getPackageName(), null));
startActivity(intent);
}
}
C();
}
public final void A(boolean z4, String str) {
i.h(this, str, new j0(this, z4));
}
public final void B(String str) {
if (DoubleUtils.isFastDoubleClick()) {
return;
}
if (TextUtils.isEmpty(str)) {
k.u("无可用裁剪资源");
return;
}
UCrop of = UCrop.of((PictureMimeType.isHasHttp(str) || PictureMimeType.isContent(str)) ? Uri.parse(str) : Uri.fromFile(new File(str)), Uri.fromFile(new File(PictureFileUtils.getDiskCacheDir(getApplicationContext()), DateUtils.getCreateFileName("IMG_CROP_") + ".jpg")));
UCrop.Options options = new UCrop.Options();
options.setHideBottomControls(true);
options.setStatusBarColor(getResources().getColor(a.f.black));
options.setShowCropFrame(false);
options.setShowCropGrid(false);
of.withAspectRatio(6.0f, 4.0f);
Intent intent = of.withOptions(options).getIntent(this);
intent.setClass(this, CropActivity.class);
this.f2615k.launch(intent);
}
public void C() {
BasePopupView basePopupView = f2608n;
if (basePopupView != null) {
basePopupView.o();
}
}
public final void J() {
((ActivityCameraBinding) this.f2431a).cameraView.H();
if (this.f2613i.j(this.f2609e[1]) && this.f2613i.j(this.f2609e[2])) {
PictureThreadUtils.executeByIo(new b());
}
}
public final boolean E(Activity activity) {
return activity == null || activity.isFinishing() || activity.isDestroyed();
}
public final void L() {
i.d(this, new a());
}
@SuppressLint({"CheckResult"})
public final void M(boolean z4, String... strArr) {
this.f2613i.r(strArr).subscribe(new h0(this, z4));
for (String str : strArr) {
if (!this.f2613i.j(str)) {
if (z4) {
return;
}
N(this);
return;
}
}
}
public void N(Context context) {
BasePopupView r4 = new c.b(context).r(new PermissionTipsDialog(context, "相机和存储权限使用说明", "1.为了拍摄新照片并直接上传,需要访问您的相机权限\n2.为了上传已有照片或保存拍摄的照片,需要您允许存储权限来访问您的设备照片库"));
f2608n = r4;
r4.J();
}
@Override
public void g() {
this.f2612h = new Handler();
this.f2613i = new d(this);
}
@Override
public void initView() {
int intExtra = getIntent().getIntExtra("type", 0);
this.f2611g = intExtra;
o(intExtra == 0 ? "身份证人像面识别" : "身份证国徽面识别", a.f.color333333);
this.f2432b.titleBar.setLeftImage(a.h.icon_back_white);
this.f2432b.titleBar.setTitleTextColor(getResources().getColor(a.f.white));
((ActivityCameraBinding) this.f2431a).tvContent.setText(this.f2611g == 0 ? "拍摄身份证人像面" : "拍摄身份证国徽面");
f0 f0Var = new f0(this);
VB vb = this.f2431a;
l(f0Var, ((ActivityCameraBinding) vb).ivCamera, ((ActivityCameraBinding) vb).ivFlashlight, ((ActivityCameraBinding) vb).ivAlbum);
M(false, this.f2609e);
z();
}
@Override
public void onDestroy() {
super.onDestroy();
Handler handler = this.f2612h;
if (handler != null) {
handler.removeCallbacksAndMessages(null);
}
}
@Override
public void onResume() {
super.onResume();
this.f2612h.postDelayed(new k0(this), 500L);
}
@Override
public void onStop() {
super.onStop();
((ActivityCameraBinding) this.f2431a).cameraView.M();
}
public final void z() {
((ActivityCameraBinding) this.f2431a).cameraView.setImageCallbackListener(new i0(this));
}
}