展锐Camera open failure log解析程序

本文介绍了解析展锐平台Camera开发过程中出现的错误日志的方法。通过编写Java程序来解析特定格式的日志,将一串数字转换为具体的Camera操作,便于开发者快速定位问题。

出发点

在展锐平台开发Camera的时候有时候会遇到报错的情况,log如下:

1-05 13:26:12.429   722 29945 E Camera3-Device: Camera 0: sendRequestsBatch: RequestThread: Unable to submit capture request 8115 to HAL device: Function not implemented (-38)
01-05 13:26:12.430 29604 29766 E CAM2PORT_AndCam2AgntImp: Camera device '0' encountered error code '4'
01-05 13:26:12.431 29604 29604 W CAM_CameraActivity Drea: Camera open failure: HIST_ID0_-1_1_803_711_204_711_101_102_204_204_204_204_204_204_461_462_204_502_802_204_204_302_305_802_204_204_204_HEND
01-05 13:26:12.432 29604 29604 E CAM_FatalErrorHandler: Handling Camera Open Failure:
01-05 13:26:12.432 29604 29604 E CAM_FatalErrorHandler: java.lang.Exception
01-05 13:26:12.432 29604 29604 E CAM_FatalErrorHandler: 	at com.android.camera.FatalErrorHandlerImpl.onCameraOpenFailure(FatalErrorHandlerImpl.java:49)
01-05 13:26:12.432 29604 29604 E CAM_FatalErrorHandler: 	at com.android.camera.CameraActivity$8.run(CameraActivity.java:717)
01-05 13:26:12.432 29604 29604 E CAM_FatalErrorHandler: 	at android.os.Handler.handleCallback(Handler.java:938)
01-05 13:26:12.432 29604 29604 E CAM_FatalErrorHandler: 	at android.os.Handler.dispatchMessage(Handler.java:99)
01-05 13:26:12.432 29604 29604 E CAM_FatalErrorHandler: 	at android.os.Looper.loop(Looper.java:223)
01-05 13:26:12.432 29604 29604 E CAM_FatalErrorHandler: 	at android.app.ActivityThread.main(ActivityThread.java:7938)
01-05 13:26:12.432 29604 29604 E CAM_FatalErrorHandler: 	at java.lang.reflect.Method.invoke(Native Method)
01-05 13:26:12.432 29604 29604 E CAM_FatalErrorHandler: 	at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:603)
01-05 13:26:12.432 29604 29604 E CAM_FatalErrorHandler: 	at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:947)
01-05 13:26:12.433 29604 29604 E CAM_CameraUtil: Show fatal error dialog

在log中会出现HIST_ID0_-1_1_803_711_204_711_101_102_204_204_204_204_204_204_461_462_204_502_802_204_204_302_305_802_204_204_204_HEND 这样的一段包含很多数字的信息,这些数字是有含义的,代表报错之前执行的一些Action,有时候可以帮助我们分析错误的原因。

这些数字主要定义在
vendor/sprd/platform/packages/apps/DreamCamera2/portability/src/com/android/ex/camera2/portability/SprdCameraActions.java

public static final int CAPTURE_BURST_PHOTO = 602;
public static final int CANCEL_CAPTURE_BURST_PHOTO = 603;
/* @} */
public static final int SET_SENSOR_SELF_SHOT_LISTENER = 711;

public static final int SET_PREVIEW_TEXTURE_ASYNC_WITHOUT_OPTIMIZE = 109;
public static final int SET_PREVIEW_DISPLAY_ASYNC_WITHOUT_OPTIMIZE = 110;
public static final int STOP_PREVIEW_WITHOUT_FLUSH = 111;
// SPRD:add for saving normal pic for HDR
public static final int CAPTURE_HDR_PHOTO = 701;

public static final int CAPTURE_PHOTO_WITH_THUMB = 702;

// SPRD: add for thumb resolution, release surface and flush preview buffer.
public static final int RELEASE_FOR_THUMB = 801;
public static final int SET_HDR_SCENE_LISTENER = 802;
public static final int START_VIDEO_RECORDER = 901;
public static final int CAPTURE_PHOTO_WITH_SNAP = 902;
public static final int SET_AI_SCENE_LISTENER = 803;
public static final int SET_AUTO3DNR_SCENE_LISTENER = 805;

public static final int SET_AUTO_CHASING_LISTENER = 804;

vendor/sprd/platform/packages/apps/DreamCamera2/portability/src/com/android/ex/camera2/portability/CameraActions.java

// Camera initialization/finalization
public static final int OPEN_CAMERA = 1;
public static final int RELEASE =     2;
public static final int RECONNECT =   3;
public static final int UNLOCK =      4;
public static final int LOCK =        5;
// Preview
public static 
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值