Skip to content

Commit a2a21cc

Browse files
committed
feat: integrate Firebase
- Added firebase configuration files - Configured for Android and Web - Generated firebase_options.dart
1 parent d02f24d commit a2a21cc

File tree

7 files changed

+130
-0
lines changed

7 files changed

+130
-0
lines changed

android/app/build.gradle.kts

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,8 @@
11
plugins {
22
id("com.android.application")
3+
// START: FlutterFire Configuration
4+
id("com.google.gms.google-services")
5+
// END: FlutterFire Configuration
36
id("kotlin-android")
47
// The Flutter Gradle Plugin must be applied after the Android and Kotlin Gradle plugins.
58
id("dev.flutter.flutter-gradle-plugin")

android/app/google-services.json

Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
{
2+
"project_info": {
3+
"project_number": "420644261437",
4+
"project_id": "headlines-toolkit",
5+
"storage_bucket": "headlines-toolkit.firebasestorage.app"
6+
},
7+
"client": [
8+
{
9+
"client_info": {
10+
"mobilesdk_app_id": "1:420644261437:android:3fa3052f883bf86958a454",
11+
"android_client_info": {
12+
"package_name": "com.example.ht_main"
13+
}
14+
},
15+
"oauth_client": [],
16+
"api_key": [
17+
{
18+
"current_key": "AIzaSyD1LsqoCRmsIbr9zgFyYXg7PGE7qhn3Uvs"
19+
}
20+
],
21+
"services": {
22+
"appinvite_service": {
23+
"other_platform_oauth_client": []
24+
}
25+
}
26+
}
27+
],
28+
"configuration_version": "1"
29+
}

android/settings.gradle.kts

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,9 @@ pluginManagement {
1919
plugins {
2020
id("dev.flutter.flutter-plugin-loader") version "1.0.0"
2121
id("com.android.application") version "8.7.0" apply false
22+
// START: FlutterFire Configuration
23+
id("com.google.gms.google-services") version("4.3.15") apply false
24+
// END: FlutterFire Configuration
2225
id("org.jetbrains.kotlin.android") version "1.8.22" apply false
2326
}
2427

firebase.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
{"flutter":{"platforms":{"android":{"default":{"projectId":"headlines-toolkit","appId":"1:420644261437:android:3fa3052f883bf86958a454","fileOutput":"android/app/google-services.json"}},"dart":{"lib/firebase_options.dart":{"projectId":"headlines-toolkit","configurations":{"android":"1:420644261437:android:3fa3052f883bf86958a454","web":"1:420644261437:web:c20af2372a50f7c958a454"}}}}}}

lib/firebase_options.dart

Lines changed: 69 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,69 @@
1+
// File generated by FlutterFire CLI.
2+
// ignore_for_file: type=lint
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+
throw UnsupportedError(
27+
'DefaultFirebaseOptions have not been configured for ios - '
28+
'you can reconfigure this by running the FlutterFire CLI again.',
29+
);
30+
case TargetPlatform.macOS:
31+
throw UnsupportedError(
32+
'DefaultFirebaseOptions have not been configured for macos - '
33+
'you can reconfigure this by running the FlutterFire CLI again.',
34+
);
35+
case TargetPlatform.windows:
36+
throw UnsupportedError(
37+
'DefaultFirebaseOptions have not been configured for windows - '
38+
'you can reconfigure this by running the FlutterFire CLI again.',
39+
);
40+
case TargetPlatform.linux:
41+
throw UnsupportedError(
42+
'DefaultFirebaseOptions have not been configured for linux - '
43+
'you can reconfigure this by running the FlutterFire CLI again.',
44+
);
45+
default:
46+
throw UnsupportedError(
47+
'DefaultFirebaseOptions are not supported for this platform.',
48+
);
49+
}
50+
}
51+
52+
static const FirebaseOptions web = FirebaseOptions(
53+
apiKey: 'AIzaSyCNas7jJch6P5f33O2Ag2GD6FbRHVaYjZQ',
54+
appId: '1:420644261437:web:c20af2372a50f7c958a454',
55+
messagingSenderId: '420644261437',
56+
projectId: 'headlines-toolkit',
57+
authDomain: 'headlines-toolkit.firebaseapp.com',
58+
storageBucket: 'headlines-toolkit.firebasestorage.app',
59+
measurementId: 'G-WXK52X9VZL',
60+
);
61+
62+
static const FirebaseOptions android = FirebaseOptions(
63+
apiKey: 'AIzaSyD1LsqoCRmsIbr9zgFyYXg7PGE7qhn3Uvs',
64+
appId: '1:420644261437:android:3fa3052f883bf86958a454',
65+
messagingSenderId: '420644261437',
66+
projectId: 'headlines-toolkit',
67+
storageBucket: 'headlines-toolkit.firebasestorage.app',
68+
);
69+
}

pubspec.lock

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -153,6 +153,30 @@ packages:
153153
url: "https://pub.dev"
154154
source: hosted
155155
version: "7.0.1"
156+
firebase_core:
157+
dependency: "direct main"
158+
description:
159+
name: firebase_core
160+
sha256: f4d8f49574a4e396f34567f3eec4d38ab9c3910818dec22ca42b2a467c685d8b
161+
url: "https://pub.dev"
162+
source: hosted
163+
version: "3.12.1"
164+
firebase_core_platform_interface:
165+
dependency: transitive
166+
description:
167+
name: firebase_core_platform_interface
168+
sha256: d7253d255ff10f85cfd2adaba9ac17bae878fa3ba577462451163bd9f1d1f0bf
169+
url: "https://pub.dev"
170+
source: hosted
171+
version: "5.4.0"
172+
firebase_core_web:
173+
dependency: transitive
174+
description:
175+
name: firebase_core_web
176+
sha256: faa5a76f6380a9b90b53bc3bdcb85bc7926a382e0709b9b5edac9f7746651493
177+
url: "https://pub.dev"
178+
source: hosted
179+
version: "2.21.1"
156180
flex_color_scheme:
157181
dependency: "direct main"
158182
description:

pubspec.yaml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@ dependencies:
1010
bloc: ^9.0.0
1111
bloc_concurrency: ^0.3.0
1212
equatable: ^2.0.7
13+
firebase_core: ^3.12.1
1314
flex_color_scheme: ^8.1.1
1415
flutter:
1516
sdk: flutter

0 commit comments

Comments
 (0)