gpt4 book ai didi

android - 在装有 Android 6.0 的 LG 手机上,应用程序在 libicuuc.so 中的 native 代码中崩溃

转载 作者:太空狗 更新时间:2023-10-29 14:43:12 24 4
gpt4 key购买 nike

我的应用程序在 libicuuc.so 文件中崩溃。 它只发生在 Android 6.0 的 LG 手机上。我搜索了但没有发现任何类似的问题。这是来自 Google Play 的堆栈跟踪:

Build fingerprint: 'lge/p1bssn_global_com/p1bssn:6.0/MRA58K/1635010184e9f:user/release-keys'
Revision: '6'
ABI: 'arm'
signal 11 (SIGSEGV), code 1 (SEGV_MAPERR), fault addr 0xba45f000
r0 00000000 r1 00000000 r2 0000133b r3 becaf54c
r4 0000133a r5 0000133a r6 becaf54c r7 becaf50c
r8 becaf80c r9 0000a972 sl ba45c98c fp 9b7444bc
ip b65d3bc0 sp becaf4d0 lr b650c821 pc b650c7d2 cpsr 00000030

backtrace:
#00 pc 000577d2 /system/lib/libicuuc.so
#01 pc 0005804d /system/lib/libicuuc.so
#02 pc 0005739f /system/lib/libicuuc.so
#03 pc 000a33d7 /system/lib/libicuuc.so (u_strToLower_55+130)
#04 pc 00046997 /system/lib/libsqlite.so

可能导致此错误的原因是什么?

最佳答案

What might be causing this error?

来自堆栈跟踪/回溯跟踪的有趣位:

/system/lib/libicuuc.so
ABI: 'arm'
signal 11 (SIGSEGV), code 1 (SEGV_MAPERR), fault addr 0xba45f000
#03 pc 000a33d7 /system/lib/libicuuc.so (u_strToLower_55+130)

International Components for Unicode (ICU) is an open source project of mature C/C++ and Java libraries for Unicode support, software internationalization, and software globalization. ICU is widely portable to many operating systems and environments. It gives applications the same results on all platforms and between C, C++, and Java software. The ICU project is sponsored, supported, and used by IBM and many other companies. International Components for Unicode.

它在函数 u_strToLower 中崩溃(SIGSEGV,段错误,试图读取或写入非法内存位置),因此在您的代码中搜索 “ToLower” 方法(在java中),也许你可以隔离代码和问题。我们可以将调用替换为我们可以控制的东西,即 stringlower case 函数。您还应该防弹传递给此函数的string(它是null吗?)。

Why is it crashing in a native library, I'm using Java ?

All of that code that starts life as Java code is converted into a piece of native compiled code. Technically, the classes.dex will be converted into an ELF shared object. Android calls this library format OAT and the tool that converts the classes.dex file is called dex2oat. See this How apps are built and run on the Android Runtime (ART).

关于android - 在装有 Android 6.0 的 LG 手机上,应用程序在 libicuuc.so 中的 native 代码中崩溃,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44561962/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com