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

智能推荐

手机邮箱注册技术分析及运用-网站如何发送验证码到手机注册账号_手机号登录邮箱咋发验证码-程序员宅基地

文章浏览阅读2.1k次。手机邮箱注册技术分析及运用-如何用邮箱注册账号,请参考以下文章: https://blog.csdn.net/weixin_42828741/article/details/82625077本文主要讲述如何使用手机注册账号~目前了解到的服务商有以下几种: 阿里云短信 -腾讯云短信 -百度云SMS -容联云通讯(本文介绍的是这种)接入步骤(以容联云通讯为例测试) 1.注册开发..._手机号登录邮箱咋发验证码

开发钉钉和企业微信微应用_做个app用于钉钉和企业微信用什么编程软件-程序员宅基地

文章浏览阅读1.1k次。1、登录企业微信管理后台 -- 创建企业内部应用 -- 填写logo和应用名称--配置域名 (与钉钉类似)这样ios在点击输入框的时候就不会出现页面被顶起来导致页面变形的问题了。3、配置首页可访问地址:打包到线上的路径(注意配置正式环境和本地环境)2、安装对应的插件和依赖。axios、router、scss等。2、上传内部应用logo和名字。注意需要添加可访问域名的配置。开发上线后会遇到很多有关安卓和ios的兼容性问题。4、在所在公司的工作台搜索应用名称即可。如果不添加配置会自动跳转到线上的地址。_做个app用于钉钉和企业微信用什么编程软件

CentOS 部署easy-mock注意事项_easymock部署在centos7中 不能访问-程序员宅基地

文章浏览阅读255次。https://github.com/easy-mock/easy-mock常用linux命令查看端口占用情况netstat -lnpt |grep 80netstat -an|grep 7301系统管理角色,里面切换rootsudo su -查找一个叫 app 的进程ps -ef|grep app杀掉进程kill -9 pid1、安装nodejs 一定要安装8..._easymock部署在centos7中 不能访问

RILD - 第二章 - EventLoop机制的建立_rild_event-程序员宅基地

文章浏览阅读734次。二、EventLoop机制LibRIL负责接收来自RILJ的数据,并传递给ReferenceRIL。实现这一功能的主要机制就是EventLoop机制。 分析LibRIL主要就是分析EventLoop。2.1 EventLoop相关预备知识2.1.1 EventLoop中的Event在ril_event.h头文件中可以看到ril_event的结构体定义//定义Event回调函数指针typedef_rild_event

[JS 工具] 格式化显示 mailman 上的 diff 文本-程序员宅基地

文章浏览阅读122次。公司使用 mailman 来显示 patch,mailman 显示的改动只有一堆黑白文字,难以辨认。有时候还把 patch 当成文件再 git add 一遍后再生成一个新的 patch,这时候对于原来 patch 的代码改动来说,整个 patch 都是新增代码,就更加难以看出改动在哪,给 review patch 带来不必要的不便。有天我想可不可以做成跟 github 一样,至少增删有不..._diff2htmlui

Qt 之 信号参数为QSharedPointer 智能指针类型_qsharedpointer 引用自定义类型-程序员宅基地

文章浏览阅读3k次,点赞2次,收藏15次。文章目录智能指针作为信号参数QSharedPointer智能指针作为信号参数/*! connect a module to the event bus*/Q_DECLARE_METATYPE( QSharedPointer<GitlEvent> )bool GitlEventBus::registerModule(GitlModuleDelegate* pcModule){ qRegisterMetaType< QSharedPointer<GitlEve_qsharedpointer 引用自定义类型

随便推点

linux中chdir函数,linux之chdir函数解析-程序员宅基地

文章浏览阅读891次。[lingyun@localhost chdir]$ lschdir.c[lingyun@localhost chdir]$ cat chdir.c/********************************************************************************** Copyright: (C) 2013 fulinux* ..._linux chdir 函数

python批量录入学生信息_基于Python的学生信息管理系统-程序员宅基地

文章浏览阅读1.5k次。开发环境要求本系统的软件开发及运行环境具体如下。操作系统:Windows 7、Windows 10。Python版本:Python 3.7.0。开发工具:Python IDLE。运行方法在项目文件studentsystem.py上单击鼠标右键,在弹出快捷菜单中选择“Edit with IDLE\Edit with IDLE 3.7(64-bit)”菜单项,如图1所示。在打开的Python Shel..._python从键盘输入 n 个学生信息,包括学号、姓名、成绩。保存到 e:\students.txt

基于SpringBoot+Vue工厂生产设备维护管理系统设计和实现(源码+LW+部署讲解)-程序员宅基地

文章浏览阅读826次,点赞12次,收藏22次。随着社会的发展,系统的管理形势越来越严峻。越来越多的用户利用互联网获得信息,但各种信息鱼龙混杂,信息真假难以辨别。为了方便用户更好的获得工厂生产设备维护信息,因此,设计一种安全高效的工厂生产设备维护管理系统极为重要。为设计一个安全便捷,并且使用户更好获取工厂生产设备维护信息,本文主要有安全、简洁为理念,实现用户快捷寻找工厂生产设备维护信息,从而解决工厂生产设备维护信息复杂难辨的问题。该系统采用java语言、Spring Boot框架和mysql数据库进行开发设计,通过对。

mysql基准测试-程序员宅基地

文章浏览阅读708次。mysql 基准测试_mysql基准测试

两个八进制小数怎么相加_八进制怎么算-程序员宅基地

文章浏览阅读1.4k次。展开全部1、八进制化为32313133353236313431303231363533e78988e69d8331333366306436十进制:例:将八进制数12转换成十进制数 2、八进制化为二进制:规则:按照顺序,每1位八进制数改写成等值的3位二进制数,次序不变。例: (17.36)8 = (001 111 .011 110)2 = (1111.01111)23、八进制化为十六进制先..._两个八进制相加

【十年开发积累】STM32产品开发代码案例合集,嵌入式物联网工程师珍贵资料(物联技术666)_基于stm32f103单片机的经典应用实例源码合集(76例)-程序员宅基地

文章浏览阅读1k次,点赞30次,收藏15次。例程涵盖:STM32各类功能配置,外围传感器初始化,模块初始化,物联网协议,操作系统移植,功能开发,产品案例等等,十分具有参考价值。_基于stm32f103单片机的经典应用实例源码合集(76例)

推荐文章

热门文章

相关标签