Skip to content

iOS app crashes on start if ARCore Extensions is installed #1365

@spkoreaa

Description

@spkoreaa

Plugin Version or Commit ID

v0.16.1

Unity Version

6000.0.29f1

Your Host OS

macOS Ventura 13.7.1

Target Platform

iOS

[Windows Only] Visual Studio C++ and Windows SDK Version

No response

[Linux Only] GCC/G++ and GLIBC Version

No response

[Android Only] Android Build Tools and NDK Version

No response

[iOS Only] XCode Version

iOS 18.3.2

Command Sequences

bt all

Log

objc[2029]: Class KalmanFilter is implemented in both /System/Library/PrivateFrameworks/CinematicFraming.framework/CinematicFraming (0x1fcc75510) and /private/var/containers/Bundle/Application/DE268BA9-4030-4729-BB95-B98D634EB143/ARCoreExtention.app/Frameworks/MediaPipeUnity.framework/MediaPipeUnity (0x10943ba60). One of the two will be used. Which one is undefined.
(lldb) bt all* thread #1, queue = 'com.apple.main-thread', stop reason = EXC_BAD_ACCESS (code=1, address=0x6013c8148)    frame #0: 0x0000000108f7f680 MediaPipeUnity___lldb_unnamed_symbol57892 + 140    frame #1: 0x0000000108f7f308 MediaPipeUnitymediapipe::internal::GpuBufferStorageRegistry::Register(std::__1::function<std::__1::shared_ptrmediapipe::internal::GpuBufferStorage (int, int, mediapipe::GpuBufferFormat)>, std::__1::vector<mediapipe::TypeId, std::__1::allocatormediapipe::TypeId>) + 300    frame #2: 0x0000000107e0a7ec MediaPipeUnity___lldb_unnamed_symbol24787 + 168    frame #3: 0x0000000107e143a4 MediaPipeUnity___lldb_unnamed_symbol25015 + 132    frame #4: 0x00000001b9ab07a8 dyldinvocation function for block in dyld4::Loader::findAndRunAllInitializers(dyld4::RuntimeState&) const + 592    frame #5: 0x00000001b9b021ac dyldinvocation function for block in dyld3::MachOAnalyzer::forEachInitializer(Diagnostics&, dyld3::MachOAnalyzer::VMAddrConverter const&, void (unsigned int) block_pointer, void const*) const + 172    frame #6: 0x00000001b9ab1478 dyldinvocation function for block in dyld3::MachOFile::forEachSection(void (dyld3::MachOFile::SectionInfo const&, bool, bool&) block_pointer) const + 496    frame #7: 0x00000001b9ab120c dylddyld3::MachOFile::forEachLoadCommand(Diagnostics&, void (load_command const*, bool&) block_pointer) const + 300    frame #8: 0x00000001b9ab0fc0 dylddyld3::MachOFile::forEachSection(void (dyld3::MachOFile::SectionInfo const&, bool, bool&) block_pointer) const + 192    frame #9: 0x00000001b9aa8000 dylddyld3::MachOFile::forEachInitializerPointerSection(Diagnostics&, void (unsigned int, unsigned int, bool&) block_pointer) const + 160    frame #10: 0x00000001b9aa7e18 dylddyld3::MachOAnalyzer::forEachInitializer(Diagnostics&, dyld3::MachOAnalyzer::VMAddrConverter const&, void (unsigned int) block_pointer, void const*) const + 432    frame #11: 0x00000001b9aa7954 dylddyld4::Loader::findAndRunAllInitializers(dyld4::RuntimeState&) const + 176    frame #12: 0x00000001b9aa87bc dylddyld4::JustInTimeLoader::runInitializers(dyld4::RuntimeState&) const + 36    frame #13: 0x00000001b9aa6b48 dylddyld4::Loader::runInitializersBottomUp(dyld4::RuntimeState&, dyld3::Array<dyld4::Loader const*>&, dyld3::Array<dyld4::Loader const*>&) const + 312    frame #14: 0x00000001b9aa6ae8 dylddyld4::Loader::runInitializersBottomUp(dyld4::RuntimeState&, dyld3::Array<dyld4::Loader const*>&, dyld3::Array<dyld4::Loader const*>&) const + 216    frame #15: 0x00000001b9abd114 dylddyld4::Loader::runInitializersBottomUpPlusUpwardLinks(dyld4::RuntimeState&) const::$_0::operator()() const + 180    frame #16: 0x00000001b9abce60 dylddyld4::Loader::runInitializersBottomUpPlusUpwardLinks(dyld4::RuntimeState&) const + 412    frame #17: 0x00000001b9aba0a8 dylddyld4::APIs::dlopen_from(char const*, int, void*) + 2432    frame #18: 0x00000001938ddd88 CoreFoundation_CFBundleDlfcnLoadFramework + 164    frame #19: 0x000000019388a988 CoreFoundation_CFBundleLoadExecutableAndReturnError + 476    frame #20: 0x0000000192461094 Foundation-[NSBundle loadAndReturnError:] + 212  * frame #21: 0x00000001048f008c ARCoreExtentionUnityFrameworkLoad() at main.mm:10:37 [opt]    frame #22: 0x00000001048f0114 ARCoreExtentionmain(argc=1, argv=0x000000016b513800) at main.mm:25:18 [opt]    frame #23: 0x00000001b9acdde8 dyldstart + 2724

Additional Context

I am using MediaPipeUnityPlugin-all-stripped.zip v0.16.1 to implement the hand tracking into my AR app. I am using Unity ARFoundation + ARCore Extensions with ARCloud Anchors . I have successfully connected the ARCamera as an input to the hand tracking and everything works well as expected on Android with no issues. However, when I try to build it for iOS EXC_BAD_ACCESS on UnityFrameLoad(), which I can tell MediaPipeUnity issues with registering gpubuffer. I tried to back-trace the thread using "bt all" so you can see the whole error log. The problem is getting invoked when I specifically set the Project Settings -> ARCore Extensions -> iOS Support Enabled to True and build the project. Without iOS Supoort Enabled everything works fine with no issue. Removing either of them (MediaPipeUnity or ARCore Extensions iOS enabled) is eliminating the problem, however I should use both.

Metadata

Metadata

Assignees

No one assigned

    Labels

    platform:iosIssue that occurs when the target platform is iOStype:build/installCannot build/install the plugin

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions