diff --git a/android/app/version.properties b/android/app/version.properties index 8a5e2cd..fa580ae 100644 --- a/android/app/version.properties +++ b/android/app/version.properties @@ -1,5 +1,5 @@ -#Fri Jul 28 17:03:08 CEST 2023 -VERSION_BUILD=32 +#Mon Jul 31 16:50:59 CEST 2023 +VERSION_BUILD=43 VERSION_MAJOR=1 VERSION_MINOR=0 VERSION_PATCH=0 diff --git a/android/build.gradle b/android/build.gradle index ed2d527..f10f50a 100644 --- a/android/build.gradle +++ b/android/build.gradle @@ -1,12 +1,12 @@ buildscript { - ext.kotlin_version = '1.6.10' + ext.kotlin_version = '1.7.10' repositories { google() jcenter() } dependencies { - classpath 'com.android.tools.build:gradle:4.1.0' + classpath 'com.android.tools.build:gradle:7.2.0' classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version" classpath 'com.google.gms:google-services:4.3.15' } @@ -27,6 +27,6 @@ subprojects { project.evaluationDependsOn(':app') } -task clean(type: Delete) { +tasks.register("clean", Delete) { delete rootProject.buildDir } diff --git a/lib/Helpers/NotificationManager.dart b/lib/Helpers/NotificationManager.dart index f886795..8532e85 100644 --- a/lib/Helpers/NotificationManager.dart +++ b/lib/Helpers/NotificationManager.dart @@ -15,21 +15,21 @@ class NotificationManager { static handleDataMsg(Map data){ } - static handleNotificationMsg(PushNotificationMessage message) { + static handleNotificationMsg(PushNotificationMessage message, BuildContext context) { //We can add showDialog key in future /*if (data.containsKey('showDialog')) { // Handle data message with dialog _showDialog(data); }*/ - _showDialog(message: message); + _showDialog(message: message, context: context); } - static _showDialog({required PushNotificationMessage message}) { + static _showDialog({required PushNotificationMessage message, required BuildContext context}) { var buttonLabel = message.data.labelButton == null ? defaultButtonLabel : message.data.labelButton; showDialog( - context: _context!, + context: context, builder: (BuildContext context) => CustomDialog( title: message.title, description: message.body, diff --git a/lib/Helpers/PushNotificationService.dart b/lib/Helpers/PushNotificationService.dart index d808bfc..bac922f 100644 --- a/lib/Helpers/PushNotificationService.dart +++ b/lib/Helpers/PushNotificationService.dart @@ -65,10 +65,16 @@ class PushNotificationService { }, ); + FirebaseMessaging.onBackgroundMessage(firebaseMessagingBackgroundHandler); + FirebaseMessaging.onMessage.listen((data) { var notification; print("onMessage: $data"); - print(data); + print(data.from); + print(data.category); + print(data.contentAvailable); + print(data.notification?.title); + print(data.notification?.body); if (Platform.isAndroid) { notification = PushNotificationMessage( @@ -76,7 +82,7 @@ class PushNotificationService { body: data.notification!.body!, data: DataNotification( //labelButton: message['data']['labelButton'], - type: data.messageType!) + type: data.messageType) ); } /*if (Platform.isIOS) { @@ -89,7 +95,7 @@ class PushNotificationService { ); }*/ - NotificationManager.handleNotificationMsg(notification); + NotificationManager.handleNotificationMsg(notification, context); // show notification UI here }); @@ -134,15 +140,19 @@ class PushNotificationMessage { class DataNotification { final String? collapseKey; - final String type; + final String? type; final String? labelButton; DataNotification({ this.collapseKey, - required this.type, + this.type, this.labelButton }); } +Future firebaseMessagingBackgroundHandler(RemoteMessage message) async { + print("Handling a background message"); +} + /*PageSwitcher(String type) { switch(type) { case "home": diff --git a/lib/main.dart b/lib/main.dart index e3b4f76..752ecb6 100644 --- a/lib/main.dart +++ b/lib/main.dart @@ -10,6 +10,7 @@ import 'Screens/Main/MainPage.dart'; import 'Screens/Login/login_screen.dart'; import 'app_context.dart'; import 'constants.dart'; +import 'package:firebase_core/firebase_core.dart'; void main() async { WidgetsFlutterBinding.ensureInitialized(); @@ -37,6 +38,8 @@ void main() async { homieAppContext: localContext!, ); + await Firebase.initializeApp(); + runApp(myApp); } diff --git a/pubspec.lock b/pubspec.lock index 17fbfec..a4d498d 100644 --- a/pubspec.lock +++ b/pubspec.lock @@ -37,10 +37,10 @@ packages: dependency: transitive description: name: async - sha256: bfe67ef28df125b7dddcea62755991f807aa39a2492a23e1550161692950bbe0 + sha256: "947bfcf187f74dbc5e146c9eb9c0f10c9f8b30743e341481c1e2ed3ecc18c20c" url: "https://pub.dev" source: hosted - version: "2.10.0" + version: "2.11.0" auto_size_text: dependency: "direct main" description: @@ -125,10 +125,10 @@ packages: dependency: transitive description: name: characters - sha256: e6a326c8af69605aec75ed6c187d06b349707a27fbff8222ca9cc2cff167975c + sha256: "04a925763edad70e8443c99234dc3328f442e811f1d8fd1a72f1c8ad0f69a605" url: "https://pub.dev" source: hosted - version: "1.2.1" + version: "1.3.0" checked_yaml: dependency: transitive description: @@ -157,10 +157,10 @@ packages: dependency: transitive description: name: collection - sha256: cfc915e6923fe5ce6e153b0723c753045de46de1b4d63771530504004a45fae0 + sha256: f092b211a4319e98e5ff58223576de6c2803db36221657b46c82574721240687 url: "https://pub.dev" source: hosted - version: "1.17.0" + version: "1.17.2" convert: dependency: transitive description: @@ -173,10 +173,10 @@ packages: dependency: transitive description: name: crypto - sha256: aa274aa7774f8964e4f4f38cc994db7b6158dd36e9187aaceaddc994b35c6c67 + sha256: ff625774173754681d66daaf4a448684fb04b78f902da9cb3d308c19cc5e8bab url: "https://pub.dev" source: hosted - version: "3.0.2" + version: "3.0.3" cupertino_icons: dependency: "direct main" description: @@ -226,7 +226,7 @@ packages: source: hosted version: "6.1.4" firebase_core: - dependency: transitive + dependency: "direct main" description: name: firebase_core sha256: "2e9324f719e90200dc7d3c4f5d2abc26052f9f2b995d3b6626c47a0dfe1c8192" @@ -298,10 +298,10 @@ packages: dependency: "direct main" description: name: flutter_svg - sha256: "12006889e2987c549c4c1ec1a5ba4ec4b24d34d2469ee5f9476c926dcecff266" + sha256: "8c5d68a82add3ca76d792f058b186a0599414f279f00ece4830b9b231b570338" url: "https://pub.dev" source: hosted - version: "2.0.4" + version: "2.0.7" flutter_test: dependency: "direct dev" description: flutter @@ -412,26 +412,26 @@ packages: dependency: transitive description: name: matcher - sha256: "16db949ceee371e9b99d22f88fa3a73c4e59fd0afed0bd25fc336eb76c198b72" + sha256: "1803e76e6653768d64ed8ff2e1e67bea3ad4b923eb5c56a295c3e634bad5960e" url: "https://pub.dev" source: hosted - version: "0.12.13" + version: "0.12.16" material_color_utilities: dependency: transitive description: name: material_color_utilities - sha256: d92141dc6fe1dad30722f9aa826c7fbc896d021d792f80678280601aff8cf724 + sha256: "9528f2f296073ff54cb9fee677df673ace1218163c3bc7628093e7eed5203d41" url: "https://pub.dev" source: hosted - version: "0.2.0" + version: "0.5.0" meta: dependency: transitive description: name: meta - sha256: "6c268b42ed578a53088d834796959e4a1814b5e9e164f147f580a386e5decf42" + sha256: "3c74dbf8763d36539f114c799d8a2d87343b5067e9d796ca22b5eb8437090ee3" url: "https://pub.dev" source: hosted - version: "1.8.0" + version: "1.9.1" mime: dependency: transitive description: @@ -444,10 +444,10 @@ packages: dependency: "direct main" description: name: mqtt_client - sha256: "53186347058f0eb84b6b5e0591f8442cb05183abb787afc4d95a3c7a494068df" + sha256: "873c124f6485c17b5ca085047880068f3c5acc9db54317995d752a3253f95a72" url: "https://pub.dev" source: hosted - version: "9.8.0" + version: "10.0.0" mycore_api: dependency: "direct main" description: @@ -467,26 +467,26 @@ packages: dependency: "direct main" description: name: openapi_generator - sha256: "2c9cf35d91a26330f09ec4a2370f07c5e3040921bd3f33751ba36ac4d2346dc0" + sha256: "9efeccb3920683e71cc3927478eb6c2e97bf23500bff50a98185b755ff33a083" url: "https://pub.dev" source: hosted - version: "4.0.0" + version: "4.11.1" openapi_generator_annotations: dependency: "direct main" description: name: openapi_generator_annotations - sha256: "1745b86b57943c5a09647c37dd909da61060ad65a0d3d3e48bef58f9c1eebb32" + sha256: "6a46858a623076758198e94a94bdc797b1ba5260ab8544a61c809922014de44c" url: "https://pub.dev" source: hosted - version: "4.0.0" + version: "4.11.0" openapi_generator_cli: dependency: "direct main" description: name: openapi_generator_cli - sha256: "5d558ea599202dc487f829193b0ba0f28a0e7ad559e819a611b2146ef20c77f5" + sha256: c737a64e1ef01b382dab7b43bc04b04c4642b19bb12e9f2609dd9f7827c6016b url: "https://pub.dev" source: hosted - version: "4.0.0" + version: "4.11.0" package_config: dependency: transitive description: @@ -499,10 +499,10 @@ packages: dependency: transitive description: name: path - sha256: db9d4f58c908a4ba5953fcee2ae317c94889433e5024c27ce74a37f94267945b + sha256: "8829d8a55c13fc0e37127c29fedf290c102f4e40ae94ada574091fe0ff96c917" url: "https://pub.dev" source: hosted - version: "1.8.2" + version: "1.8.3" path_parsing: dependency: transitive description: @@ -515,10 +515,10 @@ packages: dependency: transitive description: name: petitparser - sha256: "49392a45ced973e8d94a85fdb21293fbb40ba805fc49f2965101ae748a3683b4" + sha256: cb3798bef7fc021ac45b308f4b51208a152792445cce0448c9a4ba5879dd8750 url: "https://pub.dev" source: hosted - version: "5.1.0" + version: "5.4.0" plugin_platform_interface: dependency: transitive description: @@ -600,10 +600,10 @@ packages: dependency: transitive description: name: source_span - sha256: dd904f795d4b4f3b870833847c461801f6750a9fa8e61ea5ac53f9422b31f250 + sha256: "53e943d4206a5e30df338fd4c6e7a077e02254531b138a15aec3bd143c1a8b3c" url: "https://pub.dev" source: hosted - version: "1.9.1" + version: "1.10.0" sqflite: dependency: "direct main" description: @@ -672,10 +672,10 @@ packages: dependency: transitive description: name: test_api - sha256: ad540f65f92caa91bf21dfc8ffb8c589d6e4dc0c2267818b4cc2792857706206 + sha256: "75760ffd7786fffdfb9597c35c5b27eaeec82be8edfb6d71d32651128ed7aab8" url: "https://pub.dev" source: hosted - version: "0.4.16" + version: "0.6.0" timing: dependency: transitive description: @@ -688,10 +688,10 @@ packages: dependency: transitive description: name: typed_data - sha256: "26f87ade979c47a150c9eaab93ccd2bebe70a27dc0b4b29517f2904f04eb11a5" + sha256: facc8d6582f16042dd49f2463ff1bd6e2c9ef9f3d5da3d9b087e244a7b564b3c url: "https://pub.dev" source: hosted - version: "1.3.1" + version: "1.3.2" uuid: dependency: "direct main" description: @@ -704,26 +704,26 @@ packages: dependency: transitive description: name: vector_graphics - sha256: "4cf8e60dbe4d3a693d37dff11255a172594c0793da542183cbfe7fe978ae4aaa" + sha256: "670f6e07aca990b4a2bcdc08a784193c4ccdd1932620244c3a86bb72a0eac67f" url: "https://pub.dev" source: hosted - version: "1.1.4" + version: "1.1.7" vector_graphics_codec: dependency: transitive description: name: vector_graphics_codec - sha256: "278ad5f816f58b1967396d1f78ced470e3e58c9fe4b27010102c0a595c764468" + sha256: "7451721781d967db9933b63f5733b1c4533022c0ba373a01bdd79d1a5457f69f" url: "https://pub.dev" source: hosted - version: "1.1.4" + version: "1.1.7" vector_graphics_compiler: dependency: transitive description: name: vector_graphics_compiler - sha256: "0bf61ad56e6fd6688a2865d3ceaea396bc6a0a90ea0d7ad5049b1b76c09d6163" + sha256: "80a13c613c8bde758b1464a1755a7b3a8f2b6cec61fbf0f5a53c94c30f03ba2e" url: "https://pub.dev" source: hosted - version: "1.1.4" + version: "1.1.7" vector_math: dependency: transitive description: @@ -740,6 +740,14 @@ packages: url: "https://pub.dev" source: hosted version: "1.0.2" + web: + dependency: transitive + description: + name: web + sha256: dc8ccd225a2005c1be616fe02951e2e342092edf968cf0844220383757ef8f10 + url: "https://pub.dev" + source: hosted + version: "0.1.4-beta" web_socket_channel: dependency: transitive description: @@ -752,10 +760,10 @@ packages: dependency: transitive description: name: xml - sha256: "979ee37d622dec6365e2efa4d906c37470995871fe9ae080d967e192d88286b5" + sha256: "5bc72e1e45e941d825fd7468b9b4cc3b9327942649aeb6fc5cdbf135f0a86e84" url: "https://pub.dev" source: hosted - version: "6.2.2" + version: "6.3.0" yaml: dependency: transitive description: @@ -765,5 +773,5 @@ packages: source: hosted version: "3.1.1" sdks: - dart: ">=2.19.0 <3.0.0" + dart: ">=3.1.0-185.0.dev <4.0.0" flutter: ">=3.7.0-0" diff --git a/pubspec.yaml b/pubspec.yaml index 3be9d18..0faf3c5 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -18,21 +18,21 @@ publish_to: 'none' # Remove this line if you wish to publish to pub.dev version: 1.0.0+2 environment: - sdk: ">=2.17.0 <3.0.0" + sdk: ">=2.19.4 <3.0.0" dependencies: flutter: sdk: flutter fluttertoast: - openapi_generator_cli: ^4.0.0 - openapi_generator: ^4.0.0 - openapi_generator_annotations: ^4.0.0 + openapi_generator_cli: ^4.11.0 + openapi_generator: ^4.11.1 + openapi_generator_annotations: ^4.11.0 sqflite: provider: ^6.0.5 enum_to_string: ^2.0.1 - flutter_svg: ^2.0.4 - mqtt_client: ^9.8.0 + flutter_svg: ^2.0.7 + mqtt_client: ^10.0.0 rxdart: ^0.27.7 flare_flutter: ^3.0.2 uuid: ^3.0.7 @@ -40,8 +40,9 @@ dependencies: path: mycore_api # The following adds the Cupertino Icons font to your application. # Use with the CupertinoIcons class for iOS style icons. - cupertino_icons: ^1.0.0 + cupertino_icons: ^1.0.5 auto_size_text: ^3.0.0 + firebase_core: ^2.15.0 firebase_messaging: ^14.6.5 dev_dependencies: