Android rom开发:app运行异常,报libc: Fatal signal 11 (SIGSEGV) in tid xxx错误_permission check result is: 601-程序员宅基地

技术标签: android rom开发  

最近遇到了app在设备上反复挂掉的问题。log如下:

2020-03-07 13:20:24.814 16858-16858/? E/SharedPreferencesImpl: Couldn't create directory for SharedPreferences file /data/user/0/com.hello.test/shared_prefs/authStatus_com.hello.test��������������������������������������������������������������������������������������������������������������������������.xml
2020-03-07 13:20:24.814 16858-16858/? E/PermissionCheck: permission check result is: 601
2020-03-07 13:20:24.845 16858-16858/? I/BaiduApiAuth: BaiduApiAuth SDK Version:1.0.23.20190613
2020-03-07 13:20:24.852 16858-16876/? D/NetworkSecurityConfig: No Network Security Config specified, using platform default
2020-03-07 13:20:24.853 16858-16876/? I/DpmTcmClient: RegisterTcmMonitor from: com.android.okhttp.TcmIdleTimerMonitor
2020-03-07 13:20:25.169 3865-4680/? D/GraphicsStats: Buffer count: 3
2020-03-07 13:20:25.170 3865-5763/? I/ActivityManager: Process com.hello.test (pid 16858) has died
2020-03-07 13:20:25.170 3865-5763/? D/ActivityManager: cleanUpApplicationRecord -- 16858
2020-03-07 13:20:25.175 497-497/? I/Zygote: Process 16858 exited due to signal (11)
2020-03-07 13:20:25.191 3865-5763/? I/ActivityManager: Start proc 16887:com.hello.test/u0a74 for activity com.hello.test/com.baidu.track.activity.SplashActivity
2020-03-07 13:20:25.192 3865-5763/? V/BoostFramework: BoostFramework() : mPerf = com.qualcomm.qti.Performance@9494711
2020-03-07 13:20:25.305 16887-16887/? I/BaiduApiAuth: BaiduApiAuth SDK Version:1.0.23
2020-03-07 13:20:25.319 16887-16887/? E/SharedPreferencesImpl: Couldn't create directory for SharedPreferences file /data/user/0/com.hello.test/shared_prefs/authStatus_com.hello.test��������������������������������������������������������������������������������������������������������������������������.xml
2020-03-07 13:20:25.319 16887-16887/? E/PermissionCheck: permission check result is: 601
2020-03-07 13:20:25.354 16887-16887/? I/BaiduApiAuth: BaiduApiAuth SDK Version:1.0.23.20190613
2020-03-07 13:20:25.356 16887-16905/? D/NetworkSecurityConfig: No Network Security Config specified, using platform default
2020-03-07 13:20:25.357 16887-16905/? I/DpmTcmClient: RegisterTcmMonitor from: com.android.okhttp.TcmIdleTimerMonitor
2020-03-07 13:20:25.521 3865-5046/? I/ActivityManager: Process com.hello.test (pid 16887) has died
2020-03-07 13:20:25.521 3865-5046/? D/ActivityManager: cleanUpApplicationRecord -- 16887
2020-03-07 13:20:25.525 497-497/? I/Zygote: Process 16887 exited due to signal (11)
2020-03-07 13:20:25.549 3865-5046/? I/ActivityManager: Start proc 16914:com.hello.test/u0a74 for activity com.hello.test/com.baidu.track.activity.SplashActivity
2020-03-07 13:20:25.549 3865-5046/? V/BoostFramework: BoostFramework() : mPerf = com.qualcomm.qti.Performance@26c7677
2020-03-07 13:20:25.651 16914-16914/? I/BaiduApiAuth: BaiduApiAuth SDK Version:1.0.23
2020-03-07 13:20:25.666 16914-16914/? E/SharedPreferencesImpl: Couldn't create directory for SharedPreferences file /data/user/0/com.hello.test/shared_prefs/authStatus_com.hello.test��������������������������������������������������������������������������������������������������������������������������.xml
2020-03-07 13:20:25.666 16914-16914/? E/PermissionCheck: permission check result is: 601
2020-03-07 13:20:25.698 16914-16914/? I/BaiduApiAuth: BaiduApiAuth SDK Version:1.0.23.20190613
2020-03-07 13:20:25.701 16914-16932/? D/NetworkSecurityConfig: No Network Security Config specified, using platform default
2020-03-07 13:20:25.704 16914-16932/? I/DpmTcmClient: RegisterTcmMonitor from: com.android.okhttp.TcmIdleTimerMonitor
2020-03-07 13:20:25.917 3865-4875/? I/ActivityManager: Process com.hello.test (pid 16914) has died
2020-03-07 13:20:25.917 3865-4875/? D/ActivityManager: cleanUpApplicationRecord -- 16914
2020-03-07 13:20:25.920 497-497/? I/Zygote: Process 16914 exited due to signal (11)
2020-03-07 13:20:25.940 3865-4875/? I/ActivityManager: Start proc 16941:com.hello.test/u0a74 for activity com.hello.test/com.baidu.track.activity.SplashActivity
2020-03-07 13:20:25.940 3865-4875/? V/BoostFramework: BoostFramework() : mPerf = com.qualcomm.qti.Performance@6ea434d
2020-03-07 13:20:26.059 16941-16941/? I/BaiduApiAuth: BaiduApiAuth SDK Version:1.0.23
2020-03-07 13:20:26.072 16941-16941/? E/SharedPreferencesImpl: Couldn't create directory for SharedPreferences file /data/user/0/com.hello.test/shared_prefs/authStatus_com.hello.test��������������������������������������������������������������������������������������������������������������������������.xml
2020-03-07 13:20:26.073 16941-16941/? E/PermissionCheck: permission check result is: 601
2020-03-07 13:20:26.105 16941-16941/? I/BaiduApiAuth: BaiduApiAuth SDK Version:1.0.23.20190613
2020-03-07 13:20:26.107 16941-16959/? D/NetworkSecurityConfig: No Network Security Config specified, using platform default
2020-03-07 13:20:26.109 16941-16959/? I/DpmTcmClient: RegisterTcmMonitor from: com.android.okhttp.TcmIdleTimerMonitor
2020-03-07 13:20:26.280 3865-5046/? I/ActivityManager: Process com.hello.test (pid 16941) has died
2020-03-07 13:20:26.280 3865-5046/? D/ActivityManager: cleanUpApplicationRecord -- 16941
2020-03-07 13:20:26.287 497-497/? I/Zygote: Process 16941 exited due to signal (11)
2020-03-07 13:20:26.316 3865-5046/? I/ActivityManager: Start proc 16968:com.hello.test/u0a74 for activity com.hello.test/com.baidu.track.activity.SplashActivity
2020-03-07 13:20:26.317 3865-5046/? V/BoostFramework: BoostFramework() : mPerf = com.qualcomm.qti.Performance@7280313
2020-03-07 13:20:26.426 16968-16968/? I/BaiduApiAuth: BaiduApiAuth SDK Version:1.0.23
2020-03-07 13:20:26.440 16968-16968/? E/SharedPreferencesImpl: Couldn't create directory for SharedPreferences file /data/user/0/com.hello.test/shared_prefs/authStatus_com.hello.test��������������������������������������������������������������������������������������������������������������������������.xml
2020-03-07 13:20:26.441 16968-16968/? E/PermissionCheck: permission check result is: 601
2020-03-07 13:20:26.474 16968-16986/? D/NetworkSecurityConfig: No Network Security Config specified, using platform default
2020-03-07 13:20:26.474 16968-16986/? I/DpmTcmClient: RegisterTcmMonitor from: com.android.okhttp.TcmIdleTimerMonitor
2020-03-07 13:20:26.475 16968-16968/? I/BaiduApiAuth: BaiduApiAuth SDK Version:1.0.23.20190613
    
    --------- beginning of crash
2020-03-07 13:20:26.565 16968-16986/? A/libc: Fatal signal 11 (SIGSEGV) in tid 16986 (Thread-2)
2020-03-07 13:20:26.582 4929-4929/? D/wpa_supplicant: wlan0: Control interface command 'SIGNAL_POLL'
2020-03-07 13:20:26.585 4929-4929/? D/wpa_supplicant: CTRL-DEBUG: global_ctrl_sock-sendto: sock=8 sndbuf=163840 outq=0 send_len=48
2020-03-07 13:20:26.673 16995-16995/? A/DEBUG: *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
2020-03-07 13:20:26.673 16995-16995/? A/DEBUG: Build fingerprint: 'qcom/msm8909/msm8909:7.1.2/N2G47H/7.20.0306.01:user/release-keys'
2020-03-07 13:20:26.673 16995-16995/? A/DEBUG: Revision: '0'
2020-03-07 13:20:26.673 16995-16995/? A/DEBUG: ABI: 'arm'
2020-03-07 13:20:26.673 16995-16995/? A/DEBUG: pid: 16968, tid: 16986, name: Thread-2  >>> com.hello.test <<<
2020-03-07 13:20:26.673 16995-16995/? A/DEBUG: signal 11 (SIGSEGV), code 0 (SI_USER), fault addr 0x4248
2020-03-07 13:20:26.673 16995-16995/? A/DEBUG:     r0 70a3d8a8  r1 00000000  r2 00000002  r3 91082700
2020-03-07 13:20:26.674 16995-16995/? A/DEBUG:     r4 910826fc  r5 00000000  r6 00000001  r7 91082640
2020-03-07 13:20:26.674 16995-16995/? A/DEBUG:     r8 00100015  r9 910826a4  sl 91082700  fp 910826bc
2020-03-07 13:20:26.674 16995-16995/? A/DEBUG:     ip 91082624  sp 91082558  lr a8928fd1  pc a8928fd2  cpsr 000a0030
2020-03-07 13:20:27.746 16995-16995/? A/DEBUG: backtrace:
2020-03-07 13:20:27.746 16995-16995/? A/DEBUG:     #00 pc 00316fd2  /system/lib/libart.so (_ZN3art12InvokeMethodERKNS_33ScopedObjectAccessAlreadyRunnableEP8_jobjectS4_S4_j+69)
2020-03-07 13:20:27.747 16995-16995/? A/DEBUG:     #01 pc 002b51f9  /system/lib/libart.so (_ZN3artL24Constructor_newInstance0EP7_JNIEnvP8_jobjectP13_jobjectArray+868)
2020-03-07 13:20:27.747 16995-16995/? A/DEBUG:     #02 pc 005aaee5  /system/framework/arm/boot-core-oj.oat (offset 0x51b000) (java.lang.reflect.Constructor.newInstance0+96)
2020-03-07 13:20:27.747 16995-16995/? A/DEBUG:     #03 pc 005ab929  /system/framework/arm/boot-core-oj.oat (offset 0x51b000) (java.lang.reflect.Constructor.newInstance+52)
2020-03-07 13:20:27.747 16995-16995/? A/DEBUG:     #04 pc 007e2e4d  /system/framework/arm/boot-core-oj.oat (offset 0x51b000) (sun.security.x509.X500Name.asX500Principal+88)
2020-03-07 13:20:27.747 16995-16995/? A/DEBUG:     #05 pc 007eb9ad  /system/framework/arm/boot-core-oj.oat (offset 0x51b000) (sun.security.x509.X509CertInfo.getX500Name+168)
2020-03-07 13:20:27.747 16995-16995/? A/DEBUG:     #06 pc 007ecffb  /system/framework/arm/boot-core-oj.oat (offset 0x51b000) (sun.security.x509.X509CertInfo.get+438)
2020-03-07 13:20:27.747 16995-16995/? A/DEBUG:     #07 pc 007ea16b  /system/framework/arm/boot-core-oj.oat (offset 0x51b000) (sun.security.x509.X509CertImpl.getSubjectX500Principal+70)
2020-03-07 13:20:27.747 16995-16995/? A/DEBUG:     #08 pc 007e6199  /system/framework/arm/boot-core-oj.oat (offset 0x51b000) (sun.security.x509.X509CertImpl.isSelfIssued+36)
2020-03-07 13:20:27.747 16995-16995/? A/DEBUG:     #09 pc 0079f2c3  /system/framework/arm/boot-core-oj.oat (offset 0x51b000) (sun.security.provider.certpath.PolicyChecker.mergeExplicitPolicy+70)
2020-03-07 13:20:27.748 16995-16995/? A/DEBUG:     #10 pc 0079efc5  /system/framework/arm/boot-core-oj.oat (offset 0x51b000) (sun.security.provider.certpath.PolicyChecker.checkPolicy+1008)
2020-03-07 13:20:27.748 16995-16995/? A/DEBUG:     #11 pc 007a1db7  /system/framework/arm/boot-core-oj.oat (offset 0x51b000) (sun.security.provider.certpath.PolicyChecker.check+74)
2020-03-07 13:20:27.748 16995-16995/? A/DEBUG:     #12 pc 0079e67d  /system/framework/arm/boot-core-oj.oat (offset 0x51b000) (sun.security.provider.certpath.PKIXMasterCertPathValidator.validate+1168)
2020-03-07 13:20:27.748 16995-16995/? A/DEBUG:     #13 pc 0079db3b  /system/framework/arm/boot-core-oj.oat (offset 0x51b000) (sun.security.provider.certpath.PKIXCertPathValidator.validate+1318)
2020-03-07 13:20:27.748 16995-16995/? A/DEBUG:     #14 pc 0079df97  /system/framework/arm/boot-core-oj.oat (offset 0x51b000) (sun.security.provider.certpath.PKIXCertPathValidator.validate+938)
2020-03-07 13:20:27.748 16995-16995/? A/DEBUG:     #15 pc 0079e16d  /system/framework/arm/boot-core-oj.oat (offset 0x51b000) (sun.security.provider.certpath.PKIXCertPathValidator.engineValidate+64)
2020-03-07 13:20:27.748 16995-16995/? A/DEBUG:     #16 pc 0062513b  /system/framework/arm/boot-core-oj.oat (offset 0x51b000) (java.security.cert.CertPathValidator.validate+46)
2020-03-07 13:20:27.748 16995-16995/? A/DEBUG:     #17 pc 000a4503  /system/framework/arm/boot-conscrypt.oat (offset 0x6c000) (com.android.org.conscrypt.TrustManagerImpl.verifyChain+1070)
2020-03-07 13:20:27.748 16995-16995/? A/DEBUG:     #18 pc 000a3b6d  /system/framework/arm/boot-conscrypt.oat (offset 0x6c000) (com.android.org.conscrypt.TrustManagerImpl.checkTrustedRecursive+2216)
2020-03-07 13:20:27.748 16995-16995/? A/DEBUG:     #19 pc 000a3541  /system/framework/arm/boot-conscrypt.oat (offset 0x6c000) (com.android.org.conscrypt.TrustManagerImpl.checkTrustedRecursive+636)
2020-03-07 13:20:27.749 16995-16995/? A/DEBUG:     #20 pc 000a3827  /system/framework/arm/boot-conscrypt.oat (offset 0x6c000) (com.android.org.conscrypt.TrustManagerImpl.checkTrustedRecursive+1378)
2020-03-07 13:20:27.749 16995-16995/? A/DEBUG:     #21 pc 000a30a5  /system/framework/arm/boot-conscrypt.oat (offset 0x6c000) (com.android.org.conscrypt.TrustManagerImpl.checkTrusted+416)
2020-03-07 13:20:27.749 16995-16995/? A/DEBUG:     #22 pc 000a328f  /system/framework/arm/boot-conscrypt.oat (offset 0x6c000) (com.android.org.conscrypt.TrustManagerImpl.checkTrusted+346)
2020-03-07 13:20:27.749 16995-16995/? A/DEBUG:     #23 pc 000a4cf5  /system/framework/arm/boot-conscrypt.oat (offset 0x6c000) (com.android.org.conscrypt.TrustManagerImpl.getTrustedChainForServer+136)
2020-03-07 13:20:27.749 16995-16995/? A/DEBUG:     #24 pc 01cc7f63  /system/framework/arm/boot-framework.oat (offset 0x15c1000) (android.security.net.config.NetworkSecurityTrustManager.checkServerTrusted+54)
2020-03-07 13:20:27.749 16995-16995/? A/DEBUG:     #25 pc 01cc8b17  /system/framework/arm/boot-framework.oat (offset 0x15c1000) (android.security.net.config.RootTrustManager.checkServerTrusted+250)
2020-03-07 13:20:27.749 16995-16995/? A/DEBUG:     #26 pc 0009d79d  /system/framework/arm/boot-conscrypt.oat (offset 0x6c000) (com.android.org.conscrypt.Platform.checkServerTrusted+248)
2020-03-07 13:20:27.749 16995-16995/? A/DEBUG:     #27 pc 00096e31  /system/framework/arm/boot-conscrypt.oat (offset 0x6c000) (com.android.org.conscrypt.OpenSSLSocketImpl.verifyCertificateChain+540)
2020-03-07 13:20:27.749 16995-16995/? A/DEBUG:     #28 pc 000a99c1  /system/lib/libart.so (art_quick_invoke_stub_internal+64)
2020-03-07 13:20:27.749 16995-16995/? A/DEBUG:     #29 pc 004052f1  /system/lib/libart.so (art_quick_invoke_stub+232)
2020-03-07 13:20:27.749 16995-16995/? A/DEBUG:     #30 pc 000b0c55  /system/lib/libart.so (_ZN3art9ArtMethod6InvokeEPNS_6ThreadEPjjPNS_6JValueEPKc+136)
2020-03-07 13:20:27.750 16995-16995/? A/DEBUG:     #31 pc 00315ef9  /system/lib/libart.so (_ZN3artL18InvokeWithArgArrayERKNS_33ScopedObjectAccessAlreadyRunnableEPNS_9ArtMethodEPNS_8ArgArrayEPNS_6JValueEPKc+56)
2020-03-07 13:20:27.750 16995-16995/? A/DEBUG:     #32 pc 00316ea9  /system/lib/libart.so (_ZN3art35InvokeVirtualOrInterfaceWithVarArgsERKNS_33ScopedObjectAccessAlreadyRunnableEP8_jobjectP10_jmethodIDSt9__va_list+256)
2020-03-07 13:20:27.750 16995-16995/? A/DEBUG:     #33 pc 0026a051  /system/lib/libart.so (_ZN3art3JNI15CallVoidMethodVEP7_JNIEnvP8_jobjectP10_jmethodIDSt9__va_list+444)
2020-03-07 13:20:27.750 16995-16995/? A/DEBUG:     #34 pc 0001193d  /system/lib/libjavacrypto.so
2020-03-07 13:20:27.750 16995-16995/? A/DEBUG:     #35 pc 00011ef9  /system/lib/libjavacrypto.so
2020-03-07 13:20:27.750 16995-16995/? A/DEBUG:     #36 pc 00016ed7  /system/lib/libssl.so
2020-03-07 13:20:27.750 16995-16995/? A/DEBUG:     #37 pc 0000fed5  /system/lib/libssl.so
2020-03-07 13:20:27.750 16995-16995/? A/DEBUG:     #38 pc 0000f093  /system/lib/libssl.so
2020-03-07 13:20:27.750 16995-16995/? A/DEBUG:     #39 pc 0000e8e9  /system/lib/libjavacrypto.so
2020-03-07 13:20:27.750 16995-16995/? A/DEBUG:     #40 pc 0007989f  /system/framework/arm/boot-conscrypt.oat (offset 0x6c000) (com.android.org.conscrypt.NativeCrypto.SSL_do_handshake+210)
2020-03-07 13:20:27.750 16995-16995/? A/DEBUG:     #41 pc 00096575  /system/framework/arm/boot-conscrypt.oat (offset 0x6c000) (com.android.org.conscrypt.OpenSSLSocketImpl.startHandshake+1072)
2020-03-07 13:20:27.750 16995-16995/? A/DEBUG:     #42 pc 0008c013  /system/framework/arm/boot-okhttp.oat (offset 0x86000) (com.android.okhttp.Connection.connectTls+398)
2020-03-07 13:20:27.750 16995-16995/? A/DEBUG:     #43 pc 0008bd6d  /system/framework/arm/boot-okhttp.oat (offset 0x86000) (com.android.okhttp.Connection.connectSocket+184)
2020-03-07 13:20:27.751 16995-16995/? A/DEBUG:     #44 pc 0008d043  /system/framework/arm/boot-okhttp.oat (offset 0x86000) (com.android.okhttp.Connection.connect+678)
2020-03-07 13:20:27.751 16995-16995/? A/DEBUG:     #45 pc 0008d2ab  /system/framework/arm/boot-okhttp.oat (offset 0x86000) (com.android.okhttp.Connection.connectAndSetOwner+190)
2020-03-07 13:20:27.751 16995-16995/? A/DEBUG:     #46 pc 0009b949  /system/framework/arm/boot-okhttp.oat (offset 0x86000) (com.android.okhttp.OkHttpClient$1.connectAndSetOwner+52)
2020-03-07 13:20:27.751 16995-16995/? A/DEBUG:     #47 pc 000b066b  /system/framework/arm/boot-okhttp.oat (offset 0x86000) (com.android.okhttp.internal.http.HttpEngine.connect+334)
2020-03-07 13:20:27.751 16995-16995/? A/DEBUG:     #48 pc 000b2df3  /system/framework/arm/boot-okhttp.oat (offset 0x86000) (com.android.okhttp.internal.http.HttpEngine.sendRequest+462)
2020-03-07 13:20:27.751 16995-16995/? A/DEBUG:     #49 pc 000b8bd5  /system/framework/arm/boot-okhttp.oat (offset 0x86000) (com.android.okhttp.internal.huc.HttpURLConnectionImpl.execute+128)
2020-03-07 13:20:27.751 16995-16995/? A/DEBUG:     #50 pc 000b9deb  /system/framework/arm/boot-okhttp.oat (offset 0x86000) (com.android.okhttp.internal.huc.HttpURLConnectionImpl.connect+54)
2020-03-07 13:20:27.751 16995-16995/? A/DEBUG:     #51 pc 000ba44f  /system/framework/arm/boot-okhttp.oat (offset 0x86000) (com.android.okhttp.internal.huc.HttpURLConnectionImpl.getOutputStream+42)
2020-03-07 13:20:27.751 16995-16995/? A/DEBUG:     #52 pc 000b8005  /system/framework/arm/boot-okhttp.oat (offset 0x86000) (com.android.okhttp.internal.huc.DelegatingHttpsURLConnection.getOutputStream+40)
2020-03-07 13:20:27.751 16995-16995/? A/DEBUG:     #53 pc 000bbe0f  /system/framework/arm/boot-okhttp.oat (offset 0x86000) (com.android.okhttp.internal.huc.HttpsURLConnectionImpl.getOutputStream+42)
2020-03-07 13:20:27.751 16995-16995/? A/DEBUG:     #54 pc 000a99c1  /system/lib/libart.so (art_quick_invoke_stub_internal+64)
2020-03-07 13:20:27.752 16995-16995/? A/DEBUG:     #55 pc 004052f1  /system/lib/libart.so (art_quick_invoke_stub+232)
2020-03-07 13:20:27.752 16995-16995/? A/DEBUG:     #56 pc 000b0c55  /system/lib/libart.so (_ZN3art9ArtMethod6InvokeEPNS_6ThreadEPjjPNS_6JValueEPKc+136)
2020-03-07 13:20:27.752 16995-16995/? A/DEBUG:     #57 pc 001ed0d5  /system/lib/libart.so (_ZN3art11interpreter34ArtInterpreterToCompiledCodeBridgeEPNS_6ThreadEPNS_9ArtMethodEPKNS_7DexFile8CodeItemEPNS_11ShadowFrameEPNS_6JValueE+200)
2020-03-07 13:20:27.752 16995-16995/? A/DEBUG:     #58 pc 001e7685  /system/lib/libart.so (_ZN3art11interpreter6DoCallILb0ELb0EEEbPNS_9ArtMethodEPNS_6ThreadERNS_11ShadowFrameEPKNS_11InstructionEtPNS_6JValueE+492)
2020-03-07 13:20:27.752 16995-16995/? A/DEBUG:     #59 pc 003ff76b  /system/lib/libart.so (MterpInvokeVirtualQuick+322)
2020-03-07 13:20:27.752 16995-16995/? A/DEBUG:     #60 pc 000a0594  /system/lib/libart.so (ExecuteMterpImpl+29972)
2020-03-07 13:20:27.752 16995-16995/? A/DEBUG:     #61 pc 001ca9af  /system/lib/libart.so (_ZN3art11interpreterL7ExecuteEPNS_6ThreadEPKNS_7DexFile8CodeItemERNS_11ShadowFrameENS_6JValueEb+290)
2020-03-07 13:20:27.752 16995-16995/? A/DEBUG:     #62 pc 001cf517  /system/lib/libart.so (_ZN3art11interpreter33ArtInterpreterToInterpreterBridgeEPNS_6ThreadEPKNS_7DexFile8CodeItemEPNS_11ShadowFrameEPNS_6JValueE+114)
2020-03-07 13:20:27.752 16995-16995/? A/DEBUG:     #63 pc 001e766b  /system/lib/libart.so (_ZN3art11interpreter6DoCallILb0ELb0EEEbPNS_9ArtMethodEPNS_6ThreadERNS_11ShadowFrameEPKNS_11InstructionEtPNS_6JValueE+466)
2020-03-07 13:20:29.235 3865-16997/? W/ActivityManager:   Force finishing activity com.hello.test/com.baidu.track.activity.SplashActivity
2020-03-07 13:20:29.236 3865-16997/? D/ActivityTrigger: ActivityTrigger activityPauseTrigger 
2020-03-07 13:20:29.243 3865-4440/? I/BootReceiver: Copying /data/tombstones/tombstone_01 to DropBox (SYSTEM_TOMBSTONE)
2020-03-07 13:20:29.277 3865-4162/? V/BoostFramework: BoostFramework() : mPerf = com.qualcomm.qti.Performance@9791681

第一次遇到这种问题,一头雾水。
近期只是在系统里面新增了一个随系统启动的new.jar,放在BOOTCLASSPATH里面。

对比:

1.刷不带new.jar的老固件测试,ok
2.刷带new.jar的debug版本固件测试,ok
3.刷带new.jar的user版本固件测试,不ok

显然,是new.jar在user模式下出了问题。

分析:

debug模式跟user模式的差别?
1.权限不一样,但是不会影响new.jar,所以,排除权限的问题。
2.user和debug模式下,env有差异?实际对比之后发现env是一样的,排除env
3.art odex优化,仔细查看/system/framework/arm里面的oat art文件,结合env里面的jar列表,终于有了重大发现,新增的new.jar并没有对应的boot-xx.oat boot-xx.art文件,看来就是这个原因了。

进一步验证:

各种百度之后,终于看到了有价值的信息,PRODUCT_BOOT_JARS对应的环境变量应该以core-oj开头,而我新增new.jar之后,变成了new.jar开头,因此导致了生成的boot-core-oj.oat有问题,只要访问到这里的内存就会出错,从而挂掉。

正确的环境变量配置:
BOOTCLASSPATH=/system/framework/core-oj.jar:/system/framework/core-libart.jar:/system/framework/conscrypt.j
ar:/system/framework/okhttp.jar:/system/framework/core-junit.jar:/system/framework/bouncycastle.jar:/system/framework/ext.jar:/system/framework/
framework.jar:/system/framework/telephony-common.jar:/system/framework/voip-common.jar:/system/framework/ims-common.jar:/system/framework/apache
-xml.jar:/system/framework/org.apache.http.legacy.boot.jar:/system/framework/qcom.fmradio.jar:/system/framework/tcmiface.jar:/system/framework/t
elephony-ext.jar:/system/framework/oem-services.jar:/system/framework/new.jar
错误的环境变量配置:
BOOTCLASSPATH=/system/framework/new.jar:/system/framework/core-oj.jar:/system/framework/core-libart.jar:/system/framework/conscrypt.j
ar:/system/framework/okhttp.jar:/system/framework/core-junit.jar:/system/framework/bouncycastle.jar:/system/framework/ext.jar:/system/framework/
framework.jar:/system/framework/telephony-common.jar:/system/framework/voip-common.jar:/system/framework/ims-common.jar:/system/framework/apache
-xml.jar:/system/framework/org.apache.http.legacy.boot.jar:/system/framework/qcom.fmradio.jar:/system/framework/tcmiface.jar:/system/framework/t
elephony-ext.jar:/system/framework/oem-services.jar

很显然是PRODUCT_BOOT_JARS += new.jar的位置问题。包含PRODUCT_BOOT_JARS += new.jar的mk文件被include太靠前,导致编译之后出现在开头处。参考其他的PRODUCT_BOOT_JARS,挪动位置到其他mk里面,编译system.img验证,out/xx/system/framework/arm/目录下生成对应的oat art文件即可。

同时,在编译阶段增加检验,如果PRODUCT_BOOT_JARS不是core-oj开头,直接报错,停止编译。

diff --git a/build/core/dex_preopt_libart.mk b/build/core/dex_preopt_libart.mk
index acd4a02dd9..f678007034 100644
--- a/build/core/dex_preopt_libart.mk
+++ b/build/core/dex_preopt_libart.mk
@@ -90,6 +90,9 @@ LIBART_TARGET_BOOT_DEX_FILES := $(foreach jar,$(LIBART_TARGET_BOOT_JARS),$(call
 # is converted into to boot.art (to match the legacy assumption that boot.art
 # exists), and the rest are converted to boot-<name>.art.
 # In addition, each .art file has an associated .oat file.
+ifneq (core-oj,$(word 1,$(LIBART_TARGET_BOOT_JARS)))
+$(error "core-oj" must be the first file in <PRODUCT_BOOT_JARS> but now is "$(word 1,$(LIBART_TARGET_BOOT_JARS))")
+endif
 LIBART_TARGET_BOOT_ART_EXTRA_FILES := $(foreach jar,$(wordlist 2,999,$(LIBART_TARGET_BOOT_JARS)),boot-$(jar).art boot-$(jar).oat)
 LIBART_TARGET_BOOT_ART_EXTRA_FILES += boot.oat

欢迎客官老爷们点赞+评论。

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/u010725171/article/details/104770370

智能推荐

Linux系统下DNS配置指南_linux 服务器修改网络dns-程序员宅基地

文章浏览阅读548次,点赞10次,收藏6次。Linux系统下DNS配置指南_linux 服务器修改网络dns

Springboot/java/node/python/php基于springboot+vue手机售后管理系统【2024年毕设】-程序员宅基地

文章浏览阅读779次,点赞19次,收藏24次。springboot微信小程序的小疾病问诊服务系统的设计与实现。springboot基于spring的物业管理系统的设计与实现。springboot基于Java的高校学生请假系统。ssm基于Android的购物商场APP设计与实现。springboot基于微信小程序的智慧校园系统。ssm基于Android的英语词典的设计与开发。ssm基于SSM+Vue的学生实践管理平台开发。ssm基于android的企业员工考勤系统。ssm基于web的暗香小店系统的设计与实现。ssm基于Web的高等学校公费医疗管理系统。

css中hover属性的使用技巧_css hover的用法-程序员宅基地

文章浏览阅读2.3w次,点赞15次,收藏63次。hover属性用不同的书写方式,来改变不同关系的元素样式。元素:hover 表示聚焦后改变自己元素:hover 元素 表示聚焦后改变其子元素元素:hover + 元素 表示聚焦后改变其指定的“亲兄弟”(条件是该兄弟元素与其相邻)元素元素:hover ~ 元素 表示聚焦后改变其指定的兄弟元素,两个元素相不相邻都行。示例:.first:hover {color: white;}/* 聚焦我改变自己 */.three:hover .three-son {font-size: 20px._css hover的用法

coursera-斯坦福-机器学习-吴恩达-第8周笔记-无监督学习_pca反向压缩-程序员宅基地

文章浏览阅读6k次,点赞3次,收藏15次。coursera-斯坦福-机器学习-吴恩达-第8周笔记-无监督学习coursera-斯坦福-机器学习-吴恩达-第8周笔记-无监督学习1聚类算法clutering1聚类算法简介2K-means21kmeans的目标函数22随机初始化23选择类别数3考试quiz维数约减 dimensionality reduction1数据压缩2数据可视化3维度约简-主成分分析法PCA1 PCA_pca反向压缩

vim插件安装及常用技巧_bxbx.vim-程序员宅基地

文章浏览阅读5.2k次。一、插件安装Vundle是vim的一个插件管理器, 同时它本身也是vim的一个插件。插件管理器用于方便、快速的安装、删除、Vim更新插件。mkdir -p ~/.vim/bundlegit clone https://github.com/gmarik/Vundle.vim.git ~/.vim/bundle/Vundle.vim管理器安装完成后,vim ~/.vimrc命令创建.vimrc文件syntax on" tab宽度和缩进同样设置为4set tabstop=4set softta_bxbx.vim

java.lang.ClassNotFoundException:如何解决-程序员宅基地

文章浏览阅读7.2w次,点赞10次,收藏41次。本文适用于当前面临java.lang.ClassNotFoundException挑战的Java初学者。 它将为您提供此常见Java异常的概述,这是一个示例Java程序,可支持您的学习过程和解决策略。 如果您对与更高级的类加载器相关的问题感兴趣,我建议您复习有关java.lang.NoClassDefFoundError的文章系列,因为这些Java异常密切相关。 java.lang..._java.lang.classnotfoundexception:

随便推点

【全开源】JAVA婚恋相亲红娘牵线系统源码支持微信小程序+微信公众号+H5+APP-程序员宅基地

文章浏览阅读530次,点赞23次,收藏10次。springboot+mybatisplus+mysql 用户端 uniapp(vue语法)管理后台 vue+elementUi。后台服务 springboot+mybatisplus+mysql。一、我们技术使用JAVA后台服务 前后端分离。管理后台 vue+elementUi。用户端 uniapp(vue语法)适配小程序+H5+公众号。私信客服获取演示地址。私信客服获取演示地址。

6.python输入整数年份,判断对应整数年份是否为闰年并输出结果_判断闰年的python程序直接输入一个代表年份的正整数-程序员宅基地

文章浏览阅读3.3k次,点赞3次,收藏5次。# -*- coding: UTF-8 -*-year = int(input("输入一个年份:"))if year % 100 == 0: if year % 400 == 0: print('%d年是闰年' % year) else: print('%d年不是闰年' % year)else: if year % 4 == 0: print('%d年是闰年' % year) else: print('%d_判断闰年的python程序直接输入一个代表年份的正整数

【图像去噪】偏微分方程PDE图像去噪(含SNR)【含Matlab源码 1890期】_pdnet 深度学习 偏微分方程 去噪-程序员宅基地

文章浏览阅读987次,点赞20次,收藏19次。偏微分方程PDE图像去噪(含SNR)完整的代码,方可运行;可提供运行操作视频!适合小白!_pdnet 深度学习 偏微分方程 去噪

Ubuntu18.04安装教程(很详细)_ubuntu18安装-程序员宅基地

文章浏览阅读6.6w次,点赞128次,收藏962次。Ubuntu18.0详尽版安装教程下载Ubuntu18.04下载VMware Workstation安装虚拟机下载Ubuntu18.04官方网站:http://old-releases.ubuntu.com/releases/18.04.4/?_ga=2.44113060.1243545826.1617173008-2055924693.1608557140下载VMware Workstation这个在网上有很多教程下载,这里我就不写了,我用的版本是14 pro。如下图:安装虚拟机1、打开_ubuntu18安装

Android四大组件之Activity--管理方式_android activityrecord中的activitytype-程序员宅基地

文章浏览阅读1.7k次。1. 概览Activity的管理有静态和动态两层涵义: 静态是指Activity的代码组织结构,即Application中声明的Activity的集合,这些Activity被组织在一个APK中,有特定的包名。 在编写应用程序时,Activity对应到用户界面,它定义了用户界面的布局、交互行为、启动方式等,最重要的,是Activity的生命周期函数。 在应用进程看来,只需要按照Android定义的规范,实现生命周期函数的具体逻辑即可,所有的用户界面都遵循同一个规范。 编写完一个应用程序的所有用户界面_android activityrecord中的activitytype

[LINUX]sed查找不包含某个字符串的行,并进行替换_sed不包含字符串-程序员宅基地

文章浏览阅读5.5k次,点赞3次,收藏7次。sed 查找不包含某个特性 sed -i "/src/!s/xxx/bbb/g" xxx将不包含src的行中的xxx替换为bbb_sed不包含字符串

推荐文章

热门文章

相关标签