正在查看: EfectivoYa v2.3 应用的 FFTakeIdCardActivity.java JAVA 源代码文件
本页面展示 JAVA 反编译生成的源代码文件,支持语法高亮显示。 仅供安全研究与技术分析使用,严禁用于任何非法用途。请遵守相关法律法规。
正在查看: EfectivoYa v2.3 应用的 FFTakeIdCardActivity.java JAVA 源代码文件
本页面展示 JAVA 反编译生成的源代码文件,支持语法高亮显示。 仅供安全研究与技术分析使用,严禁用于任何非法用途。请遵守相关法律法规。
package com.mxff.ffxxmm.activity;
import android.R;
import android.content.Intent;
import android.graphics.Color;
import android.graphics.RectF;
import android.hardware.display.DisplayManager;
import android.net.Uri;
import android.os.Bundle;
import android.os.Handler;
import android.os.HandlerThread;
import android.os.Looper;
import android.provider.MediaStore;
import android.util.DisplayMetrics;
import android.util.Size;
import android.view.View;
import androidx.camera.core.CameraSelector;
import androidx.camera.core.ImageAnalysis;
import androidx.camera.core.ImageCapture;
import androidx.camera.core.ImageCaptureException;
import androidx.camera.core.Preview;
import androidx.camera.lifecycle.ProcessCameraProvider;
import androidx.camera.view.PreviewView;
import androidx.core.content.ContextCompat;
import com.bumptech.glide.load.resource.bitmap.c0;
import com.google.android.material.card.MaterialCardViewHelper;
import com.google.common.util.concurrent.ListenableFuture;
import com.gyf.immersionbar.l;
import com.mxff.ffxxmm.R$mipmap;
import com.mxff.ffxxmm.activity.FFTakeIdCardActivity;
import com.mxff.ffxxmm.databinding.FfActivityCameraxIdCardBinding;
import com.mxff.ffxxmm.utils.FFLuminosityAnalyzer;
import com.mxff.ffxxmm.utils.m;
import com.mxff.ffxxmm.viewmodel.BaseViewModel;
import java.io.File;
import java.util.concurrent.ExecutionException;
import me.jessyan.autosize.internal.CustomAdapt;
import me.jessyan.autosize.utils.AutoSizeUtils;
public class FFTakeIdCardActivity extends BaseActivity<BaseViewModel, FfActivityCameraxIdCardBinding> implements CustomAdapt {
private Preview f2103m;
private ProcessCameraProvider f2104n;
private ImageCapture f2105o;
private ImageAnalysis f2106p;
private RectF f2107q;
private Uri f2108r;
private DisplayManager f2110t;
private DisplayManager.DisplayListener f2111u;
private int f2102l = 0;
private Handler f2109s = new Handler(Looper.getMainLooper());
private boolean f2112v = false;
private int f2113w = 2;
class a implements DisplayManager.DisplayListener {
a() {
}
@Override
public void onDisplayAdded(int i2) {
}
@Override
public void onDisplayChanged(int i2) {
if (i2 == FFTakeIdCardActivity.this.f2102l) {
int rotation = FFTakeIdCardActivity.this.findViewById(R.id.content).getDisplay().getRotation();
if (FFTakeIdCardActivity.this.f2103m != null) {
FFTakeIdCardActivity.this.f2103m.setTargetRotation(rotation);
}
if (FFTakeIdCardActivity.this.f2105o != null) {
FFTakeIdCardActivity.this.f2105o.setTargetRotation(rotation);
}
if (FFTakeIdCardActivity.this.f2106p != null) {
FFTakeIdCardActivity.this.f2106p.setTargetRotation(rotation);
}
}
}
@Override
public void onDisplayRemoved(int i2) {
}
}
class b implements View.OnAttachStateChangeListener {
b() {
}
@Override
public void onViewAttachedToWindow(View view) {
FFTakeIdCardActivity.this.f2110t.registerDisplayListener(FFTakeIdCardActivity.this.f2111u, null);
}
@Override
public void onViewDetachedFromWindow(View view) {
FFTakeIdCardActivity.this.f2110t.unregisterDisplayListener(FFTakeIdCardActivity.this.f2111u);
}
}
class c implements View.OnClickListener {
c() {
}
@Override
public void onClick(View view) {
FFTakeIdCardActivity.this.f0();
}
}
class d implements ImageCapture.OnImageSavedCallback {
d() {
}
@Override
public void onError(ImageCaptureException imageCaptureException) {
imageCaptureException.printStackTrace();
}
@Override
public void onImageSaved(ImageCapture.OutputFileResults outputFileResults) {
FFTakeIdCardActivity.this.f2065i.ivPreviewView.setVisibility(0);
FFTakeIdCardActivity.this.f2065i.ivConfirm.setVisibility(0);
FFTakeIdCardActivity.this.f2065i.ivCancel.setVisibility(0);
FFTakeIdCardActivity.this.f2065i.tvTakePicture.setVisibility(4);
FFTakeIdCardActivity.this.d0(outputFileResults.getSavedUri());
FFTakeIdCardActivity.this.f2108r = outputFileResults.getSavedUri();
}
}
class e implements Runnable {
final ListenableFuture f2118a;
final PreviewView f2119b;
e(ListenableFuture listenableFuture, PreviewView previewView) {
this.f2118a = listenableFuture;
this.f2119b = previewView;
}
@Override
public void run() {
try {
FFTakeIdCardActivity.this.f2104n = (ProcessCameraProvider) this.f2118a.get();
this.f2119b.getDisplay().getRealMetrics(new DisplayMetrics());
int rotation = this.f2119b.getDisplay().getRotation();
ProcessCameraProvider processCameraProvider = FFTakeIdCardActivity.this.f2104n;
FFTakeIdCardActivity.this.f2103m = new Preview.Builder().setTargetResolution(new Size(451, 286)).setTargetRotation(rotation).build();
FFTakeIdCardActivity.this.f2105o = new ImageCapture.Builder().setCaptureMode(0).setFlashMode(FFTakeIdCardActivity.this.f2113w).setTargetResolution(new Size(451, 286)).setTargetRotation(rotation).build();
FFTakeIdCardActivity.this.f2106p = new ImageAnalysis.Builder().setTargetResolution(new Size(451, 286)).setTargetRotation(rotation).setBackpressureStrategy(0).build();
FFTakeIdCardActivity fFTakeIdCardActivity = FFTakeIdCardActivity.this;
fFTakeIdCardActivity.g0(fFTakeIdCardActivity.f2106p);
processCameraProvider.unbindAll();
FFTakeIdCardActivity.this.W(processCameraProvider, this.f2119b);
} catch (InterruptedException e2) {
throw new RuntimeException(e2);
} catch (ExecutionException e3) {
throw new RuntimeException(e3);
}
}
}
public void W(ProcessCameraProvider processCameraProvider, PreviewView previewView) {
processCameraProvider.bindToLifecycle(this, CameraSelector.DEFAULT_BACK_CAMERA, this.f2103m, this.f2105o, this.f2106p);
this.f2103m.setSurfaceProvider(previewView.getSurfaceProvider());
}
private void X() {
ImageCapture imageCapture = this.f2105o;
if (imageCapture == null) {
imageCapture = new ImageCapture.Builder().setTargetResolution(new Size(MaterialCardViewHelper.DEFAULT_FADE_ANIM_DURATION, MaterialCardViewHelper.DEFAULT_FADE_ANIM_DURATION)).setTargetRotation(this.f2065i.viewFinder.getDisplay().getRotation()).build();
}
ImageCapture.Metadata metadata = new ImageCapture.Metadata();
metadata.setReversedHorizontal(false);
MediaStore.Images.Media.EXTERNAL_CONTENT_URI.toString();
File file = new File(getCacheDir() + "/CameraxTakeFace/");
if (!file.exists()) {
file.mkdirs();
}
imageCapture.lambda$takePicture$4(new ImageCapture.OutputFileOptions.Builder(new File(file, System.currentTimeMillis() + ".jpg")).setMetadata(metadata).build(), new m(this.f2109s), new d());
}
public void Y() {
this.f2102l = this.f2065i.viewFinder.getDisplay().getDisplayId();
this.f2065i.viewFinder.addOnAttachStateChangeListener(new b());
RectF rectF = new RectF(this.f2065i.viewFinder.getLeft(), this.f2065i.viewFinder.getTop(), this.f2065i.viewFinder.getRight(), this.f2065i.viewFinder.getBottom());
this.f2107q = rectF;
this.f2065i.fFinderBackground.b(rectF, AutoSizeUtils.dp2px(this, 19.0f));
this.f2065i.fFinderBackground.setBackgroundColor(Color.parseColor("#666666"));
h0();
}
public void Z(View view) {
i0();
}
public void a0(View view) {
finish();
}
public void b0(View view) {
e0();
}
public void c0(View view) {
setResult(-1, new Intent().setData(this.f2108r));
finish();
}
public void d0(Uri uri) {
com.bumptech.glide.d.v(this).q(uri).a((com.bumptech.glide.request.e) new com.bumptech.glide.request.e().a0(new c0(AutoSizeUtils.dp2px(this, 19.0f)))).p0(this.f2065i.ivPreviewView);
}
private void e0() {
this.f2065i.ivPreviewView.setVisibility(4);
this.f2065i.ivCancel.setVisibility(8);
this.f2065i.ivConfirm.setVisibility(8);
this.f2065i.tvTakePicture.setVisibility(0);
}
public void f0() {
boolean z2 = !this.f2112v;
this.f2112v = z2;
this.f2065i.btnOpenFlash.setImageResource(z2 ? R$mipmap.ff_ic_auth_17 : R$mipmap.ff_ic_auth_16);
this.f2113w = this.f2112v ? 1 : 2;
}
public void g0(ImageAnalysis imageAnalysis) {
HandlerThread handlerThread = new HandlerThread("Luminosity");
handlerThread.start();
imageAnalysis.setAnalyzer(new m(new Handler(handlerThread.getLooper())), new FFLuminosityAnalyzer());
}
private void h0() {
PreviewView previewView = this.f2065i.viewFinder;
ListenableFuture<ProcessCameraProvider> processCameraProvider = ProcessCameraProvider.getInstance(this);
processCameraProvider.addListener(new e(processCameraProvider, previewView), ContextCompat.getMainExecutor(this));
}
private void i0() {
X();
}
public float getSizeInDp() {
return 360.0f;
}
public boolean isBaseOnWidth() {
return false;
}
@Override
protected void onDestroy() {
super.onDestroy();
this.f2110t.unregisterDisplayListener(this.f2111u);
}
@Override
protected void r() {
}
@Override
protected void u(Bundle bundle) {
l.l0(this).D();
this.f2110t = (DisplayManager) getSystemService("display");
a aVar = new a();
this.f2111u = aVar;
this.f2110t.registerDisplayListener(aVar, null);
this.f2065i.viewFinder.post(new Runnable() {
@Override
public final void run() {
FFTakeIdCardActivity.this.Y();
}
});
this.f2065i.tvTitle.setText(c1.a.a("Tome una foto de su indentificación dentro del marco"));
this.f2065i.ivCancel.setVisibility(8);
this.f2065i.ivConfirm.setVisibility(8);
this.f2065i.tvTakePicture.setOnClickListener(new View.OnClickListener() {
@Override
public final void onClick(View view) {
FFTakeIdCardActivity.this.Z(view);
}
});
this.f2065i.ivBack.setOnClickListener(new View.OnClickListener() {
@Override
public final void onClick(View view) {
FFTakeIdCardActivity.this.a0(view);
}
});
this.f2065i.ivCancel.setOnClickListener(new View.OnClickListener() {
@Override
public final void onClick(View view) {
FFTakeIdCardActivity.this.b0(view);
}
});
this.f2065i.btnOpenFlash.setOnClickListener(new c());
this.f2065i.ivConfirm.setOnClickListener(new View.OnClickListener() {
@Override
public final void onClick(View view) {
FFTakeIdCardActivity.this.c0(view);
}
});
}
}