Browse Source

格式化代码

liuyuqi-dellpc 4 years ago
parent
commit
556a2800ae

+ 1 - 5
app/build.gradle

@@ -18,7 +18,7 @@ android {
 
 
     defaultConfig {
     defaultConfig {
         versionCode 13
         versionCode 13
-        versionName "1.13"
+        versionName "1.23"
         applicationId "me.yoqi.qrcode"
         applicationId "me.yoqi.qrcode"
         minSdkVersion 14
         minSdkVersion 14
         targetSdkVersion 29
         targetSdkVersion 29
@@ -35,9 +35,5 @@ android {
 
 
 dependencies {
 dependencies {
     implementation fileTree(dir: 'libs', include: ['*.jar'])
     implementation fileTree(dir: 'libs', include: ['*.jar'])
-//    implementation 'com.android.support:appcompat-v7:21.0.3'
-//    implementation 'com.android.support:appcompat-v7:28.0.0'
     implementation 'androidx.appcompat:appcompat:1.2.0'
     implementation 'androidx.appcompat:appcompat:1.2.0'
-//    implementation 'com.android.support.constraint:constraint-layout:1.1.3'
-//    implementation files('libs/zxing.jar')
 }
 }

+ 0 - 7
app/src/main/AndroidManifest.xml

@@ -6,15 +6,8 @@
     android:versionName="1.0.2">
     android:versionName="1.0.2">
 
 
     <uses-permission android:name="android.permission.CAMERA" />
     <uses-permission android:name="android.permission.CAMERA" />
-   <!-- <uses-permission android:name="android.permission.INTERNET" />-->
     <uses-permission android:name="android.permission.VIBRATE" />
     <uses-permission android:name="android.permission.VIBRATE" />
     <uses-permission android:name="android.permission.FLASHLIGHT" />
     <uses-permission android:name="android.permission.FLASHLIGHT" />
-   <!-- <uses-permission android:name="android.permission.READ_CONTACTS" />
-    <uses-permission android:name="com.android.browser.permission.READ_HISTORY_BOOKMARKS" />
-    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
-    <uses-permission android:name="android.permission.CHANGE_WIFI_STATE" />
-    <uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />-->
-
 
 
     <!-- Don't require camera, as this requires a rear camera. This allows it to work on the Nexus 7 -->
     <!-- Don't require camera, as this requires a rear camera. This allows it to work on the Nexus 7 -->
     <uses-feature
     <uses-feature

+ 293 - 297
app/src/main/java/me/yoqi/qrcode/CaptureActivity.java

@@ -1,7 +1,6 @@
 package me.yoqi.qrcode;
 package me.yoqi.qrcode;
 
 
 import android.Manifest;
 import android.Manifest;
-import android.app.Activity;
 import android.content.Intent;
 import android.content.Intent;
 import android.content.pm.PackageManager;
 import android.content.pm.PackageManager;
 import android.graphics.Bitmap;
 import android.graphics.Bitmap;
@@ -22,6 +21,8 @@ import android.view.WindowManager;
 import android.widget.ImageView;
 import android.widget.ImageView;
 import android.widget.Toast;
 import android.widget.Toast;
 
 
+import androidx.appcompat.app.AppCompatActivity;
+
 import com.google.zxing.BarcodeFormat;
 import com.google.zxing.BarcodeFormat;
 import com.google.zxing.Result;
 import com.google.zxing.Result;
 import com.google.zxing.ResultPoint;
 import com.google.zxing.ResultPoint;
@@ -40,122 +41,121 @@ import java.util.Collection;
  * 识别二维码 CaptureActivity
  * 识别二维码 CaptureActivity
  *
  *
  * @author liuyuqi
  * @author liuyuqi
- *
  */
  */
-public final class CaptureActivity extends Activity implements SurfaceHolder.Callback {
-
-	private static final String TAG = CaptureActivity.class.getSimpleName();
-
-	private CameraManager cameraManager;
-	private CaptureActivityHandler handler;
-	private Result savedResultToShow;
-	private ViewfinderView viewfinderView;
-	private boolean hasSurface;
-	private Collection<BarcodeFormat> decodeFormats;
-	private InactivityTimer inactivityTimer;
-	private String characterSet;
-	private BeepManager beepManager;
-
-	ImageView opreateView;
-
-	ViewfinderView getViewfinderView() {
-		return viewfinderView;
-	}
-
-	public Handler getHandler() {
-		return handler;
-	}
-
-	public CameraManager getCameraManager() {
-		return cameraManager;
-	}
-
-	@Override
-	public void onCreate(Bundle icicle) {
-		super.onCreate(icicle);
-
-		Window window = getWindow();
-		window.addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);
-		setContentView(R.layout.capture);
-
-		hasSurface = false;
-		inactivityTimer = new InactivityTimer(this);
-		beepManager = new BeepManager(this);
-		opreateView = (ImageView) findViewById(R.id.button_openorcloseClick);
-
-		opreateView.setOnClickListener(new OnClickListener() {
-
-			@Override
-			public void onClick(View v) {
-				if (cameraManager != null) {
-					Config.KEY_FRONT_LIGHT = !Config.KEY_FRONT_LIGHT;
-					if (Config.KEY_FRONT_LIGHT == true) {
-						opreateView
-								.setImageResource(R.drawable.mzw_camera_close);
-					} else {
-						opreateView
-								.setImageResource(R.drawable.mzw_camera_open);
-					}
-					cameraManager.getConfigManager().initializeTorch(
-							cameraManager.getCamera().getParameters(), false);
-					onPause();
-					onResume();
-				}
-			}
-		});
-	}
-
-	@Override
-	protected void onResume() {
-		super.onResume();
-
-		// CameraManager must be initialized here, not in onCreate(). This is
-		// necessary because we don't
-		// want to open the camera driver and measure the screen size if we're
-		// going to show the help on
-		// first launch. That led to bugs where the scanning rectangle was the
-		// wrong size and partially
-		// off screen.
-		cameraManager = new CameraManager(getApplication());
-
-		viewfinderView = (ViewfinderView) findViewById(R.id.viewfinder_view);
-		viewfinderView.setCameraManager(cameraManager);
-
-		handler = null;
-		SurfaceView surfaceView = (SurfaceView) findViewById(R.id.preview_view);
-		SurfaceHolder surfaceHolder = surfaceView.getHolder();
-		if (hasSurface) {
-			// The activity was paused but not stopped, so the surface still
-			// exists. Therefore
-			// surfaceCreated() won't be called, so init the camera here.
-			initCamera(surfaceHolder);
-		} else {
-			// Install the callback and wait for surfaceCreated() to init the
-			// camera.
-			surfaceHolder.addCallback(this);
-			surfaceHolder.setType(SurfaceHolder.SURFACE_TYPE_PUSH_BUFFERS);
-		}
-
-		beepManager.updatePrefs();
-
-		inactivityTimer.onResume();
-	}
-
-	@Override
-	protected void onPause() {
-		if (handler != null) {
-			handler.quitSynchronously();
-			handler = null;
-		}
-		inactivityTimer.onPause();
-		cameraManager.closeDriver();
-		if (!hasSurface) {
-			SurfaceView surfaceView = findViewById(R.id.preview_view);
-			SurfaceHolder surfaceHolder = surfaceView.getHolder();
-			surfaceHolder.removeCallback(this);
-		}
-		super.onPause();
-	}
+public final class CaptureActivity extends AppCompatActivity implements SurfaceHolder.Callback {
+
+    private static final String TAG = CaptureActivity.class.getSimpleName();
+
+    private CameraManager cameraManager;
+    private CaptureActivityHandler handler;
+    private Result savedResultToShow;
+    private ViewfinderView viewfinderView;
+    private boolean hasSurface;
+    private Collection<BarcodeFormat> decodeFormats;
+    private InactivityTimer inactivityTimer;
+    private String characterSet;
+    private BeepManager beepManager;
+
+    ImageView opreateView;
+
+    ViewfinderView getViewfinderView() {
+        return viewfinderView;
+    }
+
+    public Handler getHandler() {
+        return handler;
+    }
+
+    public CameraManager getCameraManager() {
+        return cameraManager;
+    }
+
+    @Override
+    public void onCreate(Bundle icicle) {
+        super.onCreate(icicle);
+
+        Window window = getWindow();
+        window.addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);
+        setContentView(R.layout.capture);
+
+        hasSurface = false;
+        inactivityTimer = new InactivityTimer(this);
+        beepManager = new BeepManager(this);
+        opreateView = findViewById(R.id.button_openorcloseClick);
+
+        opreateView.setOnClickListener(new OnClickListener() {
+
+            @Override
+            public void onClick(View v) {
+                if (cameraManager != null) {
+                    Config.KEY_FRONT_LIGHT = !Config.KEY_FRONT_LIGHT;
+                    if (Config.KEY_FRONT_LIGHT == true) {
+                        opreateView
+                                .setImageResource(R.drawable.mzw_camera_close);
+                    } else {
+                        opreateView
+                                .setImageResource(R.drawable.mzw_camera_open);
+                    }
+                    cameraManager.getConfigManager().initializeTorch(
+                            cameraManager.getCamera().getParameters(), false);
+                    onPause();
+                    onResume();
+                }
+            }
+        });
+    }
+
+    @Override
+    protected void onResume() {
+        super.onResume();
+
+        // CameraManager must be initialized here, not in onCreate(). This is
+        // necessary because we don't
+        // want to open the camera driver and measure the screen size if we're
+        // going to show the help on
+        // first launch. That led to bugs where the scanning rectangle was the
+        // wrong size and partially
+        // off screen.
+        cameraManager = new CameraManager(getApplication());
+
+        viewfinderView = findViewById(R.id.viewfinder_view);
+        viewfinderView.setCameraManager(cameraManager);
+
+        handler = null;
+        SurfaceView surfaceView = findViewById(R.id.preview_view);
+        SurfaceHolder surfaceHolder = surfaceView.getHolder();
+        if (hasSurface) {
+            // The activity was paused but not stopped, so the surface still
+            // exists. Therefore
+            // surfaceCreated() won't be called, so init the camera here.
+            initCamera(surfaceHolder);
+        } else {
+            // Install the callback and wait for surfaceCreated() to init the
+            // camera.
+            surfaceHolder.addCallback(this);
+            surfaceHolder.setType(SurfaceHolder.SURFACE_TYPE_PUSH_BUFFERS);
+        }
+
+        beepManager.updatePrefs();
+
+        inactivityTimer.onResume();
+    }
+
+    @Override
+    protected void onPause() {
+        if (handler != null) {
+            handler.quitSynchronously();
+            handler = null;
+        }
+        inactivityTimer.onPause();
+        cameraManager.closeDriver();
+        if (!hasSurface) {
+            SurfaceView surfaceView = findViewById(R.id.preview_view);
+            SurfaceHolder surfaceHolder = surfaceView.getHolder();
+            surfaceHolder.removeCallback(this);
+        }
+        super.onPause();
+    }
 
 
     @Override
     @Override
     protected void onStop() {
     protected void onStop() {
@@ -173,186 +173,182 @@ public final class CaptureActivity extends Activity implements SurfaceHolder.Cal
     }
     }
 
 
     @Override
     @Override
-	protected void onDestroy() {
-		inactivityTimer.shutdown();
-		super.onDestroy();
-	}
-
-	@Override
-	public boolean onKeyDown(int keyCode, KeyEvent event) {
-		switch (keyCode) {
-		case KeyEvent.KEYCODE_BACK:
-			// restartPreviewAfterDelay(0L);
-			return super.onKeyDown(keyCode, event);
-		case KeyEvent.KEYCODE_FOCUS:
-		case KeyEvent.KEYCODE_CAMERA:
-			// Handle these events so they don't launch the Camera app
-			return true;
-			// Use volume up/down to turn on light
-		case KeyEvent.KEYCODE_VOLUME_DOWN:
-			cameraManager.setTorch(false);
-			return true;
-		case KeyEvent.KEYCODE_VOLUME_UP:
-			cameraManager.setTorch(true);
-			return true;
-		}
-		return super.onKeyDown(keyCode, event);
-	}
-
-	private void decodeOrStoreSavedBitmap(Bitmap bitmap, Result result) {
-		// Bitmap isn't used yet -- will be used soon
-		if (handler == null) {
-			savedResultToShow = result;
-		} else {
-			if (result != null) {
-				savedResultToShow = result;
-			}
-			if (savedResultToShow != null) {
-				Message message = Message.obtain(handler,
-						R.id.decode_succeeded, savedResultToShow);
-				handler.sendMessage(message);
-			}
-			savedResultToShow = null;
-		}
-	}
-
-	@Override
-	public void surfaceCreated(SurfaceHolder holder) {
-		if (holder == null) {
-			Log.e(TAG,
-					"*** WARNING *** surfaceCreated() gave us a null surface!");
-		}
-		if (!hasSurface) {
-			hasSurface = true;
-			initCamera(holder);
-		}
-	}
-
-	@Override
-	public void surfaceDestroyed(SurfaceHolder holder) {
-		hasSurface = false;
-	}
-
-	@Override
-	public void surfaceChanged(SurfaceHolder holder, int format, int width,
-			int height) {
-
-	}
-
-	/**
-	 * A valid barcode has been found, so give an indication of success and show
-	 * the results.
-	 *
-	 * @param rawResult
-	 *            The contents of the barcode.
-	 * @param barcode
-	 *            A greyscale bitmap of the camera data which was decoded.
-	 */
-	public void handleDecode(Result rawResult, Bitmap barcode) {
-		inactivityTimer.onActivity();
-		ResultHandler resultHandler = ResultHandlerFactory.makeResultHandler(
-				this, rawResult);
-
-		boolean fromLiveScan = barcode != null;
-		if (fromLiveScan) {
-			// Then not from history, so beep/vibrate and we have an image to
-			// draw on
-			beepManager.playBeepSoundAndVibrate();
-			// drawResultPoints(barcode, rawResult);
-			viewfinderView.drawResultBitmap(barcode);
-		}
-
-		String text = rawResult.getText();
-		Intent intent = new Intent(this, ResultActivity.class);
-		intent.putExtra("text", text);
-		startActivity(intent);
+    protected void onDestroy() {
+        inactivityTimer.shutdown();
+        super.onDestroy();
+    }
+
+    @Override
+    public boolean onKeyDown(int keyCode, KeyEvent event) {
+        switch (keyCode) {
+            case KeyEvent.KEYCODE_BACK:
+                // restartPreviewAfterDelay(0L);
+                return super.onKeyDown(keyCode, event);
+            case KeyEvent.KEYCODE_FOCUS:
+            case KeyEvent.KEYCODE_CAMERA:
+                // Handle these events so they don't launch the Camera app
+                return true;
+            // Use volume up/down to turn on light
+            case KeyEvent.KEYCODE_VOLUME_DOWN:
+                cameraManager.setTorch(false);
+                return true;
+            case KeyEvent.KEYCODE_VOLUME_UP:
+                cameraManager.setTorch(true);
+                return true;
+        }
+        return super.onKeyDown(keyCode, event);
+    }
+
+    private void decodeOrStoreSavedBitmap(Bitmap bitmap, Result result) {
+        // Bitmap isn't used yet -- will be used soon
+        if (handler == null) {
+            savedResultToShow = result;
+        } else {
+            if (result != null) {
+                savedResultToShow = result;
+            }
+            if (savedResultToShow != null) {
+                Message message = Message.obtain(handler,
+                        R.id.decode_succeeded, savedResultToShow);
+                handler.sendMessage(message);
+            }
+            savedResultToShow = null;
+        }
+    }
+
+    @Override
+    public void surfaceCreated(SurfaceHolder holder) {
+        if (holder == null) {
+            Log.e(TAG,
+                    "*** WARNING *** surfaceCreated() gave us a null surface!");
+        }
+        if (!hasSurface) {
+            hasSurface = true;
+            initCamera(holder);
+        }
+    }
+
+    @Override
+    public void surfaceDestroyed(SurfaceHolder holder) {
+        hasSurface = false;
+    }
+
+    @Override
+    public void surfaceChanged(SurfaceHolder holder, int format, int width,
+                               int height) {
+
+    }
+
+    /**
+     * A valid barcode has been found, so give an indication of success and show
+     * the results.
+     *
+     * @param rawResult The contents of the barcode.
+     * @param barcode   A greyscale bitmap of the camera data which was decoded.
+     */
+    public void handleDecode(Result rawResult, Bitmap barcode) {
+        inactivityTimer.onActivity();
+        ResultHandler resultHandler = ResultHandlerFactory.makeResultHandler(
+                this, rawResult);
+
+        boolean fromLiveScan = barcode != null;
+        if (fromLiveScan) {
+            // Then not from history, so beep/vibrate and we have an image to
+            // draw on
+            beepManager.playBeepSoundAndVibrate();
+            // drawResultPoints(barcode, rawResult);
+            viewfinderView.drawResultBitmap(barcode);
+        }
+
+        String text = rawResult.getText();
+        Intent intent = new Intent(this, ResultActivity.class);
+        intent.putExtra("text", text);
+        startActivity(intent);
         cameraManager.closeDriver();
         cameraManager.closeDriver();
-	}
-
-	/**
-	 * Superimpose a line for 1D or dots for 2D to highlight the key features of
-	 * the barcode.
-	 *
-	 * @param barcode
-	 *            A bitmap of the captured image.
-	 * @param rawResult
-	 *            The decoded results which contains the points to draw.
-	 */
-	private void drawResultPoints(Bitmap barcode, Result rawResult) {
-		ResultPoint[] points = rawResult.getResultPoints();
-		if (points != null && points.length > 0) {
-			Canvas canvas = new Canvas(barcode);
-			Paint paint = new Paint();
-			paint.setColor(getResources().getColor(R.color.result_points));
-			if (points.length == 2) {
-				paint.setStrokeWidth(4.0f);
-				drawLine(canvas, paint, points[0], points[1]);
-			} else if (points.length == 4
-					&& (rawResult.getBarcodeFormat() == BarcodeFormat.UPC_A || rawResult
-							.getBarcodeFormat() == BarcodeFormat.EAN_13)) {
-				// Hacky special case -- draw two lines, for the barcode and
-				// metadata
-				drawLine(canvas, paint, points[0], points[1]);
-				drawLine(canvas, paint, points[2], points[3]);
-			} else {
-				paint.setStrokeWidth(10.0f);
-				for (ResultPoint point : points) {
-					canvas.drawPoint(point.getX(), point.getY(), paint);
-				}
-			}
-		}
-	}
-
-	private static void drawLine(Canvas canvas, Paint paint, ResultPoint a,
-			ResultPoint b) {
-		canvas.drawLine(a.getX(), a.getY(), b.getX(), b.getY(), paint);
-	}
-
-	private void initCamera(SurfaceHolder surfaceHolder) {
-		//		权限检测
-		if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {
-			if (checkSelfPermission(Manifest.permission.CAMERA) != PackageManager.PERMISSION_GRANTED) {
-				requestPermissions(new String[]{Manifest.permission.CAMERA}, 1);
-			}
-		}
-		if (surfaceHolder == null) {
-			throw new IllegalStateException("No SurfaceHolder provided");
-		}
-		if (cameraManager.isOpen()) {
-			Log.w(TAG,
-					"initCamera() while already open -- late SurfaceView callback?");
-			return;
-		}
-		try {
-			cameraManager.openDriver(surfaceHolder);
-			// Creating the handler starts the preview, which can also throw a
-			// RuntimeException.
-			if (handler == null) {
-				handler = new CaptureActivityHandler(this, viewfinderView,
-						decodeFormats, characterSet, cameraManager);
-			}
-			decodeOrStoreSavedBitmap(null, null);
-		} catch (IOException ioe) {
-			Log.w(TAG, ioe);
-			Toast.makeText(this, R.string.camera_problem, Toast.LENGTH_SHORT)
-					.show();
-			finish();
-		} catch (RuntimeException e) {
-			// Barcode Scanner has seen crashes in the wild of this variety:
-			// java.?lang.?RuntimeException: Fail to connect to camera service
-			Log.w(TAG, "Unexpected error initializing camera", e);
-			Toast.makeText(this, R.string.framwork_problem, Toast.LENGTH_SHORT)
-					.show();
-		}
-	}
-
-	public void restartPreviewAfterDelay(long delayMS) {
-		if (handler != null) {
-			handler.sendEmptyMessageDelayed(R.id.restart_preview, delayMS);
-		}
-	}
-
-	public void drawViewfinder() {
-		viewfinderView.drawViewfinder();
-	}
+    }
+
+    /**
+     * Superimpose a line for 1D or dots for 2D to highlight the key features of
+     * the barcode.
+     *
+     * @param barcode   A bitmap of the captured image.
+     * @param rawResult The decoded results which contains the points to draw.
+     */
+    private void drawResultPoints(Bitmap barcode, Result rawResult) {
+        ResultPoint[] points = rawResult.getResultPoints();
+        if (points != null && points.length > 0) {
+            Canvas canvas = new Canvas(barcode);
+            Paint paint = new Paint();
+            paint.setColor(getResources().getColor(R.color.result_points));
+            if (points.length == 2) {
+                paint.setStrokeWidth(4.0f);
+                drawLine(canvas, paint, points[0], points[1]);
+            } else if (points.length == 4
+                    && (rawResult.getBarcodeFormat() == BarcodeFormat.UPC_A || rawResult
+                    .getBarcodeFormat() == BarcodeFormat.EAN_13)) {
+                // Hacky special case -- draw two lines, for the barcode and
+                // metadata
+                drawLine(canvas, paint, points[0], points[1]);
+                drawLine(canvas, paint, points[2], points[3]);
+            } else {
+                paint.setStrokeWidth(10.0f);
+                for (ResultPoint point : points) {
+                    canvas.drawPoint(point.getX(), point.getY(), paint);
+                }
+            }
+        }
+    }
+
+    private static void drawLine(Canvas canvas, Paint paint, ResultPoint a,
+                                 ResultPoint b) {
+        canvas.drawLine(a.getX(), a.getY(), b.getX(), b.getY(), paint);
+    }
+
+    private void initCamera(SurfaceHolder surfaceHolder) {
+        //		权限检测
+        if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {
+            if (checkSelfPermission(Manifest.permission.CAMERA) != PackageManager.PERMISSION_GRANTED) {
+                requestPermissions(new String[]{Manifest.permission.CAMERA}, 1);
+            }
+        }
+        if (surfaceHolder == null) {
+            throw new IllegalStateException("No SurfaceHolder provided");
+        }
+        if (cameraManager.isOpen()) {
+            Log.w(TAG,
+                    "initCamera() while already open -- late SurfaceView callback?");
+            return;
+        }
+        try {
+            cameraManager.openDriver(surfaceHolder);
+            // Creating the handler starts the preview, which can also throw a
+            // RuntimeException.
+            if (handler == null) {
+                handler = new CaptureActivityHandler(this, viewfinderView,
+                        decodeFormats, characterSet, cameraManager);
+            }
+            decodeOrStoreSavedBitmap(null, null);
+        } catch (IOException ioe) {
+            Log.w(TAG, ioe);
+            Toast.makeText(this, R.string.camera_problem, Toast.LENGTH_SHORT)
+                    .show();
+            finish();
+        } catch (RuntimeException e) {
+            // Barcode Scanner has seen crashes in the wild of this variety:
+            // java.?lang.?RuntimeException: Fail to connect to camera service
+            Log.w(TAG, "Unexpected error initializing camera", e);
+            Toast.makeText(this, R.string.framwork_problem, Toast.LENGTH_SHORT)
+                    .show();
+        }
+    }
+
+    public void restartPreviewAfterDelay(long delayMS) {
+        if (handler != null) {
+            handler.sendEmptyMessageDelayed(R.id.restart_preview, delayMS);
+        }
+    }
+
+    public void drawViewfinder() {
+        viewfinderView.drawViewfinder();
+    }
 }
 }

+ 21 - 12
app/src/main/java/me/yoqi/qrcode/Config.java

@@ -1,24 +1,33 @@
 package me.yoqi.qrcode;
 package me.yoqi.qrcode;
 
 
 
 
-public class Config
-{
-    /** 自动对焦 */
+public class Config {
+    /**
+     * 自动对焦
+     */
     public static final boolean AOTO_FOCUS = true;
     public static final boolean AOTO_FOCUS = true;
-    
-    /** 前置灯光 */
+
+    /**
+     * 前置灯光
+     */
     public static boolean KEY_FRONT_LIGHT = false;
     public static boolean KEY_FRONT_LIGHT = false;
-    
-    /** 摄像头配置 Camera.Parameters.FOCUS_MODE_CONTINUOUS_PICTURE in 4.0+ */
+
+    /**
+     * 摄像头配置 Camera.Parameters.FOCUS_MODE_CONTINUOUS_PICTURE in 4.0+
+     */
     public static final boolean KEY_DISABLE_CONTINUOUS_FOCUS = true;
     public static final boolean KEY_DISABLE_CONTINUOUS_FOCUS = true;
-    
-    /** 解码器 */
+
+    /**
+     * 解码器
+     */
     public static final boolean KEY_DECODE_1D = false;
     public static final boolean KEY_DECODE_1D = false;
     public static final boolean KEY_DECODE_QR = false;
     public static final boolean KEY_DECODE_QR = false;
     public static final boolean KEY_DECODE_DATA_MATRIX = false;
     public static final boolean KEY_DECODE_DATA_MATRIX = false;
-    
-    /** 扫描到结果后是否震动,默认为false,声音默认为true */
+
+    /**
+     * 扫描到结果后是否震动,默认为false,声音默认为true
+     */
     public static final boolean KEY_PLAY_BEEP = false;
     public static final boolean KEY_PLAY_BEEP = false;
     public static final boolean KEY_VIBRATE = true;
     public static final boolean KEY_VIBRATE = true;
-    
+
 }
 }

+ 5 - 4
app/src/main/java/me/yoqi/qrcode/ResultActivity.java

@@ -1,7 +1,6 @@
 package me.yoqi.qrcode;
 package me.yoqi.qrcode;
 
 
 import android.annotation.SuppressLint;
 import android.annotation.SuppressLint;
-import android.app.Activity;
 import android.content.ClipData;
 import android.content.ClipData;
 import android.content.ClipboardManager;
 import android.content.ClipboardManager;
 import android.content.Intent;
 import android.content.Intent;
@@ -11,9 +10,11 @@ import android.view.View;
 import android.widget.Button;
 import android.widget.Button;
 import android.widget.EditText;
 import android.widget.EditText;
 
 
+import androidx.appcompat.app.AppCompatActivity;
+
 import me.yoqi.qrcode.utils.StringUtils;
 import me.yoqi.qrcode.utils.StringUtils;
 
 
-public class ResultActivity extends Activity {
+public class ResultActivity extends AppCompatActivity {
 
 
     private EditText et_result;
     private EditText et_result;
     private Button btn_url;
     private Button btn_url;
@@ -42,8 +43,8 @@ public class ResultActivity extends Activity {
     }
     }
 
 
     private void initView() {
     private void initView() {
-        et_result = (EditText) findViewById(R.id.et_result);
-        btn_url = (Button) findViewById(R.id.btn_url);
+        et_result = findViewById(R.id.et_result);
+        btn_url = findViewById(R.id.btn_url);
         btn_url.setOnClickListener(new View.OnClickListener() {
         btn_url.setOnClickListener(new View.OnClickListener() {
             @Override
             @Override
             public void onClick(View v) {
             public void onClick(View v) {

+ 1 - 1
app/src/main/java/me/yoqi/qrcode/utils/StringUtils.java

@@ -13,7 +13,7 @@ public class StringUtils {
      */
      */
     public static boolean isHttpUrl(String urls) {
     public static boolean isHttpUrl(String urls) {
         boolean isurl = false;
         boolean isurl = false;
-        if (urls.startsWith("http://") || urls.startsWith("https://")){
+        if (urls.startsWith("http://") || urls.startsWith("https://")) {
             return true;
             return true;
         }
         }
         String regex = "(((https|http)?://)?([a-z0-9]+[.])|(www.))"
         String regex = "(((https|http)?://)?([a-z0-9]+[.])|(www.))"

+ 0 - 16
app/src/main/res/layout/activity_main.xml

@@ -1,16 +0,0 @@
-<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:tools="http://schemas.android.com/tools"
-    android:layout_width="match_parent"
-    android:layout_height="match_parent"
-    android:paddingBottom="@dimen/activity_vertical_margin"
-    android:paddingLeft="@dimen/activity_horizontal_margin"
-    android:paddingRight="@dimen/activity_horizontal_margin"
-    android:paddingTop="@dimen/activity_vertical_margin"
-    tools:context=".CaptureActivity" >
-
-    <TextView
-        android:layout_width="wrap_content"
-        android:layout_height="wrap_content"
-        android:text="@string/hello_world" />
-	
-</RelativeLayout>

+ 6 - 4
app/src/main/res/layout/activity_result.xml

@@ -3,20 +3,22 @@
     android:id="@+id/ll_result"
     android:id="@+id/ll_result"
     android:layout_width="match_parent"
     android:layout_width="match_parent"
     android:layout_height="match_parent"
     android:layout_height="match_parent"
-    android:orientation="vertical" >
+    android:orientation="vertical">
 
 
     <TextView
     <TextView
         android:layout_width="match_parent"
         android:layout_width="match_parent"
         android:layout_height="wrap_content"
         android:layout_height="wrap_content"
         android:layout_marginBottom="10dp"
         android:layout_marginBottom="10dp"
-        android:textSize="20dp"
-        android:text="@string/scan_result" />
+        android:text="@string/scan_result"
+        android:textSize="20sp" />
 
 
     <EditText
     <EditText
         android:id="@+id/et_result"
         android:id="@+id/et_result"
         android:layout_width="match_parent"
         android:layout_width="match_parent"
         android:layout_height="wrap_content"
         android:layout_height="wrap_content"
         android:layout_marginBottom="10dp"
         android:layout_marginBottom="10dp"
+        android:autofillHints="@string/app_name"
+        android:inputType="text"
         android:minLines="5" />
         android:minLines="5" />
 
 
     <Button
     <Button
@@ -29,8 +31,8 @@
     <TextView
     <TextView
         android:layout_width="match_parent"
         android:layout_width="match_parent"
         android:layout_height="wrap_content"
         android:layout_height="wrap_content"
-        android:paddingTop="10dp"
         android:gravity="center"
         android:gravity="center"
+        android:paddingTop="10dp"
         android:text="@string/auto_copy"
         android:text="@string/auto_copy"
         android:textSize="17sp" />
         android:textSize="17sp" />