firebase / firebase-unity-sdk

The Firebase SDK for Unity
http://firebase.google.com
Apache License 2.0
211 stars 35 forks source link

Crashed: com.apple.main-thread EXC_BAD_INSTRUCTION 0x00000000feedfacf #881

Open aslmtrt opened 10 months ago

aslmtrt commented 10 months ago

[REQUIRED] Please fill in the following fields:

[REQUIRED] Please describe the issue here:

iphone6s, iphone6, ipad air Os Version: 12.5.7

Crashed: com.apple.main-thread 0 UnityFramework 0x102000000 selector_thread(void) (.cold.1) + 656 (threadpool-ms-io.cpp:656) 1 UnityFramework 0xfaabb4 firebase::callback::CallbackString::Run() + 196 2 UnityFramework 0xfcaeb4 firebase::callback::CallbackEntry::Execute() + 144 3 UnityFramework 0xfc8694 firebase::callback::CallbackDispatcher::DispatchCallbacks() + 116 4 UnityFramework 0xfc85dc firebase::callback::PollCallbacks() + 68 5 UnityFramework 0x1085318 Firebase_App_CSharp_PollCallbacks + 12 6 UnityFramework 0x12fecd8 selector_thread(void) (.cold.1) + 656 (threadpool-ms-io.cpp:656) 7 UnityFramework 0x1312458 selector_thread(void) (.cold.1) + 656 (threadpool-ms-io.cpp:656) 8 UnityFramework 0xf58a48 il2cpp::vm::Runtime::InvokeWithThrow(MethodInfo const, void*, void) + 580 (Runtime.cpp:580) 9 UnityFramework 0xf588a8 il2cpp::vm::Runtime::Invoke(MethodInfo const, void, void, Il2CppException*) + 574 (Runtime.cpp:574) 10 UnityFramework 0x569ab4 scripting_method_invoke(ScriptingMethodPtr, ScriptingObjectPtr, ScriptingArguments&, ScriptingExceptionPtr, bool) + 292 (ScriptingApi_Il2Cpp.cpp:292) 11 UnityFramework 0x57529c ScriptingInvocation::Invoke(ScriptingExceptionPtr, bool) + 298 (ScriptingInvocation.cpp:298) 12 UnityFramework 0x583a68 MonoBehaviour::CallUpdateMethod(int) + 543 (MonoBehaviour.cpp:543) 13 UnityFramework 0x3f227c void BaseBehaviourManager::CommonUpdate() + 178 (Behaviour.cpp:178) 14 UnityFramework 0x4974c8 ExecutePlayerLoop(NativePlayerLoopSystem) + 383 (PlayerLoop.cpp:383) 15 UnityFramework 0x497508 ExecutePlayerLoop(NativePlayerLoopSystem*) + 407 (PlayerLoop.cpp:407) 16 UnityFramework 0x497764 PlayerLoop() + 514 (PlayerLoop.cpp:514) 17 UnityFramework 0x9dda58 UnityPlayerLoopImpl(bool) + 342 (LibEntryPoint.mm:342) 18 UnityFramework 0x17ee4 -[UnityAppController(Rendering) repaint] + 238 (UnityAppController+Rendering.mm:238) 19 UnityFramework 0x17e74 -[UnityAppController(Rendering) repaintDisplayLink] + 72 (UnityAppController+Rendering.mm:72) 20 QuartzCore 0x11ff0 CA::Display::DisplayLink::dispatch_items(unsigned long long, unsigned long long, unsigned long long) + 636 21 IOKit 0x54b0 IODispatchCalloutFromCFMessage + 488 22 CoreFoundation 0x84990 CFMachPortPerform + 188 23 CoreFoundation 0xab594 CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE1_PERFORM_FUNCTION + 56 24 CoreFoundation 0xaace0 CFRunLoopDoSource1 + 440 25 CoreFoundation 0xa5b04 __CFRunLoopRun + 2096 26 CoreFoundation 0xa4fb4 CFRunLoopRunSpecific + 436 27 GraphicsServices 0xa79c GSEventRunModal + 104 28 UIKitCore 0x8bcc38 UIApplicationMain + 212 29 UnityFramework 0x17a18 -[UnityFramework runUIApplicationMainWithArgc:argv:] + 96 (main.mm:96) 30 TRTBilBakalm 0x412c main + 28 (main.mm:28) 31 libdyld.dylib 0x18e0 start + 4

Steps to reproduce:

Have you been able to reproduce this issue with just the Firebase Unity quickstarts (this GitHub project)? What's the issue repro rate? (eg 100%, 1/5 etc)

What happened? How can we make the problem occur? This could be a description, log/console output, etc.

If you have a downloadable sample project that reproduces the bug you're reporting, you will likely receive a faster response on your issue.

Relevant Code:

// TODO(you): code here to reproduce the problem
google-oss-bot commented 10 months ago

I couldn't figure out how to label this issue, so I've labeled it for a human to triage. Hang tight.

paulinon commented 10 months ago

Hi @aslmtrt,

Does updating the SDK to its latest version (11.5.0 as of writing) make any difference? If not, could you share your Podfile along with the steps to reproduce the issue so we can identify what's causing this to happen?

aslmtrt commented 10 months ago

Hi @paulinon Thank you for your repply. I updated to the latest version but the problem still persists.

paulinon commented 10 months ago

Hi @aslmtrt,

Could you provide a minimal, reproducible example of your implementation along with detailed steps to replicate the issue so we can identify what's causing this to happen?

reaver commented 10 months ago

We are experiencing the same crash after an update of Unity from 2021.3.12f -> 2021.3.28f With this update we also updates Firebase from 9.0.0 -> 11.2.0

Unfortunately we have only been able to see this in Crashlytics for now and don't have a reproduction case. It's happening almost exclusively on iOS/iPadOS 12.

Crashed: com.apple.main-thread 0 UnityFramework 0x102000000 selector_thread(void) (.cold.1) + 656 (threadpool-ms-io.cpp:656) 1 UnityFramework 0x190b234 firebase::callback::CallbackString::Run() + 196 2 UnityFramework 0x192bb7c firebase::callback::CallbackEntry::Execute() + 144 3 UnityFramework 0x1928fd0 firebase::callback::CallbackDispatcher::DispatchCallbacks() + 116 4 UnityFramework 0x1928f18 firebase::callback::PollCallbacks() + 68 5 UnityFramework 0x19e8dd8 Firebase_App_CSharp_PollCallbacks + 12 6 UnityFramework 0x1e7c2ac selector_thread(void) (.cold.1) + 656 (threadpool-ms-io.cpp:656) 7 UnityFramework 0x1e94b2c selector_thread(void) (.cold.1) + 656 (threadpool-ms-io.cpp:656) 8 UnityFramework 0x18cbcdc il2cpp::vm::Runtime::InvokeWithThrow(MethodInfo const, void*, void) + 578 (Runtime.cpp:578) 9 UnityFramework 0x18cbb3c il2cpp::vm::Runtime::Invoke(MethodInfo const, void, void, Il2CppException*) + 572 (Runtime.cpp:572) 10 UnityFramework 0xec8bd8 scripting_method_invoke(ScriptingMethodPtr, ScriptingObjectPtr, ScriptingArguments&, ScriptingExceptionPtr, bool) + 292 (ScriptingApi_Il2Cpp.cpp:292) 11 UnityFramework 0xed41ec ScriptingInvocation::Invoke(ScriptingExceptionPtr, bool) + 298 (ScriptingInvocation.cpp:298) 12 UnityFramework 0xee29b8 MonoBehaviour::CallUpdateMethod(int) + 543 (MonoBehaviour.cpp:543) 13 UnityFramework 0xd53f48 void BaseBehaviourManager::CommonUpdate() + 178 (Behaviour.cpp:178) 14 UnityFramework 0xdf6d30 ExecutePlayerLoop(NativePlayerLoopSystem) + 383 (PlayerLoop.cpp:383) 15 UnityFramework 0xdf6d70 ExecutePlayerLoop(NativePlayerLoopSystem*) + 407 (PlayerLoop.cpp:407) 16 UnityFramework 0xdf6fcc PlayerLoop() + 514 (PlayerLoop.cpp:514) 17 UnityFramework 0x1345788 UnityPlayerLoopImpl(bool) + 342 (LibEntryPoint.mm:342) 18 UnityFramework 0x15bd0 -[UnityAppController(Rendering) repaint] + 238 (UnityAppController+Rendering.mm:238) 19 UnityFramework 0x15b60 -[UnityAppController(Rendering) repaintDisplayLink] + 72 (UnityAppController+Rendering.mm:72) 20 QuartzCore 0x11ff0 CA::Display::DisplayLink::dispatch_items(unsigned long long, unsigned long long, unsigned long long) + 636 21 IOKit 0x54b0 IODispatchCalloutFromCFMessage + 488 22 CoreFoundation 0x84990 CFMachPortPerform + 188 23 CoreFoundation 0xab594 CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE1_PERFORM_FUNCTION + 56 24 CoreFoundation 0xaace0 CFRunLoopDoSource1 + 440 25 CoreFoundation 0xa5b04 __CFRunLoopRun + 2096 26 CoreFoundation 0xa4fb4 CFRunLoopRunSpecific + 436 27 GraphicsServices 0xa79c GSEventRunModal + 104 28 UIKitCore 0x8bcc38 UIApplicationMain + 212 29 UnityFramework 0x15704 -[UnityFramework runUIApplicationMainWithArgc:argv:] + 96 (main.mm:96) 30 [GAME NAME] 0x412c main + 28 (main.mm:28) 31 libdyld.dylib 0x18e0 start + 4

google-oss-bot commented 10 months ago

Hey @aslmtrt. We need more information to resolve this issue but there hasn't been an update in 5 weekdays. I'm marking the issue as stale and if there are no new updates in the next 5 days I will close it automatically.

If you have more information that will help us get to the bottom of this, just add a comment!

lagoonbbbo commented 9 months ago

Hi, I have the same crashes on iOS 12.5 devices on my last game update. Tested with 11.4.0, 11.6.0 and the problems is the same. Currently using Unity 2021.3.31f1 (LTS), MacOS 14.0, xCode 15.0.1.

For information here is my PodFile:

source 'https://cdn.cocoapods.org/'

platform :ios, '12.0'

target 'UnityFramework' do
  pod 'Firebase/Analytics', '10.15.0'
  pod 'Firebase/Core', '10.15.0'
  pod 'Firebase/Messaging', '10.15.0'
  pod 'Firebase/RemoteConfig', '10.15.0'
  pod 'FirebaseInstallations'
  pod 'GoogleSignIn', '~> 6.0.2'
  pod 'GoogleUtilities', '~> 7.11.0'
end
target 'Unity-iPhone' do
end
use_frameworks! :linkage => :static

target 'NotificationServiceExtension' do
  pod 'Firebase/Messaging', '10.15.0'
  pod 'GoogleUtilities', '~> 7.11.0'
end

post_install do |installer|
# Get main project development team id
dev_team = ""
project = installer.aggregate_targets[0].user_project
project.targets.each do |target|
    target.build_configurations.each do |config|
        if dev_team.empty? and !config.build_settings['DEVELOPMENT_TEAM'].nil?
            dev_team = config.build_settings['DEVELOPMENT_TEAM']
        end
    end
end

# Fix bundle targets' 'Signing Certificate' to 'Sign to Run Locally'
installer.pods_project.targets.each do |target|
    if target.respond_to?(:product_type) and target.product_type == "com.apple.product-type.bundle"
            target.build_configurations.each do |config |
                config.build_settings['DEVELOPMENT_TEAM'] = dev_team
            end
        end
    end

# Disable bitcode compilation
    installer.pods_project.targets.each do |target|
        target.build_configurations.each do |config|
            config.build_settings['ENABLE_BITCODE'] = 'NO'
        end
    end
end
binouze commented 9 months ago

Here is a small repro project, just add your packages as listed in the Packages/manifest.json otherwise the archive is too big to upload here. I also removed the google-service... file.

As I tested: 1 - Open the project. 2 - make sure to target iOS platform. 3 - build and run targeting xCode 15. 4 - run on an iPhone 6 device (iOS 12.5.7) 5 - on the launched app, click on the button START. 6 - see the crash happening. FirebaseCrashIOS12.zip

lagoonbbbo commented 9 months ago

More informations about my config to build the repro project on my previous post: Unity: 2021.3.31f1 MacOS: 14.0 Xcode: 15.0.1 MacBook Pro M1 8Gb RAM / 256Gb SSD

google-oss-bot commented 9 months ago

Hey @aslmtrt. We need more information to resolve this issue but there hasn't been an update in 5 weekdays. I'm marking the issue as stale and if there are no new updates in the next 5 days I will close it automatically.

If you have more information that will help us get to the bottom of this, just add a comment!

lagoonbbbo commented 9 months ago

Hi, Just a follow up to prevent your bot to close the issue...

As your bot said it's been more than 5 weekdays now and I'm still waiting for a response.

I think we gives you all you need to find and fix the bug, this bug seems pretty simple to reproduce and I gives you a sample project to reproduce it as asked by @paulinon.

I'm still available to answer any question you could have.

Thanks.

aslmtrt commented 9 months ago

We updated Firebase libraries. We downgraded the Unity version. We tried similar different steps, nothing changed. We upgraded the Unity version again and got a new build.

In this build, we turned off analytics and firebase usage for OS 12. (FirebaseAnalytics.LogEvent)

Crashes related to Analytics and Firebase continued, but the number of crashes decreased. Crashes only occurred on iPhone 6 OS 12.

As far as I understand, the problem occurs when sending analytical events for iPhone OS 12.

yeosu0107 commented 9 months ago

I'm using Unity 2021.3.21f1, Firebase 10.7.0, xcode 15.1 and I'm getting the same crash on iPhone SE / iOS 13.

There seems to be no problem when using xcode 14.x version.

However, since I need to use xcode 15, this problem should be resolved. Thanks

binouze commented 9 months ago

@a-maurice @cynthiajoan @sunmou99 @chkuang-g, anyone could take a look at this please ?

baba-s commented 9 months ago

I had encountered a similar problem, but was able to resolve the issue with the responses on the following pages. https://baba-s.hatenablog.com/entry/2023/11/27/091420

Ceikry commented 9 months ago

We were able to confirm with 100% certainty that building the app with Xcode 14 instead of Xcode 15 resolved this crash for us.

lagoonbbbo commented 8 months ago

@baba-s Thanks, it seems to fix the issue.

tritmm commented 8 months ago

Xcode 15.1 was fixed this issue. Check more information here: https://developer.apple.com/documentation/xcode-release-notes/xcode-15_1-release-notes#Linking

and here is this bug on XCode 15.0 : https://developer.apple.com/documentation/xcode-release-notes/xcode-15-release-notes#Linking