Steps to Reproduce
We have seen this crash in the wild happening to a number of users. I am unsure how to reproduce it but it has been showing up in crashlytics frequently.
Fatal Exception: java.lang.RuntimeException: Unable to start activity ComponentInfo{com.bottlepay.sandbox/com.bottlepay.MainActivity}: java.lang.NullPointerException: Attempt to invoke virtual method 'boolean io.flutter.embedding.android.FlutterFragment.isFlutterEngineInjected()' on a null object reference
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3431)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3595)
at android.app.servertransaction.LaunchActivityItem.execute(LaunchActivityItem.java:85)
at android.app.servertransaction.TransactionExecutor.executeCallbacks(TransactionExecutor.java:135)
at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:95)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2066)
at android.os.Handler.dispatchMessage(Handler.java:106)
at android.os.Looper.loop(Looper.java:223)
at android.app.ActivityThread.main(ActivityThread.java:7660)
at java.lang.reflect.Method.invoke(Method.java)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:592)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:947)
Caused by java.lang.NullPointerException: Attempt to invoke virtual method 'boolean io.flutter.embedding.android.FlutterFragment.isFlutterEngineInjected()' on a null object reference
at io.flutter.embedding.android.FlutterFragmentActivity.configureFlutterEngine(FlutterFragmentActivity.java:591)
at io.flutter.embedding.android.FlutterFragment.configureFlutterEngine(FlutterFragment.java:1105)
at io.flutter.embedding.android.FlutterActivityAndFragmentDelegate.onAttach(FlutterActivityAndFragmentDelegate.java:180)
at io.flutter.embedding.android.FlutterFragment.onAttach(FlutterFragment.java:677)
at androidx.fragment.app.Fragment.performAttach(Fragment.java:2922)
at androidx.fragment.app.FragmentStateManager.attach(FragmentStateManager.java:464)
at androidx.fragment.app.FragmentStateManager.moveToExpectedState(FragmentStateManager.java:275)
at androidx.fragment.app.FragmentStore.moveToExpectedState(FragmentStore.java:112)
at androidx.fragment.app.FragmentManager.moveToState(FragmentManager.java:1647)
at androidx.fragment.app.FragmentManager.dispatchStateChange(FragmentManager.java:3126)
at androidx.fragment.app.FragmentManager.dispatchCreate(FragmentManager.java:3059)
at androidx.fragment.app.FragmentController.dispatchCreate(FragmentController.java:240)
at androidx.fragment.app.FragmentActivity.onCreate(FragmentActivity.java:276)
at io.flutter.embedding.android.FlutterFragmentActivity.onCreate(FlutterFragmentActivity.java:245)
at android.app.Activity.performCreate(Activity.java:8000)
at android.app.Activity.performCreate(Activity.java:7984)
at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1309)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3404)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3595)
at android.app.servertransaction.LaunchActivityItem.execute(LaunchActivityItem.java:85)
at android.app.servertransaction.TransactionExecutor.executeCallbacks(TransactionExecutor.java:135)
at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:95)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2066)
at android.os.Handler.dispatchMessage(Handler.java:106)
at android.os.Looper.loop(Looper.java:223)
at android.app.ActivityThread.main(ActivityThread.java:7660)
at java.lang.reflect.Method.invoke(Method.java)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:592)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:947)
Affected devices:
- Pixel 4 XL - Android 11
- Pixel 4 - Android 11
- Galaxy S8 - Android 8.0.0
- Galaxy A71 - Android 11
- Xperia XZ2 Compact - Android 10
- Galaxy Note10+ 5G - Android 11
- Galaxy A51 - Android 11
- HUAWEI P30 lite - Android 10
- Xperia 1 - Android 11
- Galaxy S10 - Android 11
- Pixel 2 - Android 11
- Pixel 3a - Android 11
- Galaxy Note20 Ultra 5G - Android 11
- Galaxy S10+ - Android 11
- Pixel 5 - Android 11
- Xperia 10 II - Android 11
- Xiaomi Mi 11 - Android 11
- HUAWEI Y6 2019 - Android 9
- moto g(8) power lite - Android 10
- Pixel 4a - Android 11
and more- we have 393 crashes from this in the last 30 days.
Looking back at what flutter version would be included, it was 2.3.0-0.1.pre (dev channel).
Expected results:
Flutter app should not crash at startup.
Actual results:
App immediately crashes for some users.
Logs
[✓] Flutter (Channel dev, 2.3.0-12.1.pre, on macOS 11.3.1 20E241 darwin-arm, locale en-US)
• Flutter version 2.3.0-12.1.pre at /Users/andrewcoutts/Projects/flutter
• Upstream repository git@github.com:flutter/flutter.git
• Framework revision f9c825981c (11 days ago), 2021-05-18 14:07:52 -0700
• Engine revision 26e217e6c3
• Dart version 2.14.0 (build 2.14.0-edge.a527411e5100a0a4f48c4009087a1b988aa784af)
[✓] Android toolchain - develop for Android devices (Android SDK version 30.0.3)
• Android SDK at /Users/andrewcoutts/Library/Android/sdk
• Platform android-30, build-tools 30.0.3
• ANDROID_HOME = /Users/andrewcoutts/Library/Android/sdk
• Java binary at: /Applications/Android Studio.app/Contents/jre/jdk/Contents/Home/bin/java
• Java version OpenJDK Runtime Environment (build 1.8.0_242-release-1644-b3-6915495)
• All Android licenses accepted.
[✓] Xcode - develop for iOS and macOS
• Xcode at /Applications/Xcode.app/Contents/Developer
• Xcode 12.5, Build version 12E262
• CocoaPods version 1.10.1
[✓] Chrome - develop for the web
• Chrome at /Applications/Google Chrome.app/Contents/MacOS/Google Chrome
[✓] Android Studio (version 4.1)
• Android Studio at /Applications/Android Studio.app/Contents
• Flutter plugin can be installed from:
🔨 https://plugins.jetbrains.com/plugin/9212-flutter
• Dart plugin can be installed from:
🔨 https://plugins.jetbrains.com/plugin/6351-dart
• Java version OpenJDK Runtime Environment (build 1.8.0_242-release-1644-b3-6915495)
[✓] VS Code (version 1.54.1)
• VS Code at /Applications/Visual Studio Code.app/Contents
• Flutter extension can be installed from:
🔨 https://marketplace.visualstudio.com/items?itemName=Dart-Code.flutter
[✓] VS Code (version 1.57.0-insider)
• VS Code at /Applications/Visual Studio Code - Insiders.app/Contents
• Flutter extension version 3.22.0
[✓] Connected device (2 available)
• iPhone 12 Pro Max (mobile) • EFD575D6-D986-42B2-89A6-821FA97FD09D • ios • com.apple.CoreSimulator.SimRuntime.iOS-14-5 (simulator)
• Chrome (web) • chrome • web-javascript • Google Chrome 91.0.4472.77
• No issues found!
Steps to Reproduce
We have seen this crash in the wild happening to a number of users. I am unsure how to reproduce it but it has been showing up in crashlytics frequently.
Affected devices:
and more- we have 393 crashes from this in the last 30 days.
Looking back at what flutter version would be included, it was
2.3.0-0.1.pre(dev channel).Expected results:
Flutter app should not crash at startup.
Actual results:
App immediately crashes for some users.
Logs