正在查看: 万能钥匙 v1.1.23 应用的 IntentIntegrator.java JAVA 源代码文件
本页面展示 JAVA 反编译生成的源代码文件,支持语法高亮显示。 仅供安全研究与技术分析使用,严禁用于任何非法用途。请遵守相关法律法规。
正在查看: 万能钥匙 v1.1.23 应用的 IntentIntegrator.java JAVA 源代码文件
本页面展示 JAVA 反编译生成的源代码文件,支持语法高亮显示。 仅供安全研究与技术分析使用,严禁用于任何非法用途。请遵守相关法律法规。
package com.finogeeks.lib.applet.modules.barcode.zxing.integration.android;
import android.app.Activity;
import android.app.Fragment;
import android.content.Intent;
import android.os.Bundle;
import com.finogeeks.lib.applet.main.IntentsKt;
import com.finogeeks.lib.applet.modules.barcode.CaptureActivity;
import java.util.Arrays;
import java.util.Collection;
import java.util.Collections;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
public class IntentIntegrator {
public static final String DATA_MATRIX = "DATA_MATRIX";
public static final String PDF_417 = "PDF_417";
public static final String QR_CODE = "QR_CODE";
public static final int REQUEST_CODE = 49374;
private static final String TAG = "IntentIntegrator";
private final Activity activity;
private Class<?> captureActivity;
private Collection<String> desiredBarcodeFormats;
private Fragment fragment;
private final Map<String, Object> moreExtras = new HashMap(3);
private int requestCode = REQUEST_CODE;
private androidx.fragment.app.Fragment supportFragment;
public static final String UPC_A = "UPC_A";
public static final String UPC_E = "UPC_E";
public static final String EAN_8 = "EAN_8";
public static final String EAN_13 = "EAN_13";
public static final String RSS_14 = "RSS_14";
public static final String AZTEC = "AZTEC";
public static final String CODABAR = "CODABAR";
public static final String MAXICODE = "MAXICODE";
public static final String UPC_EAN_EXTENSION = "UPC_EAN_EXTENSION";
public static final String CODE_39 = "CODE_39";
public static final String CODE_93 = "CODE_93";
public static final String CODE_128 = "CODE_128";
public static final String ITF = "ITF";
public static final String RSS_EXPANDED = "RSS_EXPANDED";
public static final Collection<String> BAR_CODE_TYPES = list(UPC_A, UPC_E, EAN_8, EAN_13, RSS_14, AZTEC, CODABAR, MAXICODE, UPC_EAN_EXTENSION, CODE_39, CODE_93, CODE_128, ITF, RSS_EXPANDED);
public static final Collection<String> PRODUCT_CODE_TYPES = list(UPC_A, UPC_E, EAN_8, EAN_13, RSS_14);
public static final Collection<String> ONE_D_CODE_TYPES = list(UPC_A, UPC_E, EAN_8, EAN_13, RSS_14, CODE_39, CODE_93, CODE_128, ITF, RSS_14, RSS_EXPANDED);
public static final Collection<String> ALL_CODE_TYPES = null;
public IntentIntegrator(Activity activity) {
this.activity = activity;
}
private void attachMoreExtras(Intent intent) {
for (Map.Entry<String, Object> entry : this.moreExtras.entrySet()) {
String key = entry.getKey();
Object value = entry.getValue();
if (value instanceof Integer) {
intent.putExtra(key, (Integer) value);
} else if (value instanceof Long) {
intent.putExtra(key, (Long) value);
} else if (value instanceof Boolean) {
intent.putExtra(key, (Boolean) value);
} else if (value instanceof Double) {
intent.putExtra(key, (Double) value);
} else if (value instanceof Float) {
intent.putExtra(key, (Float) value);
} else if (value instanceof Bundle) {
intent.putExtra(key, (Bundle) value);
} else if (value instanceof int[]) {
intent.putExtra(key, (int[]) value);
} else if (value instanceof long[]) {
intent.putExtra(key, (long[]) value);
} else if (value instanceof boolean[]) {
intent.putExtra(key, (boolean[]) value);
} else if (value instanceof double[]) {
intent.putExtra(key, (double[]) value);
} else if (value instanceof float[]) {
intent.putExtra(key, (float[]) value);
} else if (value instanceof String[]) {
intent.putExtra(key, (String[]) value);
} else {
intent.putExtra(key, value.toString());
}
}
}
public static IntentIntegrator forFragment(Fragment fragment) {
IntentIntegrator intentIntegrator = new IntentIntegrator(fragment.getActivity());
intentIntegrator.fragment = fragment;
return intentIntegrator;
}
public static IntentIntegrator forSupportFragment(androidx.fragment.app.Fragment fragment) {
IntentIntegrator intentIntegrator = new IntentIntegrator(fragment.getActivity());
intentIntegrator.supportFragment = fragment;
return intentIntegrator;
}
private static List<String> list(String... strArr) {
return Collections.unmodifiableList(Arrays.asList(strArr));
}
public final IntentIntegrator addExtra(String str, Object obj) {
this.moreExtras.put(str, obj);
return this;
}
public Intent createScanIntent() {
return createScanIntent(null);
}
public Intent createScanIntent(String str) {
Intent intent = new Intent(this.activity, getCaptureActivity());
intent.setAction("com.google.zxing.client.android.SCAN");
if (str != null) {
intent.putExtra(IntentsKt.EXTRA_APP_ID, str);
}
if (this.desiredBarcodeFormats != null) {
StringBuilder sb = new StringBuilder();
for (String str2 : this.desiredBarcodeFormats) {
if (sb.length() > 0) {
sb.append(',');
}
sb.append(str2);
}
intent.putExtra("SCAN_FORMATS", sb.toString());
}
attachMoreExtras(intent);
return intent;
}
public Class<?> getCaptureActivity() {
if (this.captureActivity == null) {
this.captureActivity = getDefaultCaptureActivity();
}
return this.captureActivity;
}
public Class<?> getDefaultCaptureActivity() {
return CaptureActivity.class;
}
public Map<String, ?> getMoreExtras() {
return this.moreExtras;
}
public final void initiateScan() {
startActivityForResult(createScanIntent(), this.requestCode);
}
public final void initiateScan(Collection<String> collection) {
setDesiredBarcodeFormats(collection);
initiateScan();
}
public IntentIntegrator setBarcodeImageEnabled(boolean z10) {
addExtra("BARCODE_IMAGE_ENABLED", Boolean.valueOf(z10));
return this;
}
public IntentIntegrator setBeepEnabled(boolean z10) {
addExtra("BEEP_ENABLED", Boolean.valueOf(z10));
return this;
}
public IntentIntegrator setCameraId(int i) {
if (i >= 0) {
addExtra("SCAN_CAMERA_ID", Integer.valueOf(i));
}
return this;
}
public IntentIntegrator setCaptureActivity(Class<?> cls) {
this.captureActivity = cls;
return this;
}
public IntentIntegrator setDesiredBarcodeFormats(Collection<String> collection) {
this.desiredBarcodeFormats = collection;
return this;
}
public IntentIntegrator setDesiredBarcodeFormats(String... strArr) {
this.desiredBarcodeFormats = Arrays.asList(strArr);
return this;
}
public IntentIntegrator setOnlyFromCamera(boolean z10) {
addExtra("onlyFromCamera", Boolean.valueOf(z10));
return this;
}
public IntentIntegrator setOrientationLocked(boolean z10) {
addExtra("SCAN_ORIENTATION_LOCKED", Boolean.valueOf(z10));
return this;
}
public IntentIntegrator setRequestCode(int i) {
if (i <= 0 || i > 65535) {
throw new IllegalArgumentException("requestCode out of range");
}
this.requestCode = i;
return this;
}
public IntentIntegrator setScanType(int i) {
addExtra("SCAN_TYPE", Integer.valueOf(i));
return this;
}
public IntentIntegrator setTimeout(long j) {
addExtra("TIMEOUT", Long.valueOf(j));
return this;
}
public IntentIntegrator setTorchEnabled(boolean z10) {
addExtra("TORCH_ENABLED", Boolean.valueOf(z10));
return this;
}
public void startActivity(Intent intent) {
Fragment fragment = this.fragment;
if (fragment != null) {
fragment.startActivity(intent);
return;
}
androidx.fragment.app.Fragment fragment2 = this.supportFragment;
if (fragment2 != null) {
fragment2.startActivity(intent);
} else {
this.activity.startActivity(intent);
}
}
public void startActivityForResult(Intent intent, int i) {
Fragment fragment = this.fragment;
if (fragment != null) {
fragment.startActivityForResult(intent, i);
return;
}
androidx.fragment.app.Fragment fragment2 = this.supportFragment;
if (fragment2 != null) {
fragment2.startActivityForResult(intent, i);
} else {
this.activity.startActivityForResult(intent, i);
}
}
}