在log中搜Gsensor可以看到如下:
在Y:\1\18045c1老化\bug127302c1_slog\last_log\2015-01-01-06-19-23\android\0-events-06-19-24.log中搜到如下:
行号 500 - 01-01 06:36:08.996 664 2050 I am_create_activity: [0,509924699,15,com.wingtech.runintest/.<Gsensor>Activity,NULL,NULL,NULL,268435456]
行号 504 - 01-01 06:36:09.016 664 2050 I am_focused_activity: [0,com.wingtech.runintest/.<Gsensor>Activity]
行号 505 - 01-01 06:36:09.016 664 2050 I am_focused_activity: [0,com.wingtech.runintest/.<Gsensor>Activity]
行号 506 - 01-01 06:36:09.016 664 1184 I am_restart_activity: [0,509924699,15,com.wingtech.runintest/.<Gsensor>Activity]
行号 507 - 01-01 06:36:09.026 664 1184 I am_focused_activity: [0,com.wingtech.runintest/.<Gsensor>Activity]
行号 508 - 01-01 06:36:09.086 2158 2158 I am_on_performance: [0,com.wingtech.runintest.<Gsensor>Activity, onCreate cost 56ms]
行号 509 - 01-01 06:36:09.116 2158 2158 I am_on_resume_called: [0,com.wingtech.runintest.<Gsensor>Activity]
行号 510 - 01-01 06:36:09.116 2158 2158 I am_on_performance: [0,com.wingtech.runintest.<Gsensor>Activity, onResume cost 16ms]
行号 511 - 01-01 06:36:09.307 664 690 I am_activity_launch_time: [0,509924699,com.wingtech.runintest/.<Gsensor>Activity,303,303]
行号 513 - 01-01 06:36:19.016 664 1116 I am_finish_activity: [0,509924699,15,com.wingtech.runintest/.<Gsensor>Activity,app-request]
行号 516 - 01-01 06:36:19.026 664 1116 I am_pause_activity: [0,509924699,com.wingtech.runintest/.<Gsensor>Activity]
行号 517 - 01-01 06:36:19.036 2158 2158 I am_on_paused_called: [0,com.wingtech.runintest.<Gsensor>Activity]
行号 532 - 01-01 06:36:19.687 664 685 I am_destroy_activity: [0,509924699,15,com.wingtech.runintest/.<Gsensor>Activity,finish-imm]
看到onResume到onDestroy的时间间隔
06:36:09.016
06:36:19.016
上层代码确实做了10S的延时,只需要看这期间的代码即可查找问题
在Y:\1\18045c1老化\bug127302c1_slog\last_log\2015-01-01-06-19-23\android\0-main-06-19-24.log中搜到
行号 27003 - 01-01 06:36:09.116 2158 2158 D SensorManager: registerListenerImpl add first sensor {Sensor name="Devices 3-axis Accelerometer", vendor="Spreadtrum Accelerometer", version=1, type=1, maxRange=19.6133, resolution=0.009576807, power=0.7, minDelay=10000} to listener:com.wingtech.runintest.<Gsensor>Activity@30c581a2 result false
这里有minDelay=10000好怀疑,刚好是上层测试循环的10S,还是比较危险的
再搜索SensorManager如下:
01-01 06:36:09.106 2158 2158 D SensorManager: enableSensor {Sensor name="Devices 3-axis Accelerometer", vendor="Spreadtrum Accelerometer", version=1, type=1, maxRange=19.6133, resolution=0.009576807, power=0.7, minDelay=10000} enableSensorOk: -1
01-01 06:36:09.106 2158 2158 D SensorManager: addSensor enableSensor{Sensor name="Devices 3-axis Accelerometer", vendor="Spreadtrum Accelerometer", version=1, type=1, maxRange=19.6133, resolution=0.009576807, power=0.7, minDelay=10000} delayUs:200000 reservedFlags:0 maxBatchReportLatencyUs:0 enableSenorOk:-1
01-01 06:36:09.106 2158 2158 D SensorManager: removeSensor sensor:{Sensor name="Devices 3-axis Accelerometer", vendor="Spreadtrum Accelerometer", version=1, type=1, maxRange=19.6133, resolution=0.009576807, power=0.7, minDelay=10000} disable:false
01-01 06:36:09.116 2158 2158 D SensorManager: registerListenerImpl add first sensor {Sensor name="Devices 3-axis Accelerometer", vendor="Spreadtrum Accelerometer", version=1, type=1, maxRange=19.6133, resolution=0.009576807, power=0.7, minDelay=10000} to listener:com.wingtech.runintest.GsensorActivity@30c581a2 result false
可以看出在enableSensor的时候返回-1
而打印正确情况下是如下的:
D/SensorManager( 2861): enableSensor {Sensor name="Devices 3-axis Accelerometer", vendor="Spreadtrum Accelerometer", version=1, type=1, maxRange=19.6133, resolution=0.009576807, power=0.7, minDelay=10000} enableSensorOk: 0
D/SensorManager( 2861): addSensor enableSensor{Sensor name="Devices 3-axis Accelerometer", vendor="Spreadtrum Accelerometer", version=1, type=1, maxRange=19.6133, resolution=0.009576807, power=0.7, minDelay=10000} delayUs:20000 reservedFlags:0 maxBatchReportLatencyUs:0 enableSenorOk:0
D/SensorManager( 2861): registerListenerImpl add first sensor {Sensor name="Devices 3-axis Accelerometer", vendor="Spreadtrum Accelerometer", version=1, type=1, maxRange=19.6133, resolution=0.009576807, power=0.7, minDelay=10000} to listener:com.sprd.validationtools.itemstest.GsensorTestActivity$2@2364efb9 result true
D/SensorManager( 2861): registerListenerImpl bind queue and listener com.sprd.validationtools.itemstest.GsensorTestActivity$2@2364efb9
在Y:\1\18045c1老化\bug127302c1_slog\last_log\2015-01-01-06-19-23\android\0-events-06-19-24.log中搜到如下:
行号 500 - 01-01 06:36:08.996 664 2050 I am_create_activity: [0,509924699,15,com.wingtech.runintest/.<Gsensor>Activity,NULL,NULL,NULL,268435456]
行号 504 - 01-01 06:36:09.016 664 2050 I am_focused_activity: [0,com.wingtech.runintest/.<Gsensor>Activity]
行号 505 - 01-01 06:36:09.016 664 2050 I am_focused_activity: [0,com.wingtech.runintest/.<Gsensor>Activity]
行号 506 - 01-01 06:36:09.016 664 1184 I am_restart_activity: [0,509924699,15,com.wingtech.runintest/.<Gsensor>Activity]
行号 507 - 01-01 06:36:09.026 664 1184 I am_focused_activity: [0,com.wingtech.runintest/.<Gsensor>Activity]
行号 508 - 01-01 06:36:09.086 2158 2158 I am_on_performance: [0,com.wingtech.runintest.<Gsensor>Activity, onCreate cost 56ms]
行号 509 - 01-01 06:36:09.116 2158 2158 I am_on_resume_called: [0,com.wingtech.runintest.<Gsensor>Activity]
行号 510 - 01-01 06:36:09.116 2158 2158 I am_on_performance: [0,com.wingtech.runintest.<Gsensor>Activity, onResume cost 16ms]
行号 511 - 01-01 06:36:09.307 664 690 I am_activity_launch_time: [0,509924699,com.wingtech.runintest/.<Gsensor>Activity,303,303]
行号 513 - 01-01 06:36:19.016 664 1116 I am_finish_activity: [0,509924699,15,com.wingtech.runintest/.<Gsensor>Activity,app-request]
行号 516 - 01-01 06:36:19.026 664 1116 I am_pause_activity: [0,509924699,com.wingtech.runintest/.<Gsensor>Activity]
行号 517 - 01-01 06:36:19.036 2158 2158 I am_on_paused_called: [0,com.wingtech.runintest.<Gsensor>Activity]
行号 532 - 01-01 06:36:19.687 664 685 I am_destroy_activity: [0,509924699,15,com.wingtech.runintest/.<Gsensor>Activity,finish-imm]
看到onResume到onDestroy的时间间隔
06:36:09.016
06:36:19.016
上层代码确实做了10S的延时,只需要看这期间的代码即可查找问题
在Y:\1\18045c1老化\bug127302c1_slog\last_log\2015-01-01-06-19-23\android\0-main-06-19-24.log中搜到
行号 27003 - 01-01 06:36:09.116 2158 2158 D SensorManager: registerListenerImpl add first sensor {Sensor name="Devices 3-axis Accelerometer", vendor="Spreadtrum Accelerometer", version=1, type=1, maxRange=19.6133, resolution=0.009576807, power=0.7, minDelay=10000} to listener:com.wingtech.runintest.<Gsensor>Activity@30c581a2 result false
这里有minDelay=10000好怀疑,刚好是上层测试循环的10S,还是比较危险的
再搜索SensorManager如下:
01-01 06:36:09.106 2158 2158 D SensorManager: enableSensor {Sensor name="Devices 3-axis Accelerometer", vendor="Spreadtrum Accelerometer", version=1, type=1, maxRange=19.6133, resolution=0.009576807, power=0.7, minDelay=10000} enableSensorOk: -1
01-01 06:36:09.106 2158 2158 D SensorManager: addSensor enableSensor{Sensor name="Devices 3-axis Accelerometer", vendor="Spreadtrum Accelerometer", version=1, type=1, maxRange=19.6133, resolution=0.009576807, power=0.7, minDelay=10000} delayUs:200000 reservedFlags:0 maxBatchReportLatencyUs:0 enableSenorOk:-1
01-01 06:36:09.106 2158 2158 D SensorManager: removeSensor sensor:{Sensor name="Devices 3-axis Accelerometer", vendor="Spreadtrum Accelerometer", version=1, type=1, maxRange=19.6133, resolution=0.009576807, power=0.7, minDelay=10000} disable:false
01-01 06:36:09.116 2158 2158 D SensorManager: registerListenerImpl add first sensor {Sensor name="Devices 3-axis Accelerometer", vendor="Spreadtrum Accelerometer", version=1, type=1, maxRange=19.6133, resolution=0.009576807, power=0.7, minDelay=10000} to listener:com.wingtech.runintest.GsensorActivity@30c581a2 result false
可以看出在enableSensor的时候返回-1
而打印正确情况下是如下的:
D/SensorManager( 2861): enableSensor {Sensor name="Devices 3-axis Accelerometer", vendor="Spreadtrum Accelerometer", version=1, type=1, maxRange=19.6133, resolution=0.009576807, power=0.7, minDelay=10000} enableSensorOk: 0
D/SensorManager( 2861): addSensor enableSensor{Sensor name="Devices 3-axis Accelerometer", vendor="Spreadtrum Accelerometer", version=1, type=1, maxRange=19.6133, resolution=0.009576807, power=0.7, minDelay=10000} delayUs:20000 reservedFlags:0 maxBatchReportLatencyUs:0 enableSenorOk:0
D/SensorManager( 2861): registerListenerImpl add first sensor {Sensor name="Devices 3-axis Accelerometer", vendor="Spreadtrum Accelerometer", version=1, type=1, maxRange=19.6133, resolution=0.009576807, power=0.7, minDelay=10000} to listener:com.sprd.validationtools.itemstest.GsensorTestActivity$2@2364efb9 result true
D/SensorManager( 2861): registerListenerImpl bind queue and listener com.sprd.validationtools.itemstest.GsensorTestActivity$2@2364efb9