feat: Implement Firebase push notifications with support for flavor-specific configurations.

This commit is contained in:
pradeepkumar
2026-03-08 21:55:52 +05:30
parent 744b7b7ca8
commit e129be5a59
26 changed files with 974 additions and 124 deletions

View File

@@ -3,6 +3,7 @@ plugins {
id("kotlin-android")
// The Flutter Gradle Plugin must be applied after the Android and Kotlin Gradle plugins.
id("dev.flutter.flutter-gradle-plugin")
id("com.google.gms.google-services")
}
android {

View File

@@ -0,0 +1,48 @@
{
"project_info": {
"project_number": "703616926518",
"project_id": "real-estate-2d71e",
"storage_bucket": "real-estate-2d71e.firebasestorage.app"
},
"client": [
{
"client_info": {
"mobilesdk_app_id": "1:703616926518:android:270639d6887d2cb4fca997",
"android_client_info": {
"package_name": "com.requestn.real_estate_mobile.demo"
}
},
"oauth_client": [],
"api_key": [
{
"current_key": "AIzaSyAwb_9fc7n9gbN_IQqWeYRkHSSykzVHCyc"
}
],
"services": {
"appinvite_service": {
"other_platform_oauth_client": []
}
}
},
{
"client_info": {
"mobilesdk_app_id": "1:703616926518:android:4342b796fbabb690fca997",
"android_client_info": {
"package_name": "com.requestn.real_estate_mobile.dev"
}
},
"oauth_client": [],
"api_key": [
{
"current_key": "AIzaSyAwb_9fc7n9gbN_IQqWeYRkHSSykzVHCyc"
}
],
"services": {
"appinvite_service": {
"other_platform_oauth_client": []
}
}
}
],
"configuration_version": "1"
}

View File

@@ -0,0 +1,29 @@
{
"project_info": {
"project_number": "703616926518",
"project_id": "real-estate-2d71e",
"storage_bucket": "real-estate-2d71e.firebasestorage.app"
},
"client": [
{
"client_info": {
"mobilesdk_app_id": "1:703616926518:android:4342b796fbabb690fca997",
"android_client_info": {
"package_name": "com.requestn.real_estate_mobile.dev"
}
},
"oauth_client": [],
"api_key": [
{
"current_key": "AIzaSyAwb_9fc7n9gbN_IQqWeYRkHSSykzVHCyc"
}
],
"services": {
"appinvite_service": {
"other_platform_oauth_client": []
}
}
}
],
"configuration_version": "1"
}

View File

@@ -0,0 +1,67 @@
{
"project_info": {
"project_number": "703616926518",
"project_id": "real-estate-2d71e",
"storage_bucket": "real-estate-2d71e.firebasestorage.app"
},
"client": [
{
"client_info": {
"mobilesdk_app_id": "1:703616926518:android:270639d6887d2cb4fca997",
"android_client_info": {
"package_name": "com.requestn.real_estate_mobile.demo"
}
},
"oauth_client": [],
"api_key": [
{
"current_key": "AIzaSyAwb_9fc7n9gbN_IQqWeYRkHSSykzVHCyc"
}
],
"services": {
"appinvite_service": {
"other_platform_oauth_client": []
}
}
},
{
"client_info": {
"mobilesdk_app_id": "1:703616926518:android:4342b796fbabb690fca997",
"android_client_info": {
"package_name": "com.requestn.real_estate_mobile.dev"
}
},
"oauth_client": [],
"api_key": [
{
"current_key": "AIzaSyAwb_9fc7n9gbN_IQqWeYRkHSSykzVHCyc"
}
],
"services": {
"appinvite_service": {
"other_platform_oauth_client": []
}
}
},
{
"client_info": {
"mobilesdk_app_id": "1:703616926518:android:2eb242f07b174c25fca997",
"android_client_info": {
"package_name": "com.requestn.real_estate_mobile.local"
}
},
"oauth_client": [],
"api_key": [
{
"current_key": "AIzaSyAwb_9fc7n9gbN_IQqWeYRkHSSykzVHCyc"
}
],
"services": {
"appinvite_service": {
"other_platform_oauth_client": []
}
}
}
],
"configuration_version": "1"
}

View File

@@ -2,6 +2,7 @@
<uses-permission android:name="android.permission.CAMERA"/>
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" android:maxSdkVersion="32"/>
<uses-permission android:name="android.permission.READ_MEDIA_IMAGES"/>
<uses-permission android:name="android.permission.POST_NOTIFICATIONS"/>
<application
android:label="@string/app_name"
android:name="${applicationName}"
@@ -33,6 +34,10 @@
<meta-data
android:name="flutterEmbedding"
android:value="2" />
<!-- FCM default notification channel -->
<meta-data
android:name="com.google.firebase.messaging.default_notification_channel_id"
android:value="high_importance_channel" />
</application>
<!-- Required to query activities that can process text, see:
https://developer.android.com/training/package-visibility and

View File

@@ -21,6 +21,7 @@ plugins {
id("dev.flutter.flutter-plugin-loader") version "1.0.0"
id("com.android.application") version "8.11.1" apply false
id("org.jetbrains.kotlin.android") version "2.2.20" apply false
id("com.google.gms.google-services") version "4.4.2" apply false
}
include(":app")