Bipin Vayalu
Bipin Vayalu

Reputation: 3145

Flutter iOS app showing white screen on launch and hang up on that screen

I have a flutter application using a firebase auth library. When I launch its iOS version, It shows me a blank white screen and hangs up on that screen. I followed all the steps to add some firebase related flags into Info.plist like FirebaseScreenRecordingEnabled - NO, FirebaseScreenRecordingDeactiv - YES and one or two more. I have tried to clean the build folder and flutter cache. Just also tried this below answer as well: iOS Flutter with Firebase : white screen and SIGABRT in FlutterAppDelegate on launch

~/Documents/Work/Workspaces/flutter/myapp $ flutter doctor
Doctor summary (to see all details, run flutter doctor -v):
[✓] Flutter (Channel master, v1.10.7-pre.80, on Mac OS X 10.15.2 19C57, locale en-IN)

[✓] Android toolchain - develop for Android devices (Android SDK version 29.0.2)
[✓] Xcode - develop for iOS and macOS (Xcode 11.2)
[✓] Android Studio (version 3.5)
[!] VS Code (version 1.41.1)
    ✗ Flutter extension not installed; install from
      https://marketplace.visualstudio.com/items?itemName=Dart-Code.flutter
[!] Connected device
    ! No devices available

! Doctor found issues in 2 categories.

FYI, I am using Android Studio for a flutter app.

Here are the logs from xCode logger:

2020-01-09 21:29:10.811285+0530 my-app[4621:1081677] Failed to find snapshot: /var/containers/Bundle/Application/57CC0DF5-D142-4748-A3D3-66E62A9F1A53/my-app.app/Frameworks/App.framework/flutter_assets/kernel_blob.bin
2020-01-09 21:29:11.365554+0530 my-app[4621:1081942] flutter: Observatory listening on http://127.0.0.1:57358/yuCVtFtKdlI=/
2020-01-09 21:29:11.426615+0530 my-app[4621:1081677] Configuring the default Firebase app...
2020-01-09 21:29:11.427922+0530 my-app[4621:1081920] 6.14.0 - [Firebase/Core][I-COR000004] App with name __FIRAPP_DEFAULT does not exist.
2020-01-09 21:29:11.429326+0530 my-app[4621:1081920] 6.14.0 - [Firebase/Core][I-COR000008] The project's Bundle ID is inconsistent with either the Bundle ID in 'GoogleService-Info.plist', or the Bundle ID in the options if you are using a customized options. To ensure that everything can be configured correctly, you may need to make the Bundle IDs consistent. To continue with this plist file, you may change your app's bundle identifier to 'dev.bipin.myapp'. Or you can download a new configuration file that matches your bundle identifier from https://console.firebase.google.com/ and replace the current one.
2020-01-09 21:29:11.547978+0530 my-app[4621:1081677] Configured the default Firebase app __FIRAPP_DEFAULT.
2020-01-09 21:29:11.614019+0530 my-app[4621:1081932] [VERBOSE-2:engine.cc(127)] Engine run configuration was invalid.
2020-01-09 21:29:11.614685+0530 my-app[4621:1081932] [VERBOSE-2:shell.cc(443)] Could not launch engine with configuration.
2020-01-09 21:29:11.696741+0530 my-app[4621:1081928] 6.14.0 - [Firebase/Analytics][I-ACS023007] Analytics v.60107000 started
2020-01-09 21:29:11.697266+0530 my-app[4621:1081928] 6.14.0 - [Firebase/Analytics][I-ACS023008] To enable debug logging set the following application argument: -FIRAnalyticsDebugEnabled
2020-01-09 21:29:13.657220+0530 my-app[4621:1081923] [MC] System group container for systemgroup.com.apple.configurationprofiles path is /private/var/containers/Shared/SystemGroup/systemgroup.com.apple.configurationprofiles
2020-01-09 21:29:13.662995+0530 my-app[4621:1081923] [MC] Reading from public effective user settings.
2020-01-09 21:29:34.648535+0530 my-app[4621:1082005] [BoringSSL] nw_protocol_boringssl_get_output_frames(1301) [C1.1:2][0x14de28120] get output frames failed, state 8196
2020-01-09 21:29:34.649072+0530 my-app[4621:1082005] [BoringSSL] nw_protocol_boringssl_get_output_frames(1301) [C1.1:2][0x14de28120] get output frames failed, state 8196
2020-01-09 21:29:34.650329+0530 my-app[4621:1082005] TIC Read Status [1:0x0]: 1:57
2020-01-09 21:29:34.650477+0530 my-app[4621:1082005] TIC Read Status [1:0x0]: 1:57
2020-01-09 21:29:42.223040+0530 my-app[4621:1082027] [BoringSSL] nw_protocol_boringssl_get_output_frames(1301) [C2.1:2][0x14dd3cee0] get output frames failed, state 8196
2020-01-09 21:29:42.224070+0530 my-app[4621:1082027] [BoringSSL] nw_protocol_boringssl_get_output_frames(1301) [C2.1:2][0x14dd3cee0] get output frames failed, state 8196
2020-01-09 21:29:42.225360+0530 my-app[4621:1082027] TIC Read Status [2:0x0]: 1:57
2020-01-09 21:29:42.225503+0530 my-app[4621:1082027] TIC Read Status [2:0x0]: 1:57

But no luck so far. Can any please help me here. Thanks

Upvotes: 26

Views: 34979

Answers (9)

Ngodiseni Netshifhefhe
Ngodiseni Netshifhefhe

Reputation: 213

Make sure to add the following before initializing firebase on your main.dart

WidgetsFlutterBinding.ensureInitialized()

Future<void> main() async {
   WidgetsFlutterBinding.ensureInitialized();
  await Firebase.initializeApp(
  options: DefaultFirebaseOptions.currentPlatform,
);
  runApp(const MyApp());
}

Upvotes: 0

zinonX
zinonX

Reputation: 330

After a lot and lot and lot of struggle, I found the solution.

Just shift the runApp(const MyApp()); on top in the

void main() async {

Issue solved now.

Upvotes: 0

Tahir Masood
Tahir Masood

Reputation: 1

I had the same issue and it was stucking at Blue Screen which was FIXED by adding GoogleService-info.plist in the project. It can be added in Xcode or in iOS folder.

Please check logs if it's attempting to connect to firebase or has any firebase dependencies. If it does, then, check if you have added GoogleService-info.plist. You might be missing that.

After doing the clean, the build folder and run. Hopefully it will work fine.

Upvotes: 0

Javier Garcia
Javier Garcia

Reputation: 328

Could be the package_info_plus plugin, the white screen appear when you invoke the PackageInfo packageinfo = await PackageInfo.from Platform(); method before runApp(App());

Upvotes: 4

Bipin Vayalu
Bipin Vayalu

Reputation: 3145

Ohh, I finally found that this something Flutter framework issue with iOS 14 and later devices, Please checkout more details here: https://github.com/flutter/flutter/issues/60657#issuecomment-688478590

Upvotes: 4

MeepMeep
MeepMeep

Reputation: 71

As of 28 April 2021, what worked for me (after days of struggle):

in AppDelegate.swift (flutter-project/ios/Runner): Add these 2 lines:

FirebaseApp.configure()
GeneratedPluginRegistrant.register(with: self)

in terminal:

flutter build ios

Then run your project in XCode

Upvotes: 4

Doan Bui
Doan Bui

Reputation: 4418

I have encountered this problem.

My method is:

Run Packages upgrade in pubspec.yaml file

Hope to be able to help you.

Upvotes: 0

ibhavikmakwana
ibhavikmakwana

Reputation: 10091

Error log clearly saying that

The project's Bundle ID is inconsistent with either the Bundle ID in 'GoogleService-Info.plist', or the Bundle ID in the options if you are using a customized options. To ensure that everything can be configured correctly, you may need to make the Bundle IDs consistent. To continue with this plist file, you may change your app's bundle identifier to 'com.tethys.client'. Or you can download a new configuration file that matches your bundle identifier from https://console.firebase.google.com/ and replace the current one.

Try replacing your GoogleService-Info.plist from iOS project. Make sure it has a valid Bundle ID

Also, Make sure if you are running a below command before creating an archive or before distributing it.

flutter build ios --release

or

flutter build ios

flutter build defaults to --release.

Upvotes: 10

rstrelba
rstrelba

Reputation: 1954

flutter clean

flutter build --release

then XCode/Archive

Upvotes: -1

Related Questions