lib -> zxing-lite

This commit is contained in:
Jenly
2021-06-30 14:02:57 +08:00
parent 63f78fd8e6
commit 6a28ea25ba
42 changed files with 1963 additions and 1954 deletions

View File

@@ -50,5 +50,5 @@ dependencies {
implementation deps.easypermissions
implementation project(':lib')
implementation project(':zxing-lite')
}

View File

@@ -18,21 +18,20 @@ package com.king.zxing.app;
import android.Manifest;
import android.content.Context;
import android.content.Intent;
import android.graphics.Bitmap;
import android.provider.MediaStore;
import android.os.Bundle;
import android.text.TextUtils;
import android.util.Log;
import android.view.View;
import android.widget.Button;
import android.widget.Toast;
import com.king.zxing.CameraScan;
import com.king.zxing.CaptureActivity;
import com.king.zxing.app.util.UriUtils;
import com.king.zxing.util.CodeUtils;
import com.king.zxing.util.LogUtils;
import java.io.IOException;
import java.util.List;
import androidx.appcompat.app.AppCompatActivity;
@@ -50,9 +49,9 @@ import pub.devrel.easypermissions.EasyPermissions;
*
* 2、通过继承CaptureActivity或者CaptureFragment并自定义布局。适用于大多场景并无需关心扫码相关逻辑自定义布局时需覆写getLayoutId方法
*
* 3、在你项目的Activity或者Fragment中创建一个CaptureHelper并在相应的生命周期中调用CaptureHelper的周期适用于想在扫码界面写交互逻辑又因为项目架构或其它原因无法直接或间接继承CaptureActivity或CaptureFragment时使用
* 3、在你项目的Activity或者Fragment中实例化一个CameraScan即可适用于想在扫码界面写交互逻辑又因为项目架构或其它原因无法直接或间接继承CaptureActivity或CaptureFragment时使用
*
* 4、参照CaptureHelper写一个自定义的扫码帮助类其它步骤同方式3。扩展高级用法谨慎使用
* 4、继承CameraScan自己实现一个可参照默认实现类DefaultCameraScan其它步骤同方式3。扩展高级用法谨慎使用
*
*/
public class MainActivity extends AppCompatActivity implements EasyPermissions.PermissionCallbacks{
@@ -109,27 +108,29 @@ public class MainActivity extends AppCompatActivity implements EasyPermissions.P
}
private void parsePhoto(Intent data){
final String path = UriUtils.getImagePath(this,data);
LogUtils.d("path:" + path);
if(TextUtils.isEmpty(path)){
return;
}
// final String path = UriUtils.getImagePath(this,data);
// LogUtils.d("path:" + path);
// if(TextUtils.isEmpty(path)){
// return;
// }
try {
Bitmap bitmap = MediaStore.Images.Media.getBitmap(getContentResolver(),data.getData());
//异步解析
asyncThread(new Runnable() {
@Override
public void run() {
final String result = CodeUtils.parseCode(path);
runOnUiThread(new Runnable() {
@Override
public void run() {
Log.d("Jenly","result:" + result);
asyncThread(() -> {
final String result = CodeUtils.parseCode(bitmap);
runOnUiThread(() -> {
LogUtils.d("result:" + result);
Toast.makeText(getContext(),result,Toast.LENGTH_SHORT).show();
}
});
}
});
} catch (IOException e) {
e.printStackTrace();
}
}
private Context getContext(){

View File

@@ -10,6 +10,8 @@ import android.provider.DocumentsContract;
import android.provider.MediaStore;
import android.util.Log;
import com.king.zxing.util.LogUtils;
/**
* @author Jenly <a href="mailto:jenly1314@gmail.com">Jenly</a>
*/
@@ -28,7 +30,7 @@ public final class UriUtils {
//获取系統版本
int currentapiVersion = Build.VERSION.SDK_INT;
if(currentapiVersion> Build.VERSION_CODES.KITKAT){
Log.d("uri=intent.getData :", "" + uri);
LogUtils.d("uri=intent.getData :" + uri);
if (DocumentsContract.isDocumentUri(context, uri)) {
String docId = DocumentsContract.getDocumentId(uri);
Log.d("getDocumentId(uri) :", "" + docId);

View File

@@ -1 +1 @@
include ':app', ':lib'
include ':app', ':zxing-lite'

View File

@@ -0,0 +1,3 @@
POM_NAME=ZXingLite
POM_ARTIFACT_ID=zxing-lite
POM_PACKAGING=aar

View File

@@ -16,6 +16,8 @@ import com.google.zxing.ResultPoint;
import com.google.zxing.common.detector.MathUtils;
import com.king.zxing.analyze.Analyzer;
import com.king.zxing.analyze.MultiFormatAnalyzer;
import com.king.zxing.manager.AmbientLightManager;
import com.king.zxing.manager.BeepManager;
import com.king.zxing.util.LogUtils;
import java.util.concurrent.Executors;

View File

@@ -1,4 +1,4 @@
package com.king.zxing;
package com.king.zxing.manager;
/*
* Copyright (C) 2012 ZXing authors
@@ -51,7 +51,7 @@ public class AmbientLightManager implements SensorEventListener {
private OnLightSensorEventListener mOnLightSensorEventListener;
AmbientLightManager(Context context) {
public AmbientLightManager(Context context) {
sensorManager = (SensorManager) context.getSystemService(Context.SENSOR_SERVICE);
lightSensor = sensorManager.getDefaultSensor(Sensor.TYPE_LIGHT);
isLightSensorEnabled = true;
@@ -83,9 +83,9 @@ public class AmbientLightManager implements SensorEventListener {
float lightLux = sensorEvent.values[0];
mOnLightSensorEventListener.onSensorChanged(lightLux);
if (lightLux <= darkLightLux) {
mOnLightSensorEventListener.onSensorChanged(true,darkLightLux);
mOnLightSensorEventListener.onSensorChanged(true,lightLux);
} else if (lightLux >= brightLightLux) {
mOnLightSensorEventListener.onSensorChanged(false,darkLightLux);
mOnLightSensorEventListener.onSensorChanged(false,lightLux);
}
}
}

View File

@@ -1,4 +1,4 @@
package com.king.zxing;
package com.king.zxing.manager;
/*
* Copyright (C) 2010 ZXing authors
*
@@ -22,6 +22,7 @@ import android.media.AudioManager;
import android.media.MediaPlayer;
import android.os.Vibrator;
import com.king.zxing.R;
import com.king.zxing.util.LogUtils;
import java.io.Closeable;
@@ -39,7 +40,7 @@ public final class BeepManager implements MediaPlayer.OnErrorListener, Closeable
private boolean playBeep;
private boolean vibrate;
BeepManager(Context context) {
public BeepManager(Context context) {
this.context = context;
this.mediaPlayer = null;
updatePrefs();

View File

Before

Width:  |  Height:  |  Size: 1.7 KiB

After

Width:  |  Height:  |  Size: 1.7 KiB

View File

Before

Width:  |  Height:  |  Size: 1.5 KiB

After

Width:  |  Height:  |  Size: 1.5 KiB