Home:ALL Converter>Why does my Flutter app crash at startup on iOS?

Why does my Flutter app crash at startup on iOS?

Ask Time:2020-05-04T03:00:32         Author:watts

Json Formatter

I'm trying to build a simple app using Flutter for iOS and Android, but the app crashes on startup when I try to run it on an iPhone (Android runs fine). I don't have a mac, so I'm using Codemagic to compile a release build and deploy to TestFlight, then installing on an iPhone from there. Apple only shows their crash logs in Xcode as far as I can tell (nothing in App Store Connect online?), and since I don't have a mac, I can't see those. Any thoughts as to what I might be running into, or what information I can gather to debug the problem?

Thanks!

Edit: I've been digging around some more and it looks like the crash is related to the Firebase dependencies. If I create the Flutter demo project (flutter create ), it runs fine on iOS. However if I then add Firebase packages to pubspec.yaml, and manually add GoogleServices-info.plist, the app crashes on startup. (I'm not adding any code that uses Firebase yet.) GoogleServices-info.plist is supposed to be added with Xcode, but since I don't have Xcode or a mac, that makes it tough. The second answer to this question gives a suggestion: Where to save GoogleService-Info.plist in Flutter without Xcode? I tried making those changes but got the same result. Anybody have any recommendations for adding Firebase without a mac?

Author:watts,eproduced under the CC 4.0 BY-SA copyright license with a link to the original source and this disclaimer.
Link to original article:https://stackoverflow.com/questions/61580053/why-does-my-flutter-app-crash-at-startup-on-ios
cs guy :

For any newbies out there like me, make sure registering firebase is before GeneratedPluginRegistrant in your ios/Runner/AppDelegate.swift file.\n// This works without crashes, FirebaseApp.configure() after GeneratedPluginRegistrant crashes\nFirebaseApp.configure()\nGeneratedPluginRegistrant.register(with: self)\n",
2021-05-05T18:27:06
season :

i had the same issue and i have fixed it as i was new to ios deployment i forgot to add capabilities which indeed crashed my app in testflight ...so please be sure you have added required capabilities in signing and capability tab in xcode",
2020-06-01T10:17:05
Bavly adel :

use terminal to run the app.\nrun this command\n\nflutter run --release\n",
2022-03-21T09:56:36
xkxeeshankhan :

For iOS: In our case this happened because of Facebook plugin update.\nPrevious version: flutter_facebook_auth: ^3.5.1\nNew Version: flutter_facebook_auth: ^4.3.3\nWe were missing FacebookClientToken in Info.plist file. So after adding that it worked.\n<key>FacebookClientToken</key>\n<string>$(FACEBOOK_CLIENT_TOKEN)</string>\n",
2022-05-10T07:10:17
Mikhail Tokarev :

most probably you've faced with next Flutter issue https://github.com/flutter/flutter/issues/54707",
2020-05-05T21:03:48
maryam sadat daneshvarian :

I had the same problem and solved it as below :\nIn the folder of flutter sdk,\nI did git pull then run the app again and it was solved .",
2021-05-14T03:01:15
watts :

Ok, so here's what happened. Originally the app crashed on iOS because there were issues with the GoogleServices-info.plist file (probably). There were no error messages, so I didn't know where to look. I finally just went back to the simple demo app and started layering things back in to isolate the issue. The demo app would build and run on iOS with no problems, but when I added the Firebase dependencies (as a group), it failed. I had added the GoogleServices-info.plist file manually (outside of Xcode) and adjusted the references in ios/Runner.xcodeproj/project.pbxproj using a text editor, but that didn't do the trick.\nAt this point I finally broke down and got a MacBook. Debugging on the Mac, I could now see that the app crashed in debug mode on the emulator as well as when in release mode on a device, but still no helpful error messages. I added the GoogleServices-info.plist file using Xcode, so at least that piece was correct, but the app still crashed immediately. Going through the documentation, I realized that when I made the sample app, I had forgotten to add the app ID in the info.plist file for AdMob. At this point it was just AdMob causing the crash, not the other Firebase dependencies. I added that back in and things ran fine. I wish I had looked at that a month ago. Ugh.\nThanks @Mikhail Tokharev and @season for taking a stab at such a vague question. I wish I had more detail to share initially, but I didn't know enough yet to know what could be going wrong.\nTL;DR\n\nJust get a Mac. Trying to debug through Codemagic won't work.\nFor Firebase, be sure you actually add your GoogleServices-info.plist file through Xcode. Trying to add it manually and hack the project.pbxproj file probably won't work (this a practical recommendation, I didn't prove this conclusively).\nhttps://firebase.google.com/docs/flutter/setup?platform=ios#add-config-file\nFor AdMob, be sure to add your application ID to the info.plist. https://pub.dev/packages/firebase_admob\n",
2020-06-06T17:26:43
Ramin Udash :

I've been facing this error since the last few days and I happen to solve it today. So, I would like to share it with anyone facing startup error after connecting their iOS app to firebase.\nI had followed all the steps while setting up a new iOS app with firebase and this was what exactly caused the error, in my case. If you have placed import 'Firebase' and Firebase.configure() in your AppDelegate.swift, then remove it and run your app again. I removed those two lines and it worked fine. Test it with Cloud Firestore (just make a button write something to your cloud firestore) and make sure you add await Firebase.initializeApp(); as well when the button is pressed.\nI did all of those steps and it worked fine with me.\nP.S. I did it with android studio in a Mac.",
2021-03-04T05:23:14
yy