From 57dfbac311ccaa6900c0450e71460856010a0bad Mon Sep 17 00:00:00 2001
From: zuoxiao <470321431@qq.com>
Date: 星期五, 01 十二月 2023 18:04:09 +0800
Subject: [PATCH] 身份证识别相关资源和代码
---
app/src/main/java/com/dayu/recharge/activity/CameraActivity.java | 700 ++++++++++++++++++++++++++++++----------------------------
1 files changed, 362 insertions(+), 338 deletions(-)
diff --git a/app/src/main/java/com/dayu/recharge/activity/CameraActivity.java b/app/src/main/java/com/dayu/recharge/activity/CameraActivity.java
index 8ac11bb..b6d9e72 100644
--- a/app/src/main/java/com/dayu/recharge/activity/CameraActivity.java
+++ b/app/src/main/java/com/dayu/recharge/activity/CameraActivity.java
@@ -21,6 +21,7 @@
import android.widget.TextView;
import android.widget.Toast;
+
import com.dayu.recharge.R;
import com.dayu.recharge.view.ViewfinderView;
import com.yunmai.cc.idcard.controler.CameraManager;
@@ -28,399 +29,422 @@
import com.yunmai.cc.idcard.controler.OcrManager;
import com.yunmai.cc.idcard.vo.IdCardInfoNew;
+import java.io.UnsupportedEncodingException;
+
+
/**
* 瑙嗛璇嗗埆绫�
- *
+ *
* @author fangcm 2013-03-18
- *
*/
-public class CameraActivity extends BaseActivity implements SurfaceHolder.Callback {
+public class CameraActivity extends Activity implements SurfaceHolder.Callback {
- private final String TAG = "cc_idcard";
+ private final String TAG = "cc_idcard";
- private TextView tvTips;
- private SurfaceView sv_preview;
- private SurfaceHolder surfaceHolder;
- private CameraManager cameraManager;
- private boolean autoFoucs = true;
- private ViewfinderView finderView;
- private OcrManager ocrManager;
- private Rect rect;
- private boolean cameraError = false;
- // private boolean over = false;
+ private TextView tvTips;
+ private SurfaceView sv_preview;
+ private SurfaceHolder surfaceHolder;
+ private CameraManager cameraManager;
+ private boolean autoFoucs = true;
+ private ViewfinderView finderView;
+ private OcrManager ocrManager;
+ private Rect rect;
+ private boolean cameraError = false;
+ // private boolean over = false;
- private Button btnFlash, btnCancel;
- private ImageView imgTips;
- private ImageView iv, ivHead;
- private int typeFront = 1;// 0涓嶅尯鍒� 锛�1姝i潰锛�2鑳岄潰
+ private Button btnFlash, btnCancel;
+ private ImageView imgTips;
+ private ImageView iv, ivHead;
+ private int typeFront = 0;// 0涓嶅尯鍒� 锛�1姝i潰锛�2鑳岄潰
- @Override
- protected void onCreate(Bundle savedInstanceState) {
- // TODO Auto-generated method stub
- super.onCreate(savedInstanceState);
- setContentView(R.layout.camera);
+ @Override
+ protected void onCreate(Bundle savedInstanceState) {
+ // TODO Auto-generated method stub
+ super.onCreate(savedInstanceState);
+ setContentView(R.layout.camera);
- typeFront = this.getIntent().getIntExtra("typeFront", 0);
- initView();
- cameraManager = new CameraManager(getBaseContext(), mHandler);
- mCameraOpenThread.start();
- try {
- mCameraOpenThread.join();
- mCameraOpenThread = null;
- } catch (Exception e) {
- // TODO Auto-generated catch block
- e.printStackTrace();
- cameraError = true;
- }
- if (cameraError) {
- Toast.makeText(getBaseContext(), "鐓х浉鏈烘湭鍚姩锛�", Toast.LENGTH_SHORT).show();
- finish();
- return;
- }
- setParameters();
+ typeFront = this.getIntent().getIntExtra("typeFront", 0);
+ initView();
+ cameraManager = new CameraManager(getBaseContext(), mHandler);
+ mCameraOpenThread.start();
+ try {
+ mCameraOpenThread.join();
+ mCameraOpenThread = null;
+ } catch (Exception e) {
+ // TODO Auto-generated catch block
+ e.printStackTrace();
+ cameraError = true;
+ }
+ if (cameraError) {
+ Toast.makeText(getBaseContext(), "鐓х浉鏈烘湭鍚姩锛�", Toast.LENGTH_SHORT).show();
+ finish();
+ return;
+ }
+ setParameters();
- }
+ }
- private Thread mCameraOpenThread = new Thread(new Runnable() {
- @Override
- public void run() {
- try {
- cameraManager.openCamera();
- } catch (Exception e) {
- // TODO Auto-generated catch block
- e.printStackTrace();
- cameraError = true;
- }
- }
- });
+ private Thread mCameraOpenThread = new Thread(new Runnable() {
+ @Override
+ public void run() {
+ try {
+ cameraManager.openCamera();
+ } catch (Exception e) {
+ // TODO Auto-generated catch block
+ e.printStackTrace();
+ cameraError = true;
+ }
+ }
+ });
- private void setParameters() {
+ private void setParameters() {
- WindowManager manager = (WindowManager) getSystemService(Context.WINDOW_SERVICE);
- Display display = manager.getDefaultDisplay();
- int wWidth = display.getWidth();
- int wHeight = display.getHeight();
+ WindowManager manager = (WindowManager) getSystemService(Context.WINDOW_SERVICE);
+ Display display = manager.getDefaultDisplay();
+ int wWidth = display.getWidth();
+ int wHeight = display.getHeight();
- cameraManager.setCameraFlashModel(Camera.Parameters.FLASH_MODE_OFF);
+ cameraManager.setCameraFlashModel(Camera.Parameters.FLASH_MODE_OFF);
- float ps = wWidth * 1.0f / wHeight;
- cameraManager.setPreviewSize(ps);
+ float ps = wWidth * 1.0f / wHeight;
+ cameraManager.setPreviewSize(ps);
- int pWidth = cameraManager.getPreviewWidth();
- int pHeight = cameraManager.getPreviewHeight();
- if (pWidth == 0 || pHeight == 0) {
- Toast.makeText(getBaseContext(), "鐓х浉鏈烘湭鍚姩锛侊紒", Toast.LENGTH_SHORT).show();
- finish();
- return;
- }
- Log.i(TAG, pWidth + "<--------W----Preview-----H------->" + pHeight);
- Log.i(TAG, wWidth + "<--------W----WindowManager-----H------->" + wHeight);
+ int pWidth = cameraManager.getPreviewWidth();
+ int pHeight = cameraManager.getPreviewHeight();
+ if (pWidth == 0 || pHeight == 0) {
+ Toast.makeText(getBaseContext(), "鐓х浉鏈烘湭鍚姩锛侊紒", Toast.LENGTH_SHORT).show();
+ finish();
+ return;
+ }
+ Log.i(TAG, pWidth + "<--------W----Preview-----H------->" + pHeight);
+ Log.i(TAG, wWidth + "<--------W----WindowManager-----H------->" + wHeight);
- int tempWidth = pWidth;
- int tempHeidht = pHeight;
- float x = 100.0f;
- int tempW = pWidth;
- int tempH = pHeight;
- if (wWidth > pWidth && wHeight > pHeight) {
- while (wWidth > tempW && wHeight > tempH) {
- x++;
- Log.d(TAG, "---xx----->" + x / 100.0);
- tempW = (int) (pWidth * x / 100.0);
- tempH = (int) (pHeight * x / 100.0);
- if (wWidth > tempW && wHeight > tempH) {
- tempWidth = tempW;
- tempHeidht = tempH;
- }
- }
- Log.d(TAG, "<------11--wWidth > pWidth && wHeight > pHeight------>");
- } else {
- while (tempWidth > wWidth || tempHeidht > wHeight) {
- x--;
- Log.d(TAG, "---xx----->" + x / 100.0);
- tempWidth = (int) (pWidth * x / 100.0);
- tempHeidht = (int) (pHeight * x / 100.0);
- }
- Log.d(TAG, "<-----22---tempWidth > wWidth || tempHeidht > wHeight------>");
- }
+ int tempWidth = pWidth;
+ int tempHeidht = pHeight;
+ float x = 100.0f;
+ int tempW = pWidth;
+ int tempH = pHeight;
+ if (wWidth > pWidth && wHeight > pHeight) {
+ while (wWidth > tempW && wHeight > tempH) {
+ x++;
+ Log.d(TAG, "---xx----->" + x / 100.0);
+ tempW = (int) (pWidth * x / 100.0);
+ tempH = (int) (pHeight * x / 100.0);
+ if (wWidth > tempW && wHeight > tempH) {
+ tempWidth = tempW;
+ tempHeidht = tempH;
+ }
+ }
+ Log.d(TAG, "<------11--wWidth > pWidth && wHeight > pHeight------>");
+ } else {
+ while (tempWidth > wWidth || tempHeidht > wHeight) {
+ x--;
+ Log.d(TAG, "---xx----->" + x / 100.0);
+ tempWidth = (int) (pWidth * x / 100.0);
+ tempHeidht = (int) (pHeight * x / 100.0);
+ }
+ Log.d(TAG, "<-----22---tempWidth > wWidth || tempHeidht > wHeight------>");
+ }
- Log.d(TAG, tempWidth + "<--------W----setParameters-----H------->" + tempHeidht);
- // tempWidth = 854;
- // tempHeidht = 480;
- ViewGroup.LayoutParams lp = sv_preview.getLayoutParams();
- lp.width = tempWidth;
- lp.height = tempHeidht;
- sv_preview.getHolder().setFixedSize(tempWidth, tempHeidht);
- sv_preview.setLayoutParams(lp);
+ Log.d(TAG, tempWidth + "<--------W----setParameters-----H------->" + tempHeidht);
+ // tempWidth = 854;
+ // tempHeidht = 480;
+ ViewGroup.LayoutParams lp = sv_preview.getLayoutParams();
+ lp.width = tempWidth;
+ lp.height = tempHeidht;
+ sv_preview.getHolder().setFixedSize(tempWidth, tempHeidht);
+ sv_preview.setLayoutParams(lp);
- surfaceHolder = sv_preview.getHolder();
- surfaceHolder.addCallback(CameraActivity.this);
- surfaceHolder.setType(SurfaceHolder.SURFACE_TYPE_PUSH_BUFFERS);
+ surfaceHolder = sv_preview.getHolder();
+ surfaceHolder.addCallback(CameraActivity.this);
+ surfaceHolder.setType(SurfaceHolder.SURFACE_TYPE_PUSH_BUFFERS);
- float[] img = finderView.initFinder(tempWidth, tempHeidht, mHandler, typeFront);
+ float[] img = finderView.initFinder(tempWidth, tempHeidht, mHandler, typeFront);
- imgTips.setY(img[0]);
- imgTips.setX(img[1]);
+ imgTips.setY(img[0]);
+ imgTips.setX(img[1]);
- }
+ }
- private void initView() {
- sv_preview = (SurfaceView) findViewById(R.id.camera_sv);
- finderView = (ViewfinderView) findViewById(R.id.camera_finderView);
- tvTips = (TextView) findViewById(R.id.tv_tips);
- btnCancel = (Button) findViewById(R.id.bt_cancel);
- btnFlash = (Button) findViewById(R.id.bt_flash);
- imgTips = (ImageView) findViewById(R.id.iv_tips);
- switch (typeFront) {
- case 0:
- imgTips.setVisibility(View.GONE);
- break;
- case 1:
- imgTips.setBackgroundResource(R.mipmap.people_face);
- break;
- case 2:
- imgTips.setBackgroundResource(R.mipmap.emblem);
- break;
+ private void initView() {
+ sv_preview = (SurfaceView) findViewById(R.id.camera_sv);
+ finderView = (ViewfinderView) findViewById(R.id.camera_finderView);
+ tvTips = (TextView) findViewById(R.id.tv_tips);
+ btnCancel = (Button) findViewById(R.id.bt_cancel);
+ btnFlash = (Button) findViewById(R.id.bt_flash);
+ imgTips = (ImageView) findViewById(R.id.iv_tips);
+ switch (typeFront) {
+ case 0:
+ imgTips.setVisibility(View.GONE);
+ break;
+ case 1:
+ imgTips.setBackgroundResource(R.mipmap.people_face);
+ break;
+ case 2:
+ imgTips.setBackgroundResource(R.mipmap.emblem);
+ break;
- default:
- break;
- }
+ default:
+ break;
+ }
- btnFlash.setOnClickListener(listener);
- btnCancel.setOnClickListener(listener);
- }
+ btnFlash.setOnClickListener(listener);
+ btnCancel.setOnClickListener(listener);
+ }
- private boolean isFlashOn = false;
+ private boolean isFlashOn = false;
- private OnClickListener listener = new OnClickListener() {
+ private OnClickListener listener = new OnClickListener() {
- @Override
- public void onClick(View v) {
- // TODO Auto-generated method stub
- switch (v.getId()) {
- case R.id.bt_cancel:
- setResult(998);
- finish();
- break;
- case R.id.bt_flash:
- if (isFlashOn) {
- try {
- if (cameraManager.closeFlashlight()) {
- btnFlash.setBackgroundDrawable(getResources().getDrawable(R.mipmap.flash_on_s));
- isFlashOn = false;
- }
- } catch (Exception e) {
- // TODO: handle exception
- }
+ @Override
+ public void onClick(View v) {
+ // TODO Auto-generated method stub
+ switch (v.getId()) {
+ case R.id.bt_cancel:
+ setResult(998);
+ finish();
+ break;
+ case R.id.bt_flash:
+ if (isFlashOn) {
+ try {
+ if (cameraManager.closeFlashlight()) {
+ btnFlash.setBackgroundDrawable(getResources().getDrawable(R.mipmap.flash_on_s));
+ isFlashOn = false;
+ }
+ } catch (Exception e) {
+ // TODO: handle exception
+ }
- } else {
- try {
- if (cameraManager.openFlashlight()) {
- btnFlash.setBackgroundDrawable(getResources().getDrawable(R.mipmap.flash_off_s));
- isFlashOn = true;
- }
- } catch (Exception e) {
- // TODO: handle exception
- }
+ } else {
+ try {
+ if (cameraManager.openFlashlight()) {
+ btnFlash.setBackgroundDrawable(getResources().getDrawable(R.mipmap.flash_off_s));
+ isFlashOn = true;
+ }
+ } catch (Exception e) {
+ // TODO: handle exception
+ }
- }
- break;
+ }
+ break;
- default:
- break;
- }
- }
- };
+ default:
+ break;
+ }
+ }
+ };
- private Handler mHandler = new Handler() {
+ private Handler mHandler = new Handler() {
- @Override
- public void handleMessage(Message msg) {
- // TODO Auto-generated method stub
- super.handleMessage(msg);
- switch (msg.what) {
- case OcrConstant.TAKE_PREVIEW_DATA_OK:
+ @Override
+ public void handleMessage(Message msg) {
+ // TODO Auto-generated method stub
+ super.handleMessage(msg);
+ switch (msg.what) {
+ case OcrConstant.TAKE_PREVIEW_DATA_OK:
+ Log.d("yxl", "TAKE_PREVIEW_DATA_OK");
+ if (ocrManager == null) {
+ ocrManager = new OcrManager(mHandler, CameraActivity.this);
+ try {
+ rect = cameraManager.getViewfinder(finderView.getFinder());
+ } catch (Exception e) {
+ // TODO: handle exception
+ return;
+ }
- if (ocrManager == null) {
- ocrManager = new OcrManager(mHandler, CameraActivity.this);
- try {
- rect = cameraManager.getViewfinder(finderView.getFinder());
- } catch (Exception e) {
- // TODO: handle exception
- return;
- }
+ }
- }
-
- byte[] data_p = (byte[]) msg.obj;
- if (data_p != null && data_p.length > 0) {
- // if(over){
- // return;
- // }
- ocrManager.recognIDCard(data_p, cameraManager.getPreviewWidth(), cameraManager.getPreviewHeight(),
- rect, 0, typeFront);
- mHandler.sendEmptyMessageDelayed(OcrConstant.START_AUTOFOCUS, 100);
- } else {
- finderView.setLineRect(0);
- Toast.makeText(getBaseContext(), "鐩告満鍑虹幇闂锛岃閲嶅惎鎵嬫満锛�", Toast.LENGTH_SHORT).show();
- mHandler.sendEmptyMessageDelayed(OcrConstant.START_AUTOFOCUS, 500);
- }
- break;
- case OcrConstant.RECOGN_OK:
- mHandler.removeMessages(OcrConstant.TAKE_PREVIEW_DATA_OK);
- mHandler.removeMessages(OcrConstant.START_AUTOFOCUS);
+ byte[] data_p = (byte[]) msg.obj;
+ if (data_p != null && data_p.length > 0) {
+ // if(over){
+ // return;
+ // }
+ ocrManager.recognIDCard(data_p, cameraManager.getPreviewWidth(), cameraManager.getPreviewHeight(),
+ rect, 0, typeFront);
+ mHandler.sendEmptyMessageDelayed(OcrConstant.START_AUTOFOCUS, 100);
+ } else {
+ finderView.setLineRect(0);
+ Toast.makeText(getBaseContext(), "鐩告満鍑虹幇闂锛岃閲嶅惎鎵嬫満锛�", Toast.LENGTH_SHORT).show();
+ mHandler.sendEmptyMessageDelayed(OcrConstant.START_AUTOFOCUS, 500);
+ }
+ break;
+ case OcrConstant.RECOGN_OK:
+ Log.d("yxl", "RECOGN_OK");
+ mHandler.removeMessages(OcrConstant.TAKE_PREVIEW_DATA_OK);
+ mHandler.removeMessages(OcrConstant.START_AUTOFOCUS);
// String imgPath = "/sdcard/aidtest.jpg";
// String headPath = "/sdcard/aidheadtest.jpg";
- byte[] headPath = new byte[2048 * 1024 * 3];
- byte[] imgPath = new byte[2048 * 1024 * 3];
- int[] headRect = new int[8];
- int[] imgRect = new int[8];
+ byte[] headPath = new byte[2048 * 1024 * 2];
+ byte[] imgPath = new byte[2048 * 1024 * 2];
+ int[] headRect = new int[8];
+ int[] imgRect = new int[8];
- IdCardInfoNew idCardInfo = ocrManager.getResultToByte(imgPath, imgRect, headPath, headRect);
+ IdCardInfoNew idCardInfo = ocrManager.getResultToByte(imgPath, imgRect, headPath, headRect);
+ try {
+ String OCRResult = new String(idCardInfo.getCharInfo(), "gbk");
+ Intent intent = new Intent();
+ intent.putExtra("OCRResult", OCRResult);
+ setResult(RESULT_OK, intent);
+ } catch (UnsupportedEncodingException e) {
+ throw new RuntimeException(e);
+ }
// IdCardInfo idCardInfo = ocrManager.getResult(imgPath, headPath);
- Intent data2 = new Intent();
- data2.putExtra("idcardinfo", idCardInfo);
- setResult(200, data2);
+// AppDemo.setResult(idCardInfo);
+// Intent data2 = new Intent();
+// data2.putExtra("idcardinfo", idCardInfo);
+// setResult(200, data2);
+ finish();
+ break;
+ case OcrConstant.REPEAT_AUTOFOCUS:
+ Log.d("yxl", "REPEAT_AUTOFOCUS");
- finish();
+ cameraManager.autoFoucs();
+ mHandler.sendEmptyMessageDelayed(OcrConstant.REPEAT_AUTOFOCUS, 2000);
+ break;
+ case OcrConstant.RECOGN_EG_TIME_OUT:
+ Log.d("yxl", "RECOGN_EG_TIME_OUT");
+ Toast.makeText(getBaseContext(), "寮曟搸杩囨湡锛岃灏藉揩鏇存柊锛�", Toast.LENGTH_LONG).show();
+ finish();
+ break;
+ case OcrConstant.RECOGN_EG_LICENSE:
+ Log.d("yxl", "RECOGN_EG_LICENSE");
- break;
- case OcrConstant.REPEAT_AUTOFOCUS:
- cameraManager.autoFoucs();
- mHandler.sendEmptyMessageDelayed(OcrConstant.REPEAT_AUTOFOCUS, 2000);
- break;
- case OcrConstant.RECOGN_EG_TIME_OUT:
- Toast.makeText(getBaseContext(), "寮曟搸杩囨湡锛岃灏藉揩鏇存柊锛�", Toast.LENGTH_LONG).show();
- finish();
- break;
- case OcrConstant.RECOGN_EG_LICENSE:
- int ret = -1;
- if (msg.obj != null) {
- ret = (Integer) msg.obj;
- }
- Toast.makeText(getBaseContext(), "鎺堟潈澶辫触-->" + ret, Toast.LENGTH_LONG).show();
- finish();
- break;
- case OcrConstant.RECOGN_EG_INIT_ERROR:
- Toast.makeText(getBaseContext(), "寮曟搸鍒濆鍖栧け璐ワ紒", Toast.LENGTH_LONG).show();
- finish();
- break;
- case OcrConstant.START_AUTOFOCUS:
- if (autoFoucs) {
- cameraManager.autoFoucs();
- autoFoucs = false;
- mHandler.sendEmptyMessageDelayed(OcrConstant.START_AUTOFOCUS, 500);
- mHandler.sendEmptyMessageDelayed(OcrConstant.REPEAT_AUTOFOCUS, 1500);
- } else {
- cameraManager.autoFocusAndPreviewCallback();
- }
- break;
- case OcrConstant.RECOGN_LINE_IN_RECT:
- int restult = (Integer) msg.obj;
- finderView.setLineRect(restult);
- break;
- case OcrConstant.RECOGN_TIPS:
- int tips = (Integer) msg.obj;
- switch (tips) {
- case 1000:
- tvTips.setText("璇峰皢韬唤璇佺疆浜庢鍖哄煙\r\n灏濊瘯瀵归綈杈圭紭");
- break;
- case 1001:
- tvTips.setText("璺濈绋嶈繎锛岃灏濊瘯杩滅偣");
- break;
- case 1002:
- tvTips.setText("璺濈绋嶈繙锛岃灏濊瘯闈犺繎");
- break;
- case 1003:
- // tvTips.setText("鍥惧儚妯$硦锛岃璋冩暣璺濈");
- break;
- case 1004:
- tvTips.setText("鍥惧儚鍊炬枩锛岃淇濇寔姘村钩鎷嶆憚");
- break;
- case 1005:
- tvTips.setText("璇峰皢韬唤璇佺疆浜庢鍖哄煙\r\n灏濊瘯瀵归綈杈圭紭");
- break;
- case 1006:
- tvTips.setText("璇峰皢韬唤璇佹闈㈣嚦浜庢鍖哄煙");
- break;
- case 1007:
- tvTips.setText("璇峰皢韬唤璇佸弽闈㈣嚦浜庢鍖哄煙");
- break;
+ int ret = -1;
+ if (msg.obj != null) {
+ ret = (Integer) msg.obj;
+ }
+ Toast.makeText(getBaseContext(), "鎺堟潈澶辫触-->" + ret, Toast.LENGTH_LONG).show();
+ finish();
+ break;
+ case OcrConstant.RECOGN_EG_INIT_ERROR:
+ Log.d("yxl", "RECOGN_EG_INIT_ERROR");
- default:
- break;
- }
+ Toast.makeText(getBaseContext(), "寮曟搸鍒濆鍖栧け璐ワ紒", Toast.LENGTH_LONG).show();
+ finish();
+ break;
+ case OcrConstant.START_AUTOFOCUS:
+ Log.d("yxl", "START_AUTOFOCUS");
- break;
- default:
- cameraManager.initDisplay();
- mHandler.sendEmptyMessageDelayed(OcrConstant.START_AUTOFOCUS, 500);
- Toast.makeText(getBaseContext(), "<>" + msg.what, Toast.LENGTH_SHORT).show();
- break;
- }
- }
+ if (autoFoucs) {
+ cameraManager.autoFoucs();
+ autoFoucs = false;
+ mHandler.sendEmptyMessageDelayed(OcrConstant.START_AUTOFOCUS, 500);
+ mHandler.sendEmptyMessageDelayed(OcrConstant.REPEAT_AUTOFOCUS, 1500);
+ } else {
+ cameraManager.autoFocusAndPreviewCallback();
+ }
+ break;
+ case OcrConstant.RECOGN_LINE_IN_RECT:
+ Log.d("yxl", "RECOGN_LINE_IN_RECT");
- };
+ int restult = (Integer) msg.obj;
+ finderView.setLineRect(restult);
+ break;
+ case OcrConstant.RECOGN_TIPS:
+ Log.d("yxl", "RECOGN_TIPS");
+ int tips = (Integer) msg.obj;
+ switch (tips) {
+ case 1000:
+ tvTips.setText("璇峰皢韬唤璇佺疆浜庢鍖哄煙\r\n灏濊瘯瀵归綈杈圭紭");
+ break;
+ case 1001:
+ tvTips.setText("璺濈绋嶈繎锛岃灏濊瘯杩滅偣");
+ break;
+ case 1002:
+ tvTips.setText("璺濈绋嶈繙锛岃灏濊瘯闈犺繎");
+ break;
+ case 1003:
+ // tvTips.setText("鍥惧儚妯$硦锛岃璋冩暣璺濈");
+ break;
+ case 1004:
+ tvTips.setText("鍥惧儚鍊炬枩锛岃淇濇寔姘村钩鎷嶆憚");
+ break;
+ case 1005:
+ tvTips.setText("璇峰皢韬唤璇佺疆浜庢鍖哄煙\r\n灏濊瘯瀵归綈杈圭紭");
+ break;
+ case 1006:
+ tvTips.setText("璇峰皢韬唤璇佹闈㈣嚦浜庢鍖哄煙");
+ break;
+ case 1007:
+ tvTips.setText("璇峰皢韬唤璇佸弽闈㈣嚦浜庢鍖哄煙");
+ break;
- @Override
- public void surfaceCreated(SurfaceHolder holder) {
- // TODO Auto-generated method stub
- Log.d(TAG, "surfaceCreated");
- if (!cameraManager.cameraOpened()) {
- cameraManager.openCamera();
- setParameters();
- }
- }
+ default:
+ break;
+ }
- @Override
- public void surfaceChanged(SurfaceHolder holder, int format, int width, int height) {
- // TODO Auto-generated method stub
- if (holder.getSurface() == null) {
- Log.d(TAG, "holder.getSurface() == null");
- return;
- }
- Log.v(TAG, "surfaceChanged. w=" + width + ". h=" + height);
- surfaceHolder = holder;
- cameraManager.setPreviewDisplay(surfaceHolder);
- cameraManager.initDisplay();
- mHandler.sendEmptyMessageDelayed(OcrConstant.START_AUTOFOCUS, 500);
+ break;
+ default:
+ Log.d("yxl", "default");
+ cameraManager.initDisplay();
+ mHandler.sendEmptyMessageDelayed(OcrConstant.START_AUTOFOCUS, 500);
+ Toast.makeText(getBaseContext(), "<>" + msg.what, Toast.LENGTH_SHORT).show();
+ break;
+ }
+ }
- }
+ };
- @Override
- public void surfaceDestroyed(SurfaceHolder holder) {
- // TODO Auto-generated method stub
- Log.d(TAG, "surfaceDestroyed");
- try {
- cameraManager.closeCamera();
- } catch (Exception e) {
- // TODO: handle exception
- }
+ @Override
+ public void surfaceCreated(SurfaceHolder holder) {
+ // TODO Auto-generated method stub
+ Log.d(TAG, "surfaceCreated");
+ if (!cameraManager.cameraOpened()) {
+ cameraManager.openCamera();
+ setParameters();
+ }
+ }
- surfaceHolder = null;
- }
+ @Override
+ public void surfaceChanged(SurfaceHolder holder, int format, int width, int height) {
+ // TODO Auto-generated method stub
+ if (holder.getSurface() == null) {
+ Log.d(TAG, "holder.getSurface() == null");
+ return;
+ }
+ Log.v(TAG, "surfaceChanged. w=" + width + ". h=" + height);
+ surfaceHolder = holder;
+ cameraManager.setPreviewDisplay(surfaceHolder);
+ cameraManager.initDisplay();
+ mHandler.sendEmptyMessageDelayed(OcrConstant.START_AUTOFOCUS, 500);
- private void finishAll() {
- if (cameraManager != null) {
- try {
- cameraManager.closeCamera();
- } catch (Exception e) {
- // TODO: handle exception
- }
+ }
- }
+ @Override
+ public void surfaceDestroyed(SurfaceHolder holder) {
+ // TODO Auto-generated method stub
+ Log.d(TAG, "surfaceDestroyed");
+ try {
+ cameraManager.closeCamera();
+ } catch (Exception e) {
+ // TODO: handle exception
+ }
- }
+ surfaceHolder = null;
+ }
- @Override
- protected void onDestroy() {
- // TODO Auto-generated method stub
- super.onDestroy();
- mHandler.removeMessages(OcrConstant.TAKE_PREVIEW_DATA_OK);
- mHandler.removeMessages(OcrConstant.START_AUTOFOCUS);
- finishAll();
+ private void finishAll() {
+ if (cameraManager != null) {
+ try {
+ cameraManager.closeCamera();
+ } catch (Exception e) {
+ // TODO: handle exception
+ }
- }
+ }
+
+ }
+
+ @Override
+ protected void onDestroy() {
+ // TODO Auto-generated method stub
+ super.onDestroy();
+ mHandler.removeMessages(OcrConstant.TAKE_PREVIEW_DATA_OK);
+ mHandler.removeMessages(OcrConstant.START_AUTOFOCUS);
+ finishAll();
+
+ }
}
--
Gitblit v1.8.0