chore: setup firebase

This commit is contained in:
2025-05-21 13:13:40 +01:00
parent b8422291a5
commit 99ec8cfbf7
10 changed files with 177 additions and 0 deletions

View File

@ -8,6 +8,9 @@ import java.util.Properties
plugins { plugins {
id("com.android.application") id("com.android.application")
// START: FlutterFire Configuration
id("com.google.gms.google-services")
// END: FlutterFire Configuration
id("kotlin-android") id("kotlin-android")
id("dev.flutter.flutter-gradle-plugin") id("dev.flutter.flutter-gradle-plugin")
} }

View File

@ -0,0 +1,29 @@
{
"project_info": {
"project_number": "953923151748",
"project_id": "nostrlabs",
"storage_bucket": "nostrlabs.firebasestorage.app"
},
"client": [
{
"client_info": {
"mobilesdk_app_id": "1:953923151748:android:8536cdc7f75edc9f9e9fd1",
"android_client_info": {
"package_name": "io.nostrlabs.zap_stream_flutter"
}
},
"oauth_client": [],
"api_key": [
{
"current_key": "AIzaSyAdpxIN8DR1-mh8MCjHU0mDtaUAk6xda6w"
}
],
"services": {
"appinvite_service": {
"other_platform_oauth_client": []
}
}
}
],
"configuration_version": "1"
}

View File

@ -19,6 +19,9 @@ pluginManagement {
plugins { plugins {
id("dev.flutter.flutter-plugin-loader") version "1.0.0" id("dev.flutter.flutter-plugin-loader") version "1.0.0"
id("com.android.application") version "8.7.0" apply false id("com.android.application") version "8.7.0" apply false
// START: FlutterFire Configuration
id("com.google.gms.google-services") version("4.3.15") apply false
// END: FlutterFire Configuration
id("org.jetbrains.kotlin.android") version "1.8.22" apply false id("org.jetbrains.kotlin.android") version "1.8.22" apply false
} }

25
firebase.json Normal file
View File

@ -0,0 +1,25 @@
{
"flutter": {
"platforms": {
"android": {
"default": {
"projectId": "nostrlabs",
"appId": "1:953923151748:android:8536cdc7f75edc9f9e9fd1",
"fileOutput": "android/app/google-services.json"
}
},
"dart": {
"lib/firebase_options.dart": {
"projectId": "nostrlabs",
"configurations": {
"android": "1:953923151748:android:8536cdc7f75edc9f9e9fd1",
"ios": "1:953923151748:ios:30ec9a230e55fe139e9fd1",
"macos": "1:953923151748:ios:19516d42a1cc02229e9fd1",
"web": "1:953923151748:web:f04633c33f9343b19e9fd1",
"windows": "1:953923151748:web:6b9a6be6798644909e9fd1"
}
}
}
}
}
}

86
lib/firebase_options.dart Normal file
View File

@ -0,0 +1,86 @@
// File generated by FlutterFire CLI.
// ignore_for_file: type=lint
import 'package:firebase_core/firebase_core.dart' show FirebaseOptions;
import 'package:flutter/foundation.dart'
show defaultTargetPlatform, kIsWeb, TargetPlatform;
/// Default [FirebaseOptions] for use with your Firebase apps.
///
/// Example:
/// ```dart
/// import 'firebase_options.dart';
/// // ...
/// await Firebase.initializeApp(
/// options: DefaultFirebaseOptions.currentPlatform,
/// );
/// ```
class DefaultFirebaseOptions {
static FirebaseOptions get currentPlatform {
if (kIsWeb) {
return web;
}
switch (defaultTargetPlatform) {
case TargetPlatform.android:
return android;
case TargetPlatform.iOS:
return ios;
case TargetPlatform.macOS:
return macos;
case TargetPlatform.windows:
return windows;
case TargetPlatform.linux:
throw UnsupportedError(
'DefaultFirebaseOptions have not been configured for linux - '
'you can reconfigure this by running the FlutterFire CLI again.',
);
default:
throw UnsupportedError(
'DefaultFirebaseOptions are not supported for this platform.',
);
}
}
static const FirebaseOptions web = FirebaseOptions(
apiKey: 'AIzaSyDd9GBruNVBv2qrwv0CGvYeby0ALtTlFKk',
appId: '1:953923151748:web:f04633c33f9343b19e9fd1',
messagingSenderId: '953923151748',
projectId: 'nostrlabs',
authDomain: 'nostrlabs.firebaseapp.com',
storageBucket: 'nostrlabs.firebasestorage.app',
);
static const FirebaseOptions android = FirebaseOptions(
apiKey: 'AIzaSyAdpxIN8DR1-mh8MCjHU0mDtaUAk6xda6w',
appId: '1:953923151748:android:8536cdc7f75edc9f9e9fd1',
messagingSenderId: '953923151748',
projectId: 'nostrlabs',
storageBucket: 'nostrlabs.firebasestorage.app',
);
static const FirebaseOptions ios = FirebaseOptions(
apiKey: 'AIzaSyByygErXpki6Q7NXOXTHbRgg3-Tw-KCVO0',
appId: '1:953923151748:ios:30ec9a230e55fe139e9fd1',
messagingSenderId: '953923151748',
projectId: 'nostrlabs',
storageBucket: 'nostrlabs.firebasestorage.app',
iosBundleId: 'io.nostrlabs.zapStreamFlutter',
);
static const FirebaseOptions macos = FirebaseOptions(
apiKey: 'AIzaSyByygErXpki6Q7NXOXTHbRgg3-Tw-KCVO0',
appId: '1:953923151748:ios:19516d42a1cc02229e9fd1',
messagingSenderId: '953923151748',
projectId: 'nostrlabs',
storageBucket: 'nostrlabs.firebasestorage.app',
iosBundleId: 'com.example.zapStreamFlutter',
);
static const FirebaseOptions windows = FirebaseOptions(
apiKey: 'AIzaSyDd9GBruNVBv2qrwv0CGvYeby0ALtTlFKk',
appId: '1:953923151748:web:6b9a6be6798644909e9fd1',
messagingSenderId: '953923151748',
projectId: 'nostrlabs',
authDomain: 'nostrlabs.firebaseapp.com',
storageBucket: 'nostrlabs.firebasestorage.app',
);
}

View File

@ -7,6 +7,7 @@ import Foundation
import emoji_picker_flutter import emoji_picker_flutter
import file_selector_macos import file_selector_macos
import firebase_core
import flutter_secure_storage_macos import flutter_secure_storage_macos
import objectbox_flutter_libs import objectbox_flutter_libs
import package_info_plus import package_info_plus
@ -21,6 +22,7 @@ import wakelock_plus
func RegisterGeneratedPlugins(registry: FlutterPluginRegistry) { func RegisterGeneratedPlugins(registry: FlutterPluginRegistry) {
EmojiPickerFlutterPlugin.register(with: registry.registrar(forPlugin: "EmojiPickerFlutterPlugin")) EmojiPickerFlutterPlugin.register(with: registry.registrar(forPlugin: "EmojiPickerFlutterPlugin"))
FileSelectorPlugin.register(with: registry.registrar(forPlugin: "FileSelectorPlugin")) FileSelectorPlugin.register(with: registry.registrar(forPlugin: "FileSelectorPlugin"))
FLTFirebaseCorePlugin.register(with: registry.registrar(forPlugin: "FLTFirebaseCorePlugin"))
FlutterSecureStoragePlugin.register(with: registry.registrar(forPlugin: "FlutterSecureStoragePlugin")) FlutterSecureStoragePlugin.register(with: registry.registrar(forPlugin: "FlutterSecureStoragePlugin"))
ObjectboxFlutterLibsPlugin.register(with: registry.registrar(forPlugin: "ObjectboxFlutterLibsPlugin")) ObjectboxFlutterLibsPlugin.register(with: registry.registrar(forPlugin: "ObjectboxFlutterLibsPlugin"))
FPPPackageInfoPlusPlugin.register(with: registry.registrar(forPlugin: "FPPPackageInfoPlusPlugin")) FPPPackageInfoPlusPlugin.register(with: registry.registrar(forPlugin: "FPPPackageInfoPlusPlugin"))

View File

@ -281,6 +281,30 @@ packages:
url: "https://pub.dev" url: "https://pub.dev"
source: hosted source: hosted
version: "0.9.3+4" version: "0.9.3+4"
firebase_core:
dependency: "direct main"
description:
name: firebase_core
sha256: "8cfe3c900512399ce8d50fcc817e5758ff8615eeb6fa5c846a4cc47bbf6353b6"
url: "https://pub.dev"
source: hosted
version: "3.13.1"
firebase_core_platform_interface:
dependency: transitive
description:
name: firebase_core_platform_interface
sha256: d7253d255ff10f85cfd2adaba9ac17bae878fa3ba577462451163bd9f1d1f0bf
url: "https://pub.dev"
source: hosted
version: "5.4.0"
firebase_core_web:
dependency: transitive
description:
name: firebase_core_web
sha256: ddd72baa6f727e5b23f32d9af23d7d453d67946f380bd9c21daf474ee0f7326e
url: "https://pub.dev"
source: hosted
version: "2.23.0"
fixnum: fixnum:
dependency: transitive dependency: transitive
description: description:

View File

@ -39,6 +39,7 @@ dependencies:
intl: ^0.19.0 intl: ^0.19.0
flutter_localizations: flutter_localizations:
sdk: flutter sdk: flutter
firebase_core: ^3.13.1
dependency_overrides: dependency_overrides:
ndk: ndk:

View File

@ -8,6 +8,7 @@
#include <emoji_picker_flutter/emoji_picker_flutter_plugin_c_api.h> #include <emoji_picker_flutter/emoji_picker_flutter_plugin_c_api.h>
#include <file_selector_windows/file_selector_windows.h> #include <file_selector_windows/file_selector_windows.h>
#include <firebase_core/firebase_core_plugin_c_api.h>
#include <flutter_secure_storage_windows/flutter_secure_storage_windows_plugin.h> #include <flutter_secure_storage_windows/flutter_secure_storage_windows_plugin.h>
#include <objectbox_flutter_libs/objectbox_flutter_libs_plugin.h> #include <objectbox_flutter_libs/objectbox_flutter_libs_plugin.h>
#include <share_plus/share_plus_windows_plugin_c_api.h> #include <share_plus/share_plus_windows_plugin_c_api.h>
@ -18,6 +19,8 @@ void RegisterPlugins(flutter::PluginRegistry* registry) {
registry->GetRegistrarForPlugin("EmojiPickerFlutterPluginCApi")); registry->GetRegistrarForPlugin("EmojiPickerFlutterPluginCApi"));
FileSelectorWindowsRegisterWithRegistrar( FileSelectorWindowsRegisterWithRegistrar(
registry->GetRegistrarForPlugin("FileSelectorWindows")); registry->GetRegistrarForPlugin("FileSelectorWindows"));
FirebaseCorePluginCApiRegisterWithRegistrar(
registry->GetRegistrarForPlugin("FirebaseCorePluginCApi"));
FlutterSecureStorageWindowsPluginRegisterWithRegistrar( FlutterSecureStorageWindowsPluginRegisterWithRegistrar(
registry->GetRegistrarForPlugin("FlutterSecureStorageWindowsPlugin")); registry->GetRegistrarForPlugin("FlutterSecureStorageWindowsPlugin"));
ObjectboxFlutterLibsPluginRegisterWithRegistrar( ObjectboxFlutterLibsPluginRegisterWithRegistrar(

View File

@ -5,6 +5,7 @@
list(APPEND FLUTTER_PLUGIN_LIST list(APPEND FLUTTER_PLUGIN_LIST
emoji_picker_flutter emoji_picker_flutter
file_selector_windows file_selector_windows
firebase_core
flutter_secure_storage_windows flutter_secure_storage_windows
objectbox_flutter_libs objectbox_flutter_libs
share_plus share_plus