开发者

Emulator won't load 2.2 but will load 2.3

On a Windows XP system, using Eclipse 3.5, JDK 1.6.24, and the Android R10 SDK.

Like a number of others, I'm unable to get the emulator to load the home page, but this is happening only for the 2.2 image. I am able to get the emulator fully loaded and running with 2.3. I've tried waiting for a long period of time (I think 2 hours is more than enough), killing and restarting the adb server, etc.

The emulator is stuck in a reboot loop caused by the serverthread throwing a SIGSTKFLT signal. This is a signal that's not actually used by current versions of Linux but is sometimes thrown by app's to signal an application error. Unfortunately, there's no specific error message (at least that I can find) to indicate why the signal is being thrown. The pertinent part of the logcat is:

I/dalvikvm(   54): "android.server.ServerThread" prio=5 tid=7 RUNNABLE
I/dalvikvm(   54):   | group="main" sCount=0 dsCount=0 s=N obj=0x43e31da0 self=0x11c9a8
I/dalvikvm(   54):   | sysTid=69 nice=-2 sched=0/0 cgrp=default handle=1139800
I/dalvikvm(   54):   | schedstat=( 62983168741 24276655402 1105 )
I/dalvikvm(   54):   at java.lang.String.<init>(String.java:~468)
I/dalvikvm(   54):   at java.util.jar.InitManifest.readValue(InitManifest.java:205)
I/dalvikvm(   54):   at java.util.jar.InitManifest.readHeader(InitManifest.java:117)
I/dalvikvm(   54):   at java.util.jar.InitManifest.initEntries(InitManifest.java:75)
I/dalvikvm(   54):   at java.util.jar.JarVerifier.verifyCertificate(JarVerifier.java:329)
I/dalvikvm(   54):   at java.util.jar.JarVerifier.readCertificates(JarVerifier.java:272)
I/dalvikvm(   54):   at java.util.jar.JarFile.getInputStream(JarFile.java:392)
I/dalvikvm(   54):   at android.content.pm.PackageParser.loadCertificates(PackageParser.java:337)
I/dalvikvm(   54):   at android.content.pm.PackageParser.collectCertificates(PackageParser.java:480)
I/dalvikvm(   54):   at com.android.server.PackageManagerService.collectCertificatesLI(PackageManagerService.java:2535)
I/dalvikvm(   54):   at com.android.server.PackageManagerService.scanPackageLI(PackageManagerService.java:2621)
I/dalvikvm(   54):   at com.android.server.PackageManagerService.scanDirLI(PackageManagerService.java:2479)
I/dalvikvm(   54):   at com.android.server.PackageManagerService.<init>(PackageManagerService.java:920)
I/dalvikvm(   54):   at com.android.server.PackageManagerService.main(PackageManagerService.java:681)
I/dalvikvm(   54):   at com.android.server.ServerThread.run(SystemServer.java:122)
I/dalvikvm(   54): 
I/dalvikvm(   54): "Binder Thread #2" prio=5 tid=6 NATIVE
I/dalvikvm(   54):   | group="main" sCount=1 dsCount=0 s=N obj=0x43e31a50 self=0x12fc60
I/dalvikvm(   54):   | sysTid=60 nice=0 sched=0/0 cgrp=default handle=1294704
I/dalvikvm(   54):   | schedstat=( 1000041725 990947204 173 )
I/dalvikvm(   54):   at dalvik.system.NativeStart.run(Native Method)
I/dalvikvm(   54): 
I/dalvikvm(   54): "Binder Thread #1" prio=5 tid=5 NATIVE
I/dalvikvm(   54):   | group="main" sCount=1 dsCount=0 s=N obj=0x43e2f3b8 self=0x11ce48
I/dalvikvm(   54):   | sysTid=59 nice=0 sched=0/0 cgrp=default handle=1165432
I/dalvikvm(   54):   | schedstat=( 991350956 356395337 175 )
I/dalvikvm(   54):   at dalvik.system.NativeStart.run(Native Method)
I/dalvikvm(   54): 
I/dalvikvm(   54): "JDWP" daemon prio=5 tid=4 VMWAIT
I/dalvikvm(   54):   | group="system" sCount=1 dsCount=0 s=N obj=0x43e2e2a0 self=0x11c5e0
I/dalvikvm(   54):   | sysTid=58 nice=0 sched=0/0 cgrp=default handle=1146120
I/dalvikvm(   54):   | schedstat=( 9625246 195868748 7 )
I/dalvikvm(   54):   at dalvik.system.NativeStart.run(Native Method)
I/dalvikvm(   54): 
I/dalvikvm(   54): "Signal Catcher" daemon prio=5 tid=3 VMWAIT
I/dalvikvm(   54):   | group="system" sCount=1 dsCount=0 s=N obj=0x43e2e1e8 self=0x117b18
I/dalvikvm(   54):   | sysTid=57 nice=0 sched=0/0 cgrp=default handle=1145544
I/dalvikvm(   54):   | schedstat=( 4465371 1466668 2 )
I/dalvikvm(   54):   at dalvik.system.NativeStart.run(Native Method)
I/dalvikvm(   54): 
I/dalvikvm(   54): "HeapWorker" daemon prio=5 tid=2 VMWAIT
I/dalvikvm(   54):   | group="system" sCount=1 dsCount=0 s=N obj=0x4306e1e8 self=0x1178d8
I/dalvikvm(   54):   | sysTid=55 nice=0 sched=0/0 cgrp=default handle=1232848
I/dalvikvm(   54):   | schedstat=( 3618171309 20811992594 393 )
I/dalvikvm(   54):   at com.android.internal.os.BinderInternal$GcWatcher.finalize(BinderInternal.java:~48)
I/dalvikvm(   54):   at dalvik.system.NativeStart.run(Native Method)
I/dalvikvm(   54): 
D/dalvikvm(   54): threadid=7: sending two SIGSTKFLTs to threadid=2 (tid=55) to cause debuggerd dump
W/SharedBufferStack(   68): waitForCondition(DequeueCondition) timed out (identity=0, status=0). CPU may be pegged. trying again.
I/DEBUG   (   31): *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
D/dalvikvm(   54): Sent, pausing to let debuggerd run
I/DEBUG   (   31): Build fingerprint: 'generic/sdk/generic/:2.2/FRF91/43546:eng/test-keys'
I/DEBUG   (   31): pid: 54, tid: 55  >>> system_server <<<
I/DEBUG   (   31): signal 16 (SIGSTKFLT), fault addr 00000036
I/DEBUG   (   31):  r0 fffffe00  r1 00000080  r2 00000002  r3 00000000
I/DEBUG   (   31):  r4 80888fe8  r5 00000002  r6 00000000  r7 000000f0
I/DEBUG   (   31):  r8 00000001  r9 400091e8  10 80888c90  fp 001361b8
I/DEBUG   (   31):  ip 80888098  sp 100ffcd8  lr afd10530  pc afd0eb08  cpsr 80000010
I/DEBUG   (   31):          #00  pc 0000eb08  /system/lib/libc.so
I/DEBUG   (   31):          #01  pc 0001052c  /system/lib/libc.so
I/DEBUG   (   31):          #02  pc 0001b77c  /system/lib/libdvm.so
I/DEBUG   (   31):          #03  pc 0001bc20  /system/lib/libdvm.so
I/DEBUG   (   31):          #04  pc 00048ece  /system/lib/libdvm.so
I/DEBUG   (   31):          #05  pc 000143ac  /system/lib/libdvm.so
I/DEBUG   (   31):          #06  pc 0001e8c4  /system/lib/libdvm.so
I/DEBUG   (   31):          #07  pc 0001d790  /system/lib/libdvm.so
I/DEBUG   (   31):          #08  pc 00053eec  /system/lib/libdvm.so
I/DEBUG   (   31):          #09  pc 00054102  /system/lib/libdvm.so
I/DEBUG   (   31):          #10  pc 0004a550  /system/lib/libdvm.so
I/DEBUG   (   31):          #11  pc 0004a5ea  /system/lib/libdvm.so
I/DEBUG   (   31):          #12  pc 0004aada  /system/lib/libdvm.so
I/DEBUG   (   31):          #13  pc 00048174  /system/lib/libdvm.so
I/DEBUG   (   31):          #14  pc 0001103c  /system/lib/libc.so
I/DEBUG   (   31):          #15  pc 00010b20  /system/lib/libc.so
I/DEBUG   (   31): 
I/DEBUG   (   31): code around pc:
I/DEBUG   (   31): afd0eae8 0afffff7 e8bd4010 e12fff1e e1010090 
I/DEBUG   (   31): afd0eaf8 e12fff1e e92d0090 e3a070f0 ef000000 
I/DEBUG   (   31): afd0eb08 e8bd0090 e12fff1e e92d0090 e1a03002 
I/DEBUG   (   31): afd0eb18 e1a02001 e3a01000 e3a070f0 ef000000 
I/DEBUG   (   31): afd0eb28 e8bd0090 e12fff1e e92d0090 e1a02001 
I/DEBUG   (   31): 
I/DEBUG   (   31): code around lr:
I/DEBUG   (   31): afd10510 e3500000 0a00000e e3560000 03a07080 
I/DEBUG   (   31): afd10520 13a07000 e3865002 ea000000 ebfff986 
I/DEBUG   (   31): afd10530 e1a01004 e1a00005 ebfff96d e1560000 
I/DEBUG   (   31): afd10540 e1a01007 e1a00004 e1a02005 e3a03000 
I/DEBUG   (   31): afd10550 1afffff5 开发者_JS百科e3a00000 e8bd87f0 e3a00016 
I/DEBUG   (   31): 
I/DEBUG   (   31): stack:
I/DEBUG   (   31):     100ffc98  100ffcf8  
I/DEBUG   (   31):     100ffc9c  00000003  
I/DEBUG   (   31):     100ffca0  423bbb71  /data/dalvik-cache/system@framework@framework.jar@classes.dex
I/DEBUG   (   31):     100ffca4  4103afa8  
I/DEBUG   (   31):     100ffca8  100ffcd8  
I/DEBUG   (   31):     100ffcac  4103afa0  
I/DEBUG   (   31):     100ffcb0  4103af8c  
I/DEBUG   (   31):     100ffcb4  afd34300  /system/lib/libc.so
I/DEBUG   (   31):     100ffcb8  100ffcc0  
I/DEBUG   (   31):     100ffcbc  a811ad81  /system/lib/libutils.so
I/DEBUG   (   31):     100ffcc0  000497bc  [heap]
I/DEBUG   (   31):     100ffcc4  00000000  
I/DEBUG   (   31):     100ffcc8  100ffcf8  
I/DEBUG   (   31):     100ffccc  ad33e4ef  /system/lib/libandroid_runtime.so
I/DEBUG   (   31):     100ffcd0  df002777  
I/DEBUG   (   31):     100ffcd4  e3a070ad  
I/DEBUG   (   31): #00 100ffcd8  80888fe8  /system/lib/libdvm.so
I/DEBUG   (   31):     100ffcdc  00000080  
I/DEBUG   (   31): #01 100ffce0  80888fe8  /system/lib/libdvm.so
I/DEBUG   (   31):     100ffce4  00000001  
I/DEBUG   (   31):     100ffce8  001178d8  [heap]
I/DEBUG   (   31):     100ffcec  00000022  
I/DEBUG   (   31):     100ffcf0  00000018  
I/DEBUG   (   31):     100ffcf4  400091e8  /dev/ashmem/mspace/dalvik-heap/zygote/0 (deleted)
I/DEBUG   (   31):     100ffcf8  80888c90  /system/lib/libdvm.so
I/DEBUG   (   31):     100ffcfc  8081b780  /system/lib/libdvm.so
D/dalvikvm(   54): Continuing
E/dalvikvm(   54): VM aborting
I/ServiceManager(   28): service 'batteryinfo' died
I/ServiceManager(   28): service 'entropy' died
I/ServiceManager(   28): service 'SurfaceFlinger' died
I/ServiceManager(   28): service 'usagestats' died
I/ServiceManager(   28): service 'power' died
I/ServiceManager(   28): service 'telephony.registry' died
D/BootAnimation(   68): SurfaceFlinger died, exiting...
I/DEBUG   (   31): debuggerd committing suicide to free the zombie!
D/Zygote  (   33): Process 54 terminated by signal (11)
I/Zygote  (   33): Exit zygote because system server (54) has terminated
E/installd(   35): eof
E/installd(   35): failed to read size
I/installd(   35): closing connection
I/ServiceManager(   28): service 'media.audio_flinger' died
I/ServiceManager(   28): service 'media.player' died
I/ServiceManager(   28): service 'media.camera' died
I/ServiceManager(   28): service 'media.audio_policy' died
I/        (   80): ServiceManager: 0xacd0
D/AudioHardwareInterface(   80): setMode(NORMAL)
I/DEBUG   (   81): debuggerd: Jun 30 2010 13:59:20
D/AndroidRuntime(   82): 
D/AndroidRuntime(   82): >>>>>>>>>>>>>> AndroidRuntime START <<<<<<<<<<<<<<
D/AndroidRuntime(   82): CheckJNI is ON
D/AndroidRuntime(   82): --- registering native functions ---

And then the whole thing runs through in an infinite loop of start/fault/dump/restart. I don't think this is a showstopper for me as I can target in 2.2 and run 2.3 in the emulator till it's time to load on a real 2.2 device. But it's something of an annoyance.

UPDATE

I was able to partially load froyo outside of eclipse using the command line. Starting it with "emulator @froyo -no-boot-anim -logcat '*:v'" it loaded as far as showing the top bar with the battery indicator. Omitting the logcat switch it started as far as showing the background before crashing. This looks more and more like a timing issue.

This is also now just happening on a laptop. When installed on one of my desktops Froyo comes up and is working. Both have the same speed CPU, but the laptop is a P4 2.2ghz with 1G memory and the desktop is a dual Xeon 2.2 with 2Gb memory. Both have similar application and service loads.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜