最近遇到一个应用闪退的问题,开始发现问题时没有找到明显的问题复现步骤,单独操作应用里的所有功能都没有发生该问题,而一旦进行煲机测试半小时后出现了。光从应用层的log也分析不出问题的原因来,这个问题拖了很长一段时间,真是惭愧!煲机的业务逻辑是通过PC程序循环发送指令到车机板子上,控制车机上的测试程序,调起测试case执行硬件模块的测试。
问题分析
分析该问题发生时的log文件,与我的应用有关的log内容主要是正常的业务打印,直到在crash log部分最后有一段包含了我的进程名的内容,这些log信息甚是可疑!
03-03 17:22:16.053 9320 9320 D TestCaseManager: enqueueCase: {mTitle:GPS, mID:GPS, mTestQueueType:OTHER}
03-03 17:22:16.053 9320 9320 D TestCase: secureStart() mStatus=PASS, mID=GPS
03-03 17:22:16.053 9320 9320 V TestCaseManager: onTestResult id:GPS, status:TESTING
03-03 17:22:16.053 9320 9320 D TestCase: secureStart()->invoke the start() of testcase GPS
03-03 17:22:16.055 9320 9320 W zygote64: ashmem_create_region failed for 'indirect ref table': Too many open files
03-03 17:22:16.056 9320 10862 F Looper : Could not make wake event fd: Too many open files
03-03 17:22:16.057 9320 9320 I GpsUtils: isProviderEnabled:true
03-03 17:22:16.057 598 676 D SocketMoudle: connect: bind failed, try
03-03 17:22:16.138 598 676 D SocketMoudle: connect: bind failed, try
03-03 17:22:16.205 888 961 W DCS_SocketMoudle: connect: accept() error, mCurSockFd=-1, errno=11
03-03 17:22:16.205 888 961 W CanDataProc: rxThread: socket connect retVal: -1
03-03 17:22:16.218 598 676 D SocketMoudle: connect: bind failed, try
03-03 17:22:16.275 10865 10865 I crash_dump64: obtaining output fd from tombstoned, type: kDebuggerdTombstone
03-03 17:22:16.276 936 936 I /system/bin/tombstoned: received crash request for pid 9320
03-03 17:22:16.277 10865 10865 I crash_dump64: performing dump of process 9320 (target tid = 10862)
03-03 17:22:16.277 10865 10865 I crash_dump64: engrave_tombstone
03-03 17:22:16.277 10865 10865 D DEBUG : enter engrave_tombstone
03-03 17:22:16.278 10865 10865 F DEBUG : *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
03-03 17:22:16.278 10865 10865 F DEBUG : Build fingerprint: 'M01_AE-userdebug-M01.CHJ.A81.M.200225.205'
03-03 17:22:16.278 10865 10865 F DEBUG : Revision: '0'
03-03 17:22:16.278 10865 10865 F DEBUG : ABI: 'arm64'
03-03 17:22:16.278 10865 10865 F DEBUG : pid: 9320, tid: 10862, name: Gps-Handler >>> com.xxx.car.vehicleeol > com.xxx.car.vehicleeol |