diff --git a/android/app/build.gradle b/android/app/build.gradle index 43f12f5f3..a8f0ef17d 100644 --- a/android/app/build.gradle +++ b/android/app/build.gradle @@ -24,10 +24,6 @@ if (flutterVersionName == null) { apply plugin: 'com.android.application' apply from: "$flutterRoot/packages/flutter_tools/gradle/flutter.gradle" -if (file("./google-services.json").exists()) { - apply plugin: 'com.google.gms.google-services' -} - def keystoreProperties = new Properties() def keystorePropertiesFile = rootProject.file('key.properties') if (keystorePropertiesFile.exists()) { @@ -89,6 +85,4 @@ dependencies { androidTestImplementation 'androidx.test:runner:1.3.0' androidTestImplementation 'androidx.test.espresso:espresso-core:3.3.0' implementation 'com.unstoppabledomains:resolution:3.0.0' - implementation 'com.google.firebase:firebase-core:19.0.0' - implementation 'com.google.firebase:firebase-messaging:19.0.0' } diff --git a/android/app/src/main/java/com/cakewallet/cake_wallet/Application.java b/android/app/src/main/java/com/cakewallet/cake_wallet/Application.java index c3b51c14c..e14d413bb 100644 --- a/android/app/src/main/java/com/cakewallet/cake_wallet/Application.java +++ b/android/app/src/main/java/com/cakewallet/cake_wallet/Application.java @@ -4,18 +4,8 @@ import io.flutter.app.FlutterApplication; import io.flutter.plugin.common.PluginRegistry; import io.flutter.plugin.common.PluginRegistry.PluginRegistrantCallback; import io.flutter.plugins.GeneratedPluginRegistrant; -import io.flutter.plugins.firebasemessaging.FlutterFirebaseMessagingService; -import io.flutter.plugins.firebasemessaging.FirebaseMessagingPlugin; public class Application extends FlutterApplication implements PluginRegistrantCallback { @Override - public void onCreate() { - super.onCreate(); - FlutterFirebaseMessagingService.setPluginRegistrant(this); - } - - @Override - public void registerWith(PluginRegistry registry) { - FirebaseMessagingPlugin.registerWith(registry.registrarFor("io.flutter.plugins.firebasemessaging.FirebaseMessagingPlugin")); - } + public void registerWith(PluginRegistry registry) {} } \ No newline at end of file diff --git a/ios/Podfile b/ios/Podfile index bac19db19..d6ff9de71 100644 --- a/ios/Podfile +++ b/ios/Podfile @@ -37,7 +37,6 @@ target 'Runner' do # Cake Wallet (Legacy) pod 'CryptoSwift' pod 'UnstoppableDomainsResolution', '~> 2.0.1' - pod 'Firebase/Messaging', '6.33.0' end post_install do |installer| diff --git a/ios/Podfile.lock b/ios/Podfile.lock index 1331b736a..4d3e08838 100644 --- a/ios/Podfile.lock +++ b/ios/Podfile.lock @@ -63,84 +63,18 @@ PODS: - file_picker (0.0.1): - DKImagePickerController/PhotoGallery - Flutter - - Firebase/CoreOnly (6.33.0): - - FirebaseCore (= 6.10.3) - - Firebase/Messaging (6.33.0): - - Firebase/CoreOnly - - FirebaseMessaging (~> 4.7.0) - - firebase_core (0.5.3): - - Firebase/CoreOnly (~> 6.33.0) - - Flutter - - firebase_messaging (7.0.3): - - Firebase/CoreOnly (~> 6.33.0) - - Firebase/Messaging (~> 6.33.0) - - firebase_core - - Flutter - - FirebaseCore (6.10.3): - - FirebaseCoreDiagnostics (~> 1.6) - - GoogleUtilities/Environment (~> 6.7) - - GoogleUtilities/Logger (~> 6.7) - - FirebaseCoreDiagnostics (1.7.0): - - GoogleDataTransport (~> 7.4) - - GoogleUtilities/Environment (~> 6.7) - - GoogleUtilities/Logger (~> 6.7) - - nanopb (~> 1.30906.0) - - FirebaseInstallations (1.7.0): - - FirebaseCore (~> 6.10) - - GoogleUtilities/Environment (~> 6.7) - - GoogleUtilities/UserDefaults (~> 6.7) - - PromisesObjC (~> 1.2) - - FirebaseInstanceID (4.8.0): - - FirebaseCore (~> 6.10) - - FirebaseInstallations (~> 1.6) - - GoogleUtilities/Environment (~> 6.7) - - GoogleUtilities/UserDefaults (~> 6.7) - - FirebaseMessaging (4.7.1): - - FirebaseCore (~> 6.10) - - FirebaseInstanceID (~> 4.7) - - GoogleUtilities/AppDelegateSwizzler (~> 6.7) - - GoogleUtilities/Environment (~> 6.7) - - GoogleUtilities/Reachability (~> 6.7) - - GoogleUtilities/UserDefaults (~> 6.7) - - Protobuf (>= 3.9.2, ~> 3.9) - Flutter (1.0.0) - flutter_secure_storage (3.3.1): - Flutter - - GoogleDataTransport (7.5.1): - - nanopb (~> 1.30906.0) - - GoogleUtilities/AppDelegateSwizzler (6.7.2): - - GoogleUtilities/Environment - - GoogleUtilities/Logger - - GoogleUtilities/Network - - GoogleUtilities/Environment (6.7.2): - - PromisesObjC (~> 1.2) - - GoogleUtilities/Logger (6.7.2): - - GoogleUtilities/Environment - - GoogleUtilities/Network (6.7.2): - - GoogleUtilities/Logger - - "GoogleUtilities/NSData+zlib" - - GoogleUtilities/Reachability - - "GoogleUtilities/NSData+zlib (6.7.2)" - - GoogleUtilities/Reachability (6.7.2): - - GoogleUtilities/Logger - - GoogleUtilities/UserDefaults (6.7.2): - - GoogleUtilities/Logger - local_auth (0.0.1): - Flutter - MTBBarcodeScanner (5.0.11) - - nanopb (1.30906.0): - - nanopb/decode (= 1.30906.0) - - nanopb/encode (= 1.30906.0) - - nanopb/decode (1.30906.0) - - nanopb/encode (1.30906.0) - package_info (0.0.1): - Flutter - path_provider (0.0.1): - Flutter - "permission_handler (5.1.0+2)": - Flutter - - PromisesObjC (1.2.12) - - Protobuf (3.17.0) - Reachability (3.2) - SDWebImage (5.9.1): - SDWebImage/Core (= 5.9.1) @@ -167,9 +101,6 @@ DEPENDENCIES: - devicelocale (from `.symlinks/plugins/devicelocale/ios`) - esys_flutter_share (from `.symlinks/plugins/esys_flutter_share/ios`) - file_picker (from `.symlinks/plugins/file_picker/ios`) - - Firebase/Messaging (= 6.33.0) - - firebase_core (from `.symlinks/plugins/firebase_core/ios`) - - firebase_messaging (from `.symlinks/plugins/firebase_messaging/ios`) - Flutter (from `Flutter`) - flutter_secure_storage (from `.symlinks/plugins/flutter_secure_storage/ios`) - local_auth (from `.symlinks/plugins/local_auth/ios`) @@ -188,18 +119,7 @@ SPEC REPOS: - CryptoSwift - DKImagePickerController - DKPhotoGallery - - Firebase - - FirebaseCore - - FirebaseCoreDiagnostics - - FirebaseInstallations - - FirebaseInstanceID - - FirebaseMessaging - - GoogleDataTransport - - GoogleUtilities - MTBBarcodeScanner - - nanopb - - PromisesObjC - - Protobuf - Reachability - SDWebImage - SwiftProtobuf @@ -219,10 +139,6 @@ EXTERNAL SOURCES: :path: ".symlinks/plugins/esys_flutter_share/ios" file_picker: :path: ".symlinks/plugins/file_picker/ios" - firebase_core: - :path: ".symlinks/plugins/firebase_core/ios" - firebase_messaging: - :path: ".symlinks/plugins/firebase_messaging/ios" Flutter: :path: Flutter flutter_secure_storage: @@ -255,26 +171,13 @@ SPEC CHECKSUMS: DKPhotoGallery: fdfad5125a9fdda9cc57df834d49df790dbb4179 esys_flutter_share: 403498dab005b36ce1f8d7aff377e81f0621b0b4 file_picker: 3e6c3790de664ccf9b882732d9db5eaf6b8d4eb1 - Firebase: 8db6f2d1b2c5e2984efba4949a145875a8f65fe5 - firebase_core: 5d6a02f3d85acd5f8321c2d6d62877626a670659 - firebase_messaging: 0aea2cd5885b65e19ede58ee3507f485c992cc75 - FirebaseCore: d889d9e12535b7f36ac8bfbf1713a0836a3012cd - FirebaseCoreDiagnostics: 770ac5958e1372ce67959ae4b4f31d8e127c3ac1 - FirebaseInstallations: 466c7b4d1f58fe16707693091da253726a731ed2 - FirebaseInstanceID: bd3ffc24367f901a43c063b36c640b345a4a5dd1 - FirebaseMessaging: 5eca4ef173de76253352511aafef774caa1cba2a Flutter: 434fef37c0980e73bb6479ef766c45957d4b510c flutter_secure_storage: 7953c38a04c3fdbb00571bcd87d8e3b5ceb9daec - GoogleDataTransport: f56af7caa4ed338dc8e138a5d7c5973e66440833 - GoogleUtilities: 7f2f5a07f888cdb145101d6042bc4422f57e70b3 local_auth: 25938960984c3a7f6e3253e3f8d962fdd16852bd MTBBarcodeScanner: f453b33c4b7dfe545d8c6484ed744d55671788cb - nanopb: 59317e09cf1f1a0af72f12af412d54edf52603fc package_info: 873975fc26034f0b863a300ad47e7f1ac6c7ec62 path_provider: abfe2b5c733d04e238b0d8691db0cfd63a27a93c permission_handler: ccb20a9fad0ee9b1314a52b70b76b473c5f8dab0 - PromisesObjC: 3113f7f76903778cf4a0586bd1ab89329a0b7b97 - Protobuf: 7327d4444215b5f18e560a97f879ff5503c4581c Reachability: 33e18b67625424e47b6cde6d202dce689ad7af96 SDWebImage: a990c053fff71e388a10f3357edb0be17929c9c5 share: 0b2c3e82132f5888bccca3351c504d0003b3b410 @@ -285,6 +188,6 @@ SPEC CHECKSUMS: url_launcher: 6fef411d543ceb26efce54b05a0a40bfd74cbbef webview_flutter: 9f491a9b5a66f2573946a389b2677987b0ff8c0b -PODFILE CHECKSUM: 2e3a44b4309d141b9a3b43acf609feb2beb43d9b +PODFILE CHECKSUM: bc2591d23316907c9c90ca1cd2fce063fd866508 COCOAPODS: 1.10.2 diff --git a/ios/Runner.xcodeproj/project.pbxproj b/ios/Runner.xcodeproj/project.pbxproj index cf8ecb67e..f3a2260b3 100644 --- a/ios/Runner.xcodeproj/project.pbxproj +++ b/ios/Runner.xcodeproj/project.pbxproj @@ -7,7 +7,6 @@ objects = { /* Begin PBXBuildFile section */ - 0C37B8B926678E9100C6E5A9 /* GoogleService-Info.plist in Resources */ = {isa = PBXBuildFile; fileRef = 0C37B8B826678E9100C6E5A9 /* GoogleService-Info.plist */; }; 0C44A71A2518EF8000B570ED /* decrypt.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0C44A7192518EF8000B570ED /* decrypt.swift */; }; 0C9D68C9264854B60011B691 /* secRandom.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0C9D68C8264854B60011B691 /* secRandom.swift */; }; 1498D2341E8E89220040F4C2 /* GeneratedPluginRegistrant.m in Sources */ = {isa = PBXBuildFile; fileRef = 1498D2331E8E89220040F4C2 /* GeneratedPluginRegistrant.m */; }; @@ -20,7 +19,6 @@ /* End PBXBuildFile section */ /* Begin PBXFileReference section */ - 0C37B8B826678E9100C6E5A9 /* GoogleService-Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; name = "GoogleService-Info.plist"; path = "Runner/GoogleService-Info.plist"; sourceTree = ""; }; 0C400E0F25B21ABB0025E469 /* Runner.entitlements */ = {isa = PBXFileReference; lastKnownFileType = text.plist.entitlements; path = Runner.entitlements; sourceTree = ""; }; 0C44A7192518EF8000B570ED /* decrypt.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = decrypt.swift; sourceTree = ""; }; 0C9986A3251A932F00D566FD /* CryptoSwift.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; path = CryptoSwift.framework; sourceTree = BUILT_PRODUCTS_DIR; }; @@ -98,7 +96,6 @@ 97C146E51CF9000F007C117D = { isa = PBXGroup; children = ( - 0C37B8B826678E9100C6E5A9 /* GoogleService-Info.plist */, 0C44A7182518EF4A00B570ED /* CakeWallet */, 9740EEB11CF90186004384FC /* Flutter */, 97C146F01CF9000F007C117D /* Runner */, @@ -194,7 +191,6 @@ isa = PBXResourcesBuildPhase; buildActionMask = 2147483647; files = ( - 0C37B8B926678E9100C6E5A9 /* GoogleService-Info.plist in Resources */, 97C147011CF9000F007C117D /* LaunchScreen.storyboard in Resources */, 3B3967161E833CAA004F5970 /* AppFrameworkInfo.plist in Resources */, 97C146FE1CF9000F007C117D /* Assets.xcassets in Resources */, diff --git a/lib/di.dart b/lib/di.dart index 06a5f5a4b..ffee7cbf1 100644 --- a/lib/di.dart +++ b/lib/di.dart @@ -119,7 +119,6 @@ import 'package:cake_wallet/store/templates/exchange_template_store.dart'; import 'package:cake_wallet/entities/template.dart'; import 'package:cake_wallet/exchange/exchange_template.dart'; import 'package:cake_wallet/.secrets.g.dart' as secrets; -import 'package:cake_wallet/entities/push_notifications_service.dart'; final getIt = GetIt.instance; @@ -243,9 +242,6 @@ Future setup( settingsStore: getIt.get(), fiatConvertationStore: getIt.get())); - - getIt.registerFactory(() => PushNotificationsService()); - getIt.registerFactory(() => DashboardViewModel( balanceViewModel: getIt.get(), appStore: getIt.get(), @@ -253,8 +249,7 @@ Future setup( tradeFilterStore: getIt.get(), transactionFilterStore: getIt.get(), settingsStore: settingsStore, - ordersStore: getIt.get(), - pushNotificationsService: getIt.get())); + ordersStore: getIt.get())); getIt.registerFactory(() => AuthService( secureStorage: getIt.get(), diff --git a/lib/entities/push_notifications_service.dart b/lib/entities/push_notifications_service.dart deleted file mode 100644 index bf5226af3..000000000 --- a/lib/entities/push_notifications_service.dart +++ /dev/null @@ -1,49 +0,0 @@ -import 'dart:io'; -import 'package:cake_wallet/main.dart'; -import 'package:cake_wallet/utils/show_bar.dart'; -import 'package:firebase_messaging/firebase_messaging.dart'; - -class PushNotificationsService { - PushNotificationsService._(); - - factory PushNotificationsService() => _instance; - - static final PushNotificationsService _instance = PushNotificationsService._(); - static Future _onBackgroundMessage(Map message) async {} - static Future _showNotification(Map message) async { - Map alert = {}; - String msg = ''; - String title = ''; - - if (Platform.isIOS) { - alert = message['aps']['alert'] as Map ?? {}; - msg = alert['body'] as String ?? ''; - title = alert['title'] as String ?? ''; - } - - if (Platform.isAndroid) { - msg = message['notification']['body'] as String ?? ''; - title = message['notification']['title'] as String ?? ''; - } - - await showBar(navigatorKey.currentContext, msg, titleText: title, duration: null); - } - - final _firebaseMessaging = FirebaseMessaging(); - bool _initialized = false; - - Future init() async { - if (_initialized) { - return; - } - - _firebaseMessaging.requestNotificationPermissions(); - _firebaseMessaging.configure( - onMessage: (message) async => _showNotification(message), - onLaunch: (message) async => _showNotification(message), - onResume: (message) async => _showNotification(message), - onBackgroundMessage: _onBackgroundMessage); - - _initialized = true; - } -} \ No newline at end of file diff --git a/lib/view_model/dashboard/dashboard_view_model.dart b/lib/view_model/dashboard/dashboard_view_model.dart index 0777d3ecd..5f0f8fdd8 100644 --- a/lib/view_model/dashboard/dashboard_view_model.dart +++ b/lib/view_model/dashboard/dashboard_view_model.dart @@ -1,6 +1,5 @@ import 'package:cake_wallet/core/transaction_history.dart'; import 'package:cake_wallet/entities/balance.dart'; -import 'package:cake_wallet/entities/push_notifications_service.dart'; import 'package:cake_wallet/buy/order.dart'; import 'package:cake_wallet/entities/transaction_history.dart'; import 'package:cake_wallet/exchange/trade_state.dart'; @@ -47,9 +46,7 @@ abstract class DashboardViewModelBase with Store { this.tradeFilterStore, this.transactionFilterStore, this.settingsStore, - this.ordersStore, - PushNotificationsService pushNotificationsService}) { - _pushNotificationsService = pushNotificationsService; + this.ordersStore}) { filterItems = { S.current.transactions: [ FilterItem( @@ -136,8 +133,6 @@ abstract class DashboardViewModelBase with Store { return true; }); - - Future.delayed(Duration(seconds: 2), () => _pushNotificationsService.init()); } @observable @@ -225,8 +220,6 @@ abstract class DashboardViewModelBase with Store { bool get isBuyEnabled => settingsStore.isBitcoinBuyEnabled; - PushNotificationsService _pushNotificationsService; - ReactionDisposer _onMoneroAccountChangeReaction; ReactionDisposer _onMoneroBalanceChangeReaction; diff --git a/pubspec.lock b/pubspec.lock index 1ed3e5be3..a520abbe3 100644 --- a/pubspec.lock +++ b/pubspec.lock @@ -362,34 +362,6 @@ packages: url: "https://pub.dartlang.org" source: hosted version: "3.0.0-nullsafety.2" - firebase_core: - dependency: transitive - description: - name: firebase_core - url: "https://pub.dartlang.org" - source: hosted - version: "0.5.3" - firebase_core_platform_interface: - dependency: transitive - description: - name: firebase_core_platform_interface - url: "https://pub.dartlang.org" - source: hosted - version: "2.1.0" - firebase_core_web: - dependency: transitive - description: - name: firebase_core_web - url: "https://pub.dartlang.org" - source: hosted - version: "0.2.1+1" - firebase_messaging: - dependency: "direct main" - description: - name: firebase_messaging - url: "https://pub.dartlang.org" - source: hosted - version: "7.0.3" fixnum: dependency: transitive description: diff --git a/pubspec.yaml b/pubspec.yaml index 4f6222af8..d6b1b377d 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -78,7 +78,6 @@ dependencies: file_picker: ^3.0.0-nullsafety.2 unorm_dart: ^0.2.0 permission_handler: ^5.0.1+1 - firebase_messaging: ^7.0.3 dev_dependencies: flutter_test: