Android:系统进程中的致命异常:ActivityManager



经过几个月的工作,我工作的公司上的一些安卓平板设备(根(随机得到了一个"白屏幕";启动动画之后。此外,它们中的一些在白屏幕上建立之前会重新启动几次。

对于那些正在重新启动的设备,我可以在logcat上看到它在下面的异常中停止:

D/NetlinkEvent(  167): NL subsys is 'block'
D/NetlinkEvent(  167): NL param 'DEVPATH=/devices/sprd-sdhci.3/mmc_host/mmc0/mmc0:0001/block/mmcblk0/mmcblk0p21'
D/NetlinkEvent(  167): NL param 'MAJOR=179'
D/NetlinkEvent(  167): NL param 'MINOR=21'
D/NetlinkEvent(  167): NL param 'DEVNAME=mmcblk0p21'
D/NetlinkEvent(  167): NL param 'DEVTYPE=partition'
D/NetlinkEvent(  167): NL param 'PARTN=21'
D/NetlinkEvent(  167): NL param 'PARTNAME=userdata'
I/DirectVolume(  167): ++ok_vold----in_handleBolckEvent() in_if*it:/devices/sprd-sdhci.3/mmc_host/mmc0-----
E/DirectVolume(  167): making device node '/dev/block/vold/179:21'
W/DirectVolume(  167): Ignore partition userdata
D/WCND    (  171): is_cp2_alive_ok: open polling interface: /dev/spipe_wcn0, fd = 12
D/WCND    (  171): is_cp2_alive_ok: loop: /dev/spipe_wcn0 is OK
I/Zygote  (  178): ...preloaded 1463 classes in 2501ms.
D/libEGL  (  178): loaded /system/lib/egl/libGLES_mali.so
I/Zygote  (  178): ZytoteInit preload finish
D/dalvikvm(  178): GC_EXPLICIT freed 467K, 16% free 2665K/3136K, paused 2ms+2ms, total 19ms
D/dalvikvm(  178): GC_EXPLICIT freed 4K, 16% free 2660K/3136K, paused 1ms+1ms, total 16ms
D/dalvikvm(  178): GC_EXPLICIT freed <1K, 16% free 2660K/3136K, paused 1ms+1ms, total 16ms
I/dalvikvm(  178): System server process 647 has been created
I/Zygote  (  178): Accepting command socket connections
D/SensorService(  647): nuSensorService starting...
I/SystemServer(  647): Entered the Android system server!
D/Sensors (  647): AnumSensors=1; 1
E/IAtChannel(  180): Couldn't get connection to atchannel0
D/audio_hw_primary(  180): do_cmd_dual Switch incall AT command [AT+VGR=6][ERROR]
E/audio_hw_primary(  180): do_voice_command: X
I/audio_hw_primary(  180):  voice_command_thread_entry looping done.
I/audio_hw_primary(  180):  voice_command_thread_entry looping now...
D/SDCARD  (  188): missing packages.list; retrying
D/SDCARD  (  191): missing packages.list; retrying
D/Sensors (  647): PnumSensors=2; 2
D/Sensors (  647): activate handle=0; drv=0
D/Sensors (  647): activate handle=4; drv=1
D/Sensors (  647): PlsSensor::enable en=0; newState=0; what=0; mEnabled=0
I/SensorService(  647): STK8312 3-axis Accelerometer
I/SensorService(  647): AL3006 Proximity sensor
D/SensorService(  647): Max socket buffer size 163840
D/SensorService(  647): nuSensorService thread starting...
I/installd(  181): new connection
I/SystemServer(  647): Waiting for installd to be ready.
I/Installer(  647): connecting...
I/SystemServer(  647): Power Manager
D/PowerManagerService(  647): Acquiring suspend blocker "PowerManagerService.Display".
I/SystemServer(  647): Activity Manager
W/dalvikvm(  647): threadid=14: thread exiting with uncaught exception (group=0x415e5bc0)
I/Process (  647): Sending signal. PID: 647 SIG: 9
E/installd(  181): eof
E/installd(  181): failed to read size
I/installd(  181): closing connection
I/Zygote  (  178): Exit zygote because system server (647) has terminated
E/AndroidRuntime(  647): *** FATAL EXCEPTION IN SYSTEM PROCESS: ActivityManager
E/AndroidRuntime(  647): android.content.res.Resources$NotFoundException: Resource ID #0x10e0009
E/AndroidRuntime(  647):        at android.content.res.Resources.getValue(Resources.java:1139)
E/AndroidRuntime(  647):        at android.content.res.SPRDResources.getValue(SPRDResources.java:182)
E/AndroidRuntime(  647):        at android.content.res.Resources.getInteger(Resources.java:923)
E/AndroidRuntime(  647):        at com.android.server.am.ProcessList.updateOomLevels(ProcessList.java:245)
E/AndroidRuntime(  647):        at com.android.server.am.ProcessList.<init>(ProcessList.java:179)
E/AndroidRuntime(  647):        at com.android.server.am.ActivityManagerService.<init>(ActivityManagerService.java:485)
E/AndroidRuntime(  647):        at com.android.server.am.ActivityManagerServiceEx.<init>(ActivityManagerServiceEx.java:48)
E/AndroidRuntime(  647):        at com.android.server.am.ActivityManagerService$AThread.run(ActivityManagerService.java:1955)
E/AndroidRuntime(  647): Error reporting crash
E/AndroidRuntime(  647): java.lang.NullPointerException
E/AndroidRuntime(  647):        at com.android.internal.os.RuntimeInit$UncaughtHandler.uncaughtException(RuntimeInit.java:92)
E/AndroidRuntime(  647):        at java.lang.ThreadGroup.uncaughtException(ThreadGroup.java:693)
E/AndroidRuntime(  647):        at java.lang.ThreadGroup.uncaughtException(ThreadGroup.java:690)
I/ServiceManager(  166): service 'power' died
I/ServiceManager(  166): service 'sensorservice' died
D/SDCARD  (  188): missing packages.list; retrying
D/SDCARD  (  191): missing packages.list; retrying
D/WCND    (  171): is_cp2_alive_ok: open polling interface: /dev/spipe_wcn0, fd = 12
D/WCND    (  171): is_cp2_alive_ok: loop: /dev/spipe_wcn0 is OK
D/SDCARD  (  188): missing packages.list; retrying
D/SDCARD  (  191): missing packages.list; retrying
D/SDCARD  (  188): missing packages.list; retrying
D/SDCARD  (  191): missing packages.list; retrying
D/WCND    (  171): is_cp2_alive_ok: open polling interface: /dev/spipe_wcn0, fd = 12
D/WCND    (  171): is_cp2_alive_ok: loop: /dev/spipe_wcn0 is OK
D/SDCARD  (  188): missing packages.list; retrying
D/SDCARD  (  191): missing packages.list; retrying
D/WCND    (  171): is_cp2_alive_ok: open polling interface: /dev/spipe_wcn0, fd = 12
D/WCND    (  171): is_cp2_alive_ok: loop: /dev/spipe_wcn0 is OK
D/SDCARD  (  188): missing packages.list; retrying
D/SDCARD  (  191): missing packages.list; retrying
PS C:adb>

对于那些致力于";"白屏幕";,我可以看到主要的GUI运行在白色屏幕的背面。我可以通过截图并在我的电脑上打开它来确认这一点。此外,触摸屏正在工作,我可以通过GUI的按钮选择一些功能。当我拍摄另一张屏幕截图时,也会检查这一点。

为什么ActivityManager有时会显示致命的异常?为什么当系统启动时,我只能看到一个没有任何彩色像素的空白屏幕?

提前谢谢。

对于那些有趣的人,当我在设备上重新加载Android ROM时,这个问题就解决了。我们怀疑,由于该设备直接工作了3年多,并在内部MMC内存中节省了大量日志,因此我们达到了内存周期写入限制,系统已损坏。因此,在重新加载ROM之后,设备再次开始正常工作。也许我们会用这个MMC来提供更多的";生命;对于这些设备。

最新更新