我正在ART运行时测试我的应用程序并想出了一个奇怪的模式:
如果我在Dalvik上安装应用程序,然后设置 ART(开发人员设置),手机会重新启动并花时间(编译?)所有应用程序,包括我的的。这样我的应用程序可以完美运行很长时间。
相反,如果我已经使用ART并使用 Eclipse 上传新版本(正常开发“播放项目”),则该应用程序确实不稳定,并且在启动后出现分段错误,如下面所附;该应用程序确实启动了,但它崩溃了几秒钟!
我注意到堆栈跟踪中有很多与 Dalvik 相关的函数。通过 Eclipse 推送的(调试模式)应用程序是否有可能跳过编译步骤或类似的步骤?
我正在使用 Android 4.4.4 (Cyanogen/11)
/libc (30412): Fatal signal 11 (SIGSEGV) at 0x00000ebe (code=1), thread 30412 (tv.nebular.funq)
I/DEBUG ( 217): *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
I/DEBUG ( 217): Build fingerprint: 'samsung/jfltexx/jflte:4.2.2/JDQ39/I9505XXUAMDE:user/release-keys'
I/DEBUG ( 217): Revision: '11'
I/DEBUG ( 217): pid: 30412, tid: 30412, name: tv.nebular.funq >>> tv.nebular.funq <<<
I/DEBUG ( 217): signal 11 (SIGSEGV), code 1 (SEGV_MAPERR), fault addr 00000ebe
I/DEBUG ( 217): r0 64c0c2b8 r1 00000eb2 r2 00000000 r3 80000000
I/DEBUG ( 217): r4 0000021b r5 00000eb2 r6 ffffffff r7 ffffffff
I/DEBUG ( 217): r8 00000000 r9 416fec58 sl 00000000 fp ffffffff
I/DEBUG ( 217): ip be7e9000 sp befe3c08 lr befe3c08 pc 4939f7e4 cpsr 20030030
I/DEBUG ( 217):
I/DEBUG ( 217): backtrace:
I/DEBUG ( 217): #00 pc 0042e7e4 /data/dalvik-cache/data@app@tv.nebular.funq-1.apk@classes.dex
I/DEBUG ( 217): #01 pc 0001fc04 [stack]
I/DEBUG ( 217):
I/DEBUG ( 217): stack:
I/DEBUG ( 217): befe3bc8 6511da18 /dev/ashmem/dalvik-alloc space (deleted)
I/DEBUG ( 217): befe3bcc 6007c4a0 /data/dalvik-cache/system@framework@boot.art
I/DEBUG ( 217): befe3bd0 6511da18 /dev/ashmem/dalvik-alloc space (deleted)
I/DEBUG ( 217): befe3bd4 6252671b /data/dalvik-cache/system@framework@boot.oat
I/DEBUG ( 217): befe3bd8 6007c4a0 /data/dalvik-cache/system@framework@boot.art
I/DEBUG ( 217): befe3be4 625a6205 /data/dalvik-cache/system@framework@boot.oat
I/DEBUG ( 217): befe3be8 600abf28 /data/dalvik-cache/system@framework@boot.art
I/DEBUG ( 217): befe3bec 65124348 /dev/ashmem/dalvik-alloc space (deleted)
I/DEBUG ( 217): befe3bf0 65124348 /dev/ashmem/dalvik-alloc space (deleted)
I/DEBUG ( 217): befe3bf4 60037220 /data/dalvik-cache/system@framework@boot.art
I/DEBUG ( 217): befe3bf8 65124348 /dev/ashmem/dalvik-alloc space (deleted)