'Importing Firebase Module in Flutter Project gives Error : Execution failed for task ':app:compileFlutterBuildDebug'

I want to use Firebase Authentication in my Flutter app. For that, i have added firebase dependencies in my project like:

pubspec.yaml

dependencies:
  flutter:
    sdk: flutter


  # The following adds the Cupertino Icons font to your application.
  # Use with the CupertinoIcons class for iOS style icons.
  cupertino_icons: ^1.0.2
  services: ^0.0.1
  firebase_core: ^0.5.3
  firebase_auth: ^0.18.4

But when i try to import firebase_core or firebase_auth, build fails and gives me the error:

* What went wrong:
Execution failed for task ':app:compileFlutterBuildDebug'.

otp_screen.dart

import 'package:ble_app_flutter/screens/update_profile.dart';
// import 'package:firebase_auth/firebase_auth.dart';
import 'package:flutter/material.dart';
import 'package:flutter/services.dart';
import 'package:firebase_core/firebase_core.dart';
// import 'firebase_options.dart';
// import 'package:flutter/services.dart';

class OTPScreen extends StatelessWidget {
  const OTPScreen({Key? key}) : super(key: key);

  @override
  Widget build(BuildContext context) {
    // WidgetsFlutterBinding.ensureInitialized();
    // Firebase.initializeApp();

    FocusNode firstNode = new FocusNode();
    FocusNode secondNode = new FocusNode();
    FocusNode thirdNode = new FocusNode();
    FocusNode fourthNode = new FocusNode();
    FocusNode fifthNode = new FocusNode();
    FocusNode sixthNode = new FocusNode();

    return Scaffold(
        appBar: AppBar(title: Text("OTP")),
        body: Column(
          children: [
            Container(
                child: Text("We have sent you an OTP",
                    textAlign: TextAlign.center),
                margin: EdgeInsets.all(50)),
            Container(
                child: Text(
                    "Enter the 6 digit OTP sent on +919999999999 to proceed",
                    textAlign: TextAlign.center),
                margin: EdgeInsets.only(bottom: 25)),
            Row(mainAxisSize: MainAxisSize.min, children: [
              Container(
                padding: EdgeInsets.all(10),
                decoration: BoxDecoration(
                  color: const Color(0xffE0E9FE),
                  borderRadius: BorderRadius.circular(10),
                ),
                child: TextFormField(
                    focusNode: firstNode,
                    textInputAction: TextInputAction.next,
                    autofocus: true,
                    onChanged: (String value) {
                      FocusScope.of(context).unfocus();
                      FocusScope.of(context).requestFocus(secondNode);
                    },
                    inputFormatters: [
                      LengthLimitingTextInputFormatter(1),
                    ],
                    decoration: InputDecoration(border: InputBorder.none)),
                margin: EdgeInsets.only(left: 10),
                width: 50,
              ),
              Container(
                padding: EdgeInsets.all(10),
                decoration: BoxDecoration(
                  color: const Color(0xffE0E9FE),
                  borderRadius: BorderRadius.circular(10),
                ),
                child: TextFormField(
                    onChanged: (String value) =>
                        {FocusScope.of(context).requestFocus(thirdNode)},
                    focusNode: secondNode,
                    textInputAction: TextInputAction.next,
                    autofocus: true,
                    inputFormatters: [
                      LengthLimitingTextInputFormatter(1),
                    ],
                    decoration: InputDecoration(border: InputBorder.none)),
                margin: EdgeInsets.only(left: 10),
                width: 50,
              ),
              Container(
                padding: EdgeInsets.all(10),
                decoration: BoxDecoration(
                  color: const Color(0xffE0E9FE),
                  borderRadius: BorderRadius.circular(10),
                ),
                child: TextFormField(
                    focusNode: thirdNode,
                    onChanged: (String value) =>
                        {FocusScope.of(context).requestFocus(fourthNode)},
                    inputFormatters: [
                      LengthLimitingTextInputFormatter(1),
                    ],
                    decoration: InputDecoration(border: InputBorder.none)),
                margin: EdgeInsets.only(left: 10),
                width: 50,
              ),
              Container(
                padding: EdgeInsets.all(10),
                decoration: BoxDecoration(
                  color: const Color(0xffE0E9FE),
                  borderRadius: BorderRadius.circular(10),
                ),
                child: TextFormField(
                    focusNode: fourthNode,
                    onChanged: (String value) =>
                        {FocusScope.of(context).requestFocus(fifthNode)},
                    inputFormatters: [
                      LengthLimitingTextInputFormatter(1),
                    ],
                    decoration: InputDecoration(border: InputBorder.none)),
                margin: EdgeInsets.only(left: 10),
                width: 50,
              ),
              Container(
                padding: EdgeInsets.all(10),
                decoration: BoxDecoration(
                  color: const Color(0xffE0E9FE),
                  borderRadius: BorderRadius.circular(10),
                ),
                child: TextFormField(
                    focusNode: fifthNode,
                    onChanged: (String value) =>
                        {FocusScope.of(context).requestFocus(sixthNode)},
                    inputFormatters: [
                      LengthLimitingTextInputFormatter(1),
                    ],
                    decoration: InputDecoration(border: InputBorder.none)),
                margin: EdgeInsets.only(left: 10),
                width: 50,
              ),
              Container(
                padding: EdgeInsets.all(10),
                decoration: BoxDecoration(
                  color: const Color(0xffE0E9FE),
                  borderRadius: BorderRadius.circular(10),
                ),
                child: TextFormField(
                    focusNode: sixthNode,
                    inputFormatters: [
                      LengthLimitingTextInputFormatter(1),
                    ],
                    decoration: InputDecoration(border: InputBorder.none)),
                margin: EdgeInsets.only(left: 10),
                width: 50,
              ),
            ]),
            Container(
                width: double.infinity,
                decoration: BoxDecoration(
                  color: const Color(0xFF28028A),
                  borderRadius: BorderRadius.circular(10),
                ),
                padding: EdgeInsets.all(20),
                child: InkWell(
                  onTap: () {
                    // Navigator.of(context).push(MaterialPageRoute(
                    //     builder: (context) => UpdateProfile()));
                  },
                  child: Text("VERIFY",
                      textAlign: TextAlign.center,
                      style: TextStyle(color: Colors.white)),
                ),
                margin: EdgeInsets.all(50)),
          ],
        ));
  }


}


Sources

This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.

Source: Stack Overflow

Solution Source