Skip to content

【Help】部分机型上,在Unity3D游戏中initialize失败闪退 #103

@Lvcherry

Description

@Lvcherry

您好,目前尝试在游戏中hook Activity.setRequestedOrientation方法,自定义拦截游戏自身的旋转行为,在部分机型中遇到Unity3D游戏初始化失败闪退的问题

  1. 非全部机型必现,测试机Infinix NOTE30 是正常的,测试同学的华为P50 Pro (Harmony os 4.2.0)、OPPO Find X5 Pro (Android 14) 均会闪退
  2. Unity3D游戏有问题,而其他游戏 如cocos2d框架的正常
    日志堆栈如下:

2025-10-11 14:29:14.931 19242-31963 BaseLib ExU usap64 E java.lang.Error: FATAL EXCEPTION [UnityMain]
Unity version : 2020.3.48f1c1
Device model : HUAWEI JAD-AL50
Device fingerprint: HUAWEI/JAD-AL50/HWJAD:12/HUAWEIJAD-AL50/104.2.0.183C00:user/release-keys
Build Type : Release
Scripting Backend : IL2CPP
ABI : arm64-v8a
Strip Engine Code : true

                                                                                                Caused by: java.lang.Error: *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
                                                                                                Version '2020.3.48f1c1 (06fbdfbf16e3)', Build type 'Release', Scripting Backend 'il2cpp', CPU 'arm64-v8a'
                                                                                                Build fingerprint: 'HUAWEI/JAD-AL50/HWJAD:12/HUAWEIJAD-AL50/104.2.0.183C00:user/release-keys'
                                                                                                Revision: '0'
                                                                                                ABI: 'arm64'
                                                                                                Timestamp: 2025-10-11 14:29:13+0800
                                                                                                pid: 19242, tid: 19242, name: hy.yhlzzkb  >>> com.hy.yhlzzkb<<<
                                                                                                uid: 10290
                                                                                                signal 6 (SIGABRT), code -1 (SI_QUEUE), fault addr --------
                                                                                                    x0  0000000000000000  x1  0000000000004b2a  x2  0000000000000006  x3  000000762553ba20
                                                                                                    x4  0000000000000080  x5  0000000000000080  x6  0000000000000080  x7  8080808080808080
                                                                                                    x8  00000000000000f0  x9  5692afb78f9bff4e  x10 0000000000000000  x11 ffffff80fffffbdf
                                                                                                    x12 0000000000000001  x13 000000007fffffff  x14 000000000170ece0  x15 0000000000000040
                                                                                                    x16 00000078e15e4088  x17 00000078e15be3f0  x18 000000000f826b1c  x19 0000000000004b2a
                                                                                                    x20 0000000000004b2a  x21 00000000ffffffff  x22 0000000000000000  x23 000000000000000b
                                                                                                    x24 00000075d11ebc28  x25 0000000000000000  x26 00000076148c2000  x27 000000762553bd20
                                                                                                    x28 00000076148a9570  x29 000000762553baa0
                                                                                                    sp  000000762553ba00  lr  00000078e1570fa0  pc  00000078e1570fcc
                                                                                                
                                                                                                backtrace:
                                                                                                      #00 pc 0000000000089fcc  /apex/com.android.runtime/lib64/bionic/libc.so (abort+164) (BuildId: a85ef5fb74e0282813cd1edb10854577)
                                                                                                      #01 pc 00000000000ec3cc  /apex/com.android.runtime/lib64/bionic/libc.so (android_run_on_all_threads) (BuildId: a85ef5fb74e0282813cd1edb10854577)
                                                                                                      #02 pc 00000000000ec2ec  /apex/com.android.runtime/lib64/bionic/libc.so (__pthread_internal_gettid(long, char const*)+8) (BuildId: a85ef5fb74e0282813cd1edb10854577)
                                                                                                      #03 pc 00000000000eca04  /apex/com.android.runtime/lib64/bionic/libc.so (pthread_kill+48) (BuildId: a85ef5fb74e0282813cd1edb10854577)
                                                                                                      #04 pc 0000000000006d00  /data/app/~~WO4YkuvXJVj-Br96_doEiA==/com.hy.yhlzzkb-72ZKAJQImmblzY6f7byQGQ==/lib/arm64/libBugly.so (BuildId: 8a1d746b019ab09be541d40997749cc60107f5bb)
                                                                                                      #05 pc 0000000000002244  /apex/com.android.art/lib64/libsigchain.so (art::SignalChain::Handler(int, siginfo*, void*)+440) (BuildId: 45f43e18dc6ff54eabb319365499f3f5)
                                                                                                      #06 pc 0000000000000888  [vdso]
                                                                                                      #07 pc 0000000000009b40  /data/user/0/com.hy.yhlzzkb/files/lib/0A46FFBF-8DCA-4505-82A9-B5B8E1F9212A_lib/libpine.so (BuildId: 55f526a0fb345864774f3abb1442473b8accce39)
                                                                                                      #08 pc 000000000000756c  /data/user/0/com.hy.yhlzzkb/files/lib/0A46FFBF-8DCA-4505-82A9-B5B8E1F9212A_lib/libpine.so (BuildId: 55f526a0fb345864774f3abb1442473b8accce39)
                                                                                                      #09 pc 0000000000222244  /apex/com.android.art/lib64/libart.so (art_quick_generic_jni_trampoline+148) (BuildId: a375534bc119ae985c5b6700ebc22557)
                                                                                                      #10 pc 0000000000211dd8  /apex/com.android.art/lib64/libart.so (nterp_helper+2152) (BuildId: a375534bc119ae985c5b6700ebc22557)
                                                                                                      #11 pc 0000000000218be8  /apex/com.android.art/lib64/libart.so (art_quick_invoke_static_stub+568) (BuildId: a375534bc119ae985c5b6700ebc22557)
                                                                                                      #12 pc 00000000002845c0  /apex/com.android.art/lib64/libart.so (art::ArtMethod::Invoke(art::Thread*, unsigned int*, unsigned int, art::JValue*, char const*)+216) (BuildId: a375534bc119ae985c5b6700ebc22557)
                                                                                                      #13 pc 00000000003fe418  /apex/com.android.art/lib64/libart.so (art::interpreter::ArtInterpreterToCompiledCodeBridge(art::Thread*, art::ArtMethod*, art::ShadowFrame*, unsigned short, art::JValue*)+400) (BuildId: a375534bc119ae985c5b6700ebc22557)

2025-10-11 14:29:14.931 19242-31963 BaseLib ExU usap64 E #38 pc 00000000002132e4 /apex/com.android.art/lib64/libart.so (nterp_helper+7540) (BuildId: a375534bc119ae985c5b6700ebc22557)
#39 pc 00000000002115a4 /apex/com.android.art/lib64/libart.so (nterp_helper+52) (BuildId: a375534bc119ae985c5b6700ebc22557)
#40 pc 00000000002124c4 /apex/com.android.art/lib64/libart.so (nterp_helper+3924) (BuildId: a375534bc119ae985c5b6700ebc22557)
#41 pc 00000000002124c4 /apex/com.android.art/lib64/libart.so (nterp_helper+3924) (BuildId: a375534bc119ae985c5b6700ebc22557)
#42 pc 00000000002124c4 /apex/com.android.art/lib64/libart.so (nterp_helper+3924) (BuildId: a375534bc119ae985c5b6700ebc22557)
#43 pc 0000000000218964 /apex/com.android.art/lib64/libart.so (art_quick_invoke_stub+548) (BuildId: a375534bc119ae985c5b6700ebc22557)
#44 pc 00000000002845a4 /apex/com.android.art/lib64/libart.so (art::ArtMethod::Invoke(art::Thread*, unsigned int*, unsigned int, art::JValue*, char const*)+188) (BuildId: a375534bc119ae985c5b6700ebc22557)
#45 pc 0000000000655d1c /apex/com.android.art/lib64/libart.so (_jobject* art::InvokeMethod<(art::PointerSize)8>(art::ScopedObjectAccessAlreadyRunnable const&, _jobject*, _jobject*, _jobject*, unsigned long)+1384) (BuildId: a375534bc119ae985c5b6700ebc22557)
#46 pc 00000000005bd3b8 /apex/com.android.art/lib64/libart.so (art::Method_invoke(_JNIEnv*, _jobject*, _jobject*, _jobjectArray*)+52) (BuildId: a375534bc119ae985c5b6700ebc22557)
#47 pc 00000000000cbf74 /apex/com.android.art/javalib/arm64/boot.oat (BuildId: 3c324d20dd625a5c319b543d471ed051d5b48605)

                                                                                                	at libc.abort(abort:164)
                                                                                                	at libc.android_run_on_all_threads(android_run_on_all_threads:0)
                                                                                                	at libc.__pthread_internal_gettid(long, char const*)(__pthread_internal_gettid:8)
                                                                                                	at libc.pthread_kill(pthread_kill:48)
                                                                                                	at libBugly.0x6d00(Native Method)
                                                                                                	at libsigchain.art::SignalChain::Handler(int, siginfo*, void*)(Handler:440)
                                                                                                	at [vdso].0x888(Native Method)
                                                                                                	at libpine.0x9b40(Native Method)
                                                                                                	at libpine.0x756c(Native Method)
                                                                                                	at libart.art_quick_generic_jni_trampoline(art_quick_generic_jni_trampoline:148)
                                                                                                	at libart.nterp_helper(nterp_helper:2152)
                                                                                                	at libart.art_quick_invoke_static_stub(art_quick_invoke_static_stub:568)
                                                                                                	at libart.art::ArtMethod::Invoke(art::Thread*, unsigned int*, unsigned int, art::JValue*, char const*)(Invoke:216)
                                                                                                	at libart.art::interpreter::ArtInterpreterToCompiledCodeBridge(art::Thread*, art::ArtMethod*, art::ShadowFrame*, unsigned short, art::JValue*)(ArtInterpreterToCompiledCodeBridge:400)
                                                                                                	at libart.bool art::interpreter::DoCall<false, false>(art::ArtMethod*, art::Thread*, art::ShadowFrame&, art::Instruction const*, unsigned short, art::JValue*)(DoCall<false, false>:804)
                                                                                                	at libart.MterpInvokeStatic(MterpInvokeStatic:980)
                                                                                                	at libart.mterp_op_invoke_static(mterp_op_invoke_static:20)
                                                                                                	at libart.art::interpreter::Execute(art::Thread*, art::CodeItemDataAccessor const&, art::ShadowFrame&, art::JValue, bool, bool)(Execute:816)
                                                                                                	at libart.artQuickToInterpreterBridge(artQuickToInterpreterBridge:776)
                                                                                                	at libart.art_quick_to_interpreter_bridge(art_quick_to_interpreter_bridge:88)
                                                                                                	at libart.nterp_helper(nterp_helper:152)
                                                                                                	at libart.nterp_helper(nterp_helper:3924)
                                                                                                	at libart.nterp_helper(nterp_helper:3924)
                                                                                                	at libart.nterp_helper(nterp_helper:3924)
                                                                                                	at libart.art_quick_invoke_stub(art_quick_invoke_stub:548)
                                                                                                	at libart.art::ArtMethod::Invoke(art::Thread*, unsigned int*, unsigned int, art::JValue*, char const*)(Invoke:188)
                                                                                                	at libart.art::interpreter::ArtInterpreterToCompiledCodeBridge(art::Thread*, art::ArtMethod*, art::ShadowFrame*, unsigned short, art::JValue*)(ArtInterpreterToCompiledCodeBridge:400)
                                                                                                	at libart.bool art::interpreter::DoCall<false, false>(art::ArtMethod*, art::Thread*, art::ShadowFrame&, art::Instruction const*, unsigned short, art::JValue*)(DoCall<false, false>:804)
                                                                                                	at libart.MterpInvokeDirect(MterpInvokeDirect:1036)
                                                                                                	at libart.mterp_op_invoke_direct(mterp_op_invoke_direct:20)

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions