Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Commit 5f3ca14

Browse files
committed
Setup Firebase
1 parent 9d6225c commit 5f3ca14

11 files changed

+181
-0
lines changed

android/app/build.gradle

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,9 @@ if (flutterVersionName == null) {
2222
}
2323

2424
apply plugin: 'com.android.application'
25+
// START: FlutterFire Configuration
26+
apply plugin: 'com.google.gms.google-services'
27+
// END: FlutterFire Configuration
2528
apply plugin: 'kotlin-android'
2629
apply from: "$flutterRoot/packages/flutter_tools/gradle/flutter.gradle"
2730

android/app/google-services.json

Lines changed: 39 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,39 @@
1+
{
2+
"project_info": {
3+
"project_number": "758124052811",
4+
"project_id": "flutter-news-8c3d7",
5+
"storage_bucket": "flutter-news-8c3d7.appspot.com"
6+
},
7+
"client": [
8+
{
9+
"client_info": {
10+
"mobilesdk_app_id": "1:758124052811:android:f434793e0805ce4b3c68ce",
11+
"android_client_info": {
12+
"package_name": "com.ysn.flutter_news_app"
13+
}
14+
},
15+
"oauth_client": [
16+
{
17+
"client_id": "758124052811-s8ehiu2a9d024pc9pc7l9q4siu9i54mb.apps.googleusercontent.com",
18+
"client_type": 3
19+
}
20+
],
21+
"api_key": [
22+
{
23+
"current_key": "AIzaSyAEHB3CU5jRzUFhYKvhVbWxWf5RmsGIV-k"
24+
}
25+
],
26+
"services": {
27+
"appinvite_service": {
28+
"other_platform_oauth_client": [
29+
{
30+
"client_id": "758124052811-s8ehiu2a9d024pc9pc7l9q4siu9i54mb.apps.googleusercontent.com",
31+
"client_type": 3
32+
}
33+
]
34+
}
35+
}
36+
}
37+
],
38+
"configuration_version": "1"
39+
}

android/build.gradle

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,9 @@ buildscript {
77

88
dependencies {
99
classpath 'com.android.tools.build:gradle:4.1.0'
10+
// START: FlutterFire Configuration
11+
classpath 'com.google.gms:google-services:4.3.10'
12+
// END: FlutterFire Configuration
1013
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
1114
}
1215
}

ios/firebase_app_id_file.json

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
{
2+
"file_generated_by": "FlutterFire CLI",
3+
"purpose": "FirebaseAppID & ProjectID for this Firebase app in this directory",
4+
"GOOGLE_APP_ID": "1:758124052811:ios:2dd4583dd48a59843c68ce",
5+
"FIREBASE_PROJECT_ID": "flutter-news-8c3d7",
6+
"GCM_SENDER_ID": "758124052811"
7+
}

lib/firebase_options.dart

Lines changed: 83 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,83 @@
1+
// File generated by FlutterFire CLI.
2+
// ignore_for_file: lines_longer_than_80_chars, avoid_classes_with_only_static_members
3+
import 'package:firebase_core/firebase_core.dart' show FirebaseOptions;
4+
import 'package:flutter/foundation.dart'
5+
show defaultTargetPlatform, kIsWeb, TargetPlatform;
6+
7+
/// Default [FirebaseOptions] for use with your Firebase apps.
8+
///
9+
/// Example:
10+
/// ```dart
11+
/// import 'firebase_options.dart';
12+
/// // ...
13+
/// await Firebase.initializeApp(
14+
/// options: DefaultFirebaseOptions.currentPlatform,
15+
/// );
16+
/// ```
17+
class DefaultFirebaseOptions {
18+
static FirebaseOptions get currentPlatform {
19+
if (kIsWeb) {
20+
return web;
21+
}
22+
switch (defaultTargetPlatform) {
23+
case TargetPlatform.android:
24+
return android;
25+
case TargetPlatform.iOS:
26+
return ios;
27+
case TargetPlatform.macOS:
28+
return macos;
29+
case TargetPlatform.windows:
30+
throw UnsupportedError(
31+
'DefaultFirebaseOptions have not been configured for windows - '
32+
'you can reconfigure this by running the FlutterFire CLI again.',
33+
);
34+
case TargetPlatform.linux:
35+
throw UnsupportedError(
36+
'DefaultFirebaseOptions have not been configured for linux - '
37+
'you can reconfigure this by running the FlutterFire CLI again.',
38+
);
39+
default:
40+
throw UnsupportedError(
41+
'DefaultFirebaseOptions are not supported for this platform.',
42+
);
43+
}
44+
}
45+
46+
static const FirebaseOptions web = FirebaseOptions(
47+
apiKey: 'AIzaSyAqMmYgf00OVc6equ6AXXsW9zo89fbxtzQ',
48+
appId: '1:758124052811:web:4bf7e0c84dbf1a463c68ce',
49+
messagingSenderId: '758124052811',
50+
projectId: 'flutter-news-8c3d7',
51+
authDomain: 'flutter-news-8c3d7.firebaseapp.com',
52+
storageBucket: 'flutter-news-8c3d7.appspot.com',
53+
measurementId: 'G-86630CTV89',
54+
);
55+
56+
static const FirebaseOptions android = FirebaseOptions(
57+
apiKey: 'AIzaSyAEHB3CU5jRzUFhYKvhVbWxWf5RmsGIV-k',
58+
appId: '1:758124052811:android:f434793e0805ce4b3c68ce',
59+
messagingSenderId: '758124052811',
60+
projectId: 'flutter-news-8c3d7',
61+
storageBucket: 'flutter-news-8c3d7.appspot.com',
62+
);
63+
64+
static const FirebaseOptions ios = FirebaseOptions(
65+
apiKey: 'AIzaSyA_gK5e9tys4srJ_rw-4wQ_Dp_PQ7zcwBg',
66+
appId: '1:758124052811:ios:2dd4583dd48a59843c68ce',
67+
messagingSenderId: '758124052811',
68+
projectId: 'flutter-news-8c3d7',
69+
storageBucket: 'flutter-news-8c3d7.appspot.com',
70+
iosClientId: '758124052811-bsgc75rn2qng5vfsqhdi6hq3vpagtcu7.apps.googleusercontent.com',
71+
iosBundleId: 'com.ysn.flutterNewsApp',
72+
);
73+
74+
static const FirebaseOptions macos = FirebaseOptions(
75+
apiKey: 'AIzaSyA_gK5e9tys4srJ_rw-4wQ_Dp_PQ7zcwBg',
76+
appId: '1:758124052811:ios:2dd4583dd48a59843c68ce',
77+
messagingSenderId: '758124052811',
78+
projectId: 'flutter-news-8c3d7',
79+
storageBucket: 'flutter-news-8c3d7.appspot.com',
80+
iosClientId: '758124052811-bsgc75rn2qng5vfsqhdi6hq3vpagtcu7.apps.googleusercontent.com',
81+
iosBundleId: 'com.ysn.flutterNewsApp',
82+
);
83+
}

lib/main.dart

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,22 @@
11
import 'dart:async';
22

33
import 'package:easy_localization/easy_localization.dart';
4+
import 'package:firebase_core/firebase_core.dart';
45
import 'package:flutter/material.dart';
56
import 'package:flutter_news_app/app.dart';
67
import 'package:flutter_news_app/config/base_url_config.dart';
78
import 'package:flutter_news_app/config/flavor_config.dart';
89
import 'package:flutter_news_app/core/util/constant_value.dart';
10+
import 'package:flutter_news_app/firebase_options.dart';
911

1012
void main() async {
1113
WidgetsFlutterBinding.ensureInitialized();
1214
await EasyLocalization.ensureInitialized();
1315
final constantColor = ConstantColor();
1416
final baseUrlConfig = BaseUrlConfig();
17+
await Firebase.initializeApp(
18+
options: DefaultFirebaseOptions.currentPlatform,
19+
);
1520
FlavorConfig(
1621
flavor: Flavor.production,
1722
colorPrimary: constantColor.primaryColor500,

lib/main_development.dart

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,20 @@
11
import 'package:easy_localization/easy_localization.dart';
2+
import 'package:firebase_core/firebase_core.dart';
23
import 'package:flutter/material.dart';
34
import 'package:flutter_news_app/app.dart';
45
import 'package:flutter_news_app/config/base_url_config.dart';
56
import 'package:flutter_news_app/config/flavor_config.dart';
67
import 'package:flutter_news_app/core/util/constant_value.dart';
8+
import 'package:flutter_news_app/firebase_options.dart';
79

810
void main() async {
911
WidgetsFlutterBinding.ensureInitialized();
1012
await EasyLocalization.ensureInitialized();
1113
final constantColor = ConstantColor();
1214
final baseUrlConfig = BaseUrlConfig();
15+
await Firebase.initializeApp(
16+
options: DefaultFirebaseOptions.currentPlatform,
17+
);
1318
FlavorConfig(
1419
flavor: Flavor.development,
1520
colorPrimary: constantColor.primaryColor500,

lib/main_production.dart

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,22 @@
11
import 'dart:async';
22

33
import 'package:easy_localization/easy_localization.dart';
4+
import 'package:firebase_core/firebase_core.dart';
45
import 'package:flutter/material.dart';
56
import 'package:flutter_news_app/app.dart';
67
import 'package:flutter_news_app/config/base_url_config.dart';
78
import 'package:flutter_news_app/config/flavor_config.dart';
89
import 'package:flutter_news_app/core/util/constant_value.dart';
10+
import 'package:flutter_news_app/firebase_options.dart';
911

1012
void main() async {
1113
WidgetsFlutterBinding.ensureInitialized();
1214
await EasyLocalization.ensureInitialized();
1315
final constantColor = ConstantColor();
1416
final baseUrlConfig = BaseUrlConfig();
17+
await Firebase.initializeApp(
18+
options: DefaultFirebaseOptions.currentPlatform,
19+
);
1520
FlavorConfig(
1621
flavor: Flavor.production,
1722
colorPrimary: constantColor.primaryColor500,

macos/firebase_app_id_file.json

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
{
2+
"file_generated_by": "FlutterFire CLI",
3+
"purpose": "FirebaseAppID & ProjectID for this Firebase app in this directory",
4+
"GOOGLE_APP_ID": "1:758124052811:ios:2dd4583dd48a59843c68ce",
5+
"FIREBASE_PROJECT_ID": "flutter-news-8c3d7",
6+
"GCM_SENDER_ID": "758124052811"
7+
}

pubspec.lock

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -337,6 +337,27 @@ packages:
337337
url: "https://pub.dartlang.org"
338338
source: hosted
339339
version: "6.1.2"
340+
firebase_core:
341+
dependency: "direct main"
342+
description:
343+
name: firebase_core
344+
url: "https://pub.dartlang.org"
345+
source: hosted
346+
version: "1.19.1"
347+
firebase_core_platform_interface:
348+
dependency: transitive
349+
description:
350+
name: firebase_core_platform_interface
351+
url: "https://pub.dartlang.org"
352+
source: hosted
353+
version: "4.4.3"
354+
firebase_core_web:
355+
dependency: transitive
356+
description:
357+
name: firebase_core_web
358+
url: "https://pub.dartlang.org"
359+
source: hosted
360+
version: "1.6.6"
340361
fixnum:
341362
dependency: transitive
342363
description:

pubspec.yaml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -69,6 +69,9 @@ dependencies:
6969
# and SharedPreferences on Android.
7070
shared_preferences: ^2.0.15
7171

72+
# Flutter plugin for Firebase Core, enabling connecting to multiple Firebase apps.
73+
firebase_core: ^1.19.1
74+
7275
dev_dependencies:
7376
flutter_test:
7477
sdk: flutter

0 commit comments

Comments
 (0)