diff --git a/android/app/build.gradle.kts b/android/app/build.gradle.kts index f2ea225..c5e865a 100644 --- a/android/app/build.gradle.kts +++ b/android/app/build.gradle.kts @@ -2,6 +2,7 @@ plugins { id("com.android.application") // START: FlutterFire Configuration id("com.google.gms.google-services") + id("com.google.firebase.crashlytics") // END: FlutterFire Configuration id("kotlin-android") // The Flutter Gradle Plugin must be applied after the Android and Kotlin Gradle plugins. diff --git a/android/settings.gradle.kts b/android/settings.gradle.kts index 9e2d35c..5e665a3 100644 --- a/android/settings.gradle.kts +++ b/android/settings.gradle.kts @@ -21,6 +21,7 @@ plugins { 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 + id("com.google.firebase.crashlytics") version("2.8.1") apply false // END: FlutterFire Configuration id("org.jetbrains.kotlin.android") version "1.8.22" apply false } diff --git a/ios/Podfile.lock b/ios/Podfile.lock index 17c2a3f..414a742 100644 --- a/ios/Podfile.lock +++ b/ios/Podfile.lock @@ -4,24 +4,69 @@ PODS: - CocoaLumberjack (3.8.5): - CocoaLumberjack/Core (= 3.8.5) - CocoaLumberjack/Core (3.8.5) + - Firebase/Analytics (11.10.0): + - Firebase/Core + - Firebase/Core (11.10.0): + - Firebase/CoreOnly + - FirebaseAnalytics (~> 11.10.0) - Firebase/CoreOnly (11.10.0): - FirebaseCore (~> 11.10.0) + - Firebase/Crashlytics (11.10.0): + - Firebase/CoreOnly + - FirebaseCrashlytics (~> 11.10.0) - Firebase/Messaging (11.10.0): - Firebase/CoreOnly - FirebaseMessaging (~> 11.10.0) + - firebase_analytics (11.4.5): + - Firebase/Analytics (= 11.10.0) + - firebase_core + - Flutter - firebase_core (3.13.0): - Firebase/CoreOnly (= 11.10.0) - Flutter + - firebase_crashlytics (4.3.5): + - Firebase/Crashlytics (= 11.10.0) + - firebase_core + - Flutter - firebase_messaging (15.2.5): - Firebase/Messaging (= 11.10.0) - firebase_core - Flutter + - FirebaseAnalytics (11.10.0): + - FirebaseAnalytics/AdIdSupport (= 11.10.0) + - FirebaseCore (~> 11.10.0) + - FirebaseInstallations (~> 11.0) + - GoogleUtilities/AppDelegateSwizzler (~> 8.0) + - GoogleUtilities/MethodSwizzler (~> 8.0) + - GoogleUtilities/Network (~> 8.0) + - "GoogleUtilities/NSData+zlib (~> 8.0)" + - nanopb (~> 3.30910.0) + - FirebaseAnalytics/AdIdSupport (11.10.0): + - FirebaseCore (~> 11.10.0) + - FirebaseInstallations (~> 11.0) + - GoogleAppMeasurement (= 11.10.0) + - GoogleUtilities/AppDelegateSwizzler (~> 8.0) + - GoogleUtilities/MethodSwizzler (~> 8.0) + - GoogleUtilities/Network (~> 8.0) + - "GoogleUtilities/NSData+zlib (~> 8.0)" + - nanopb (~> 3.30910.0) - FirebaseCore (11.10.0): - FirebaseCoreInternal (~> 11.10.0) - GoogleUtilities/Environment (~> 8.0) - GoogleUtilities/Logger (~> 8.0) + - FirebaseCoreExtension (11.10.0): + - FirebaseCore (~> 11.10.0) - FirebaseCoreInternal (11.10.0): - "GoogleUtilities/NSData+zlib (~> 8.0)" + - FirebaseCrashlytics (11.10.0): + - FirebaseCore (~> 11.10.0) + - FirebaseInstallations (~> 11.0) + - FirebaseRemoteConfigInterop (~> 11.0) + - FirebaseSessions (~> 11.0) + - GoogleDataTransport (~> 10.0) + - GoogleUtilities/Environment (~> 8.0) + - nanopb (~> 3.30910.0) + - PromisesObjC (~> 2.4) - FirebaseInstallations (11.10.0): - FirebaseCore (~> 11.10.0) - GoogleUtilities/Environment (~> 8.0) @@ -36,10 +81,40 @@ PODS: - GoogleUtilities/Reachability (~> 8.0) - GoogleUtilities/UserDefaults (~> 8.0) - nanopb (~> 3.30910.0) + - FirebaseRemoteConfigInterop (11.12.0) + - FirebaseSessions (11.10.0): + - FirebaseCore (~> 11.10.0) + - FirebaseCoreExtension (~> 11.10.0) + - FirebaseInstallations (~> 11.0) + - GoogleDataTransport (~> 10.0) + - GoogleUtilities/Environment (~> 8.0) + - GoogleUtilities/UserDefaults (~> 8.0) + - nanopb (~> 3.30910.0) + - PromisesSwift (~> 2.1) - Flutter (1.0.0) - flutter_background_geolocation (4.16.9): - CocoaLumberjack (~> 3.8.5) - Flutter + - GoogleAppMeasurement (11.10.0): + - GoogleAppMeasurement/AdIdSupport (= 11.10.0) + - GoogleUtilities/AppDelegateSwizzler (~> 8.0) + - GoogleUtilities/MethodSwizzler (~> 8.0) + - GoogleUtilities/Network (~> 8.0) + - "GoogleUtilities/NSData+zlib (~> 8.0)" + - nanopb (~> 3.30910.0) + - GoogleAppMeasurement/AdIdSupport (11.10.0): + - GoogleAppMeasurement/WithoutAdIdSupport (= 11.10.0) + - GoogleUtilities/AppDelegateSwizzler (~> 8.0) + - GoogleUtilities/MethodSwizzler (~> 8.0) + - GoogleUtilities/Network (~> 8.0) + - "GoogleUtilities/NSData+zlib (~> 8.0)" + - nanopb (~> 3.30910.0) + - GoogleAppMeasurement/WithoutAdIdSupport (11.10.0): + - GoogleUtilities/AppDelegateSwizzler (~> 8.0) + - GoogleUtilities/MethodSwizzler (~> 8.0) + - GoogleUtilities/Network (~> 8.0) + - "GoogleUtilities/NSData+zlib (~> 8.0)" + - nanopb (~> 3.30910.0) - GoogleDataTransport (10.1.0): - nanopb (~> 3.30910.0) - PromisesObjC (~> 2.4) @@ -53,6 +128,9 @@ PODS: - GoogleUtilities/Logger (8.1.0): - GoogleUtilities/Environment - GoogleUtilities/Privacy + - GoogleUtilities/MethodSwizzler (8.1.0): + - GoogleUtilities/Logger + - GoogleUtilities/Privacy - GoogleUtilities/Network (8.1.0): - GoogleUtilities/Logger - "GoogleUtilities/NSData+zlib" @@ -73,13 +151,17 @@ PODS: - nanopb/decode (3.30910.0) - nanopb/encode (3.30910.0) - PromisesObjC (2.4.0) + - PromisesSwift (2.4.0): + - PromisesObjC (= 2.4.0) - shared_preferences_foundation (0.0.1): - Flutter - FlutterMacOS DEPENDENCIES: - background_fetch (from `.symlinks/plugins/background_fetch/ios`) + - firebase_analytics (from `.symlinks/plugins/firebase_analytics/ios`) - firebase_core (from `.symlinks/plugins/firebase_core/ios`) + - firebase_crashlytics (from `.symlinks/plugins/firebase_crashlytics/ios`) - firebase_messaging (from `.symlinks/plugins/firebase_messaging/ios`) - Flutter (from `Flutter`) - flutter_background_geolocation (from `.symlinks/plugins/flutter_background_geolocation/ios`) @@ -89,20 +171,31 @@ SPEC REPOS: trunk: - CocoaLumberjack - Firebase + - FirebaseAnalytics - FirebaseCore + - FirebaseCoreExtension - FirebaseCoreInternal + - FirebaseCrashlytics - FirebaseInstallations - FirebaseMessaging + - FirebaseRemoteConfigInterop + - FirebaseSessions + - GoogleAppMeasurement - GoogleDataTransport - GoogleUtilities - nanopb - PromisesObjC + - PromisesSwift EXTERNAL SOURCES: background_fetch: :path: ".symlinks/plugins/background_fetch/ios" + firebase_analytics: + :path: ".symlinks/plugins/firebase_analytics/ios" firebase_core: :path: ".symlinks/plugins/firebase_core/ios" + firebase_crashlytics: + :path: ".symlinks/plugins/firebase_crashlytics/ios" firebase_messaging: :path: ".symlinks/plugins/firebase_messaging/ios" Flutter: @@ -116,18 +209,27 @@ SPEC CHECKSUMS: background_fetch: 851122c99dc3f25a011a6aebec5379ccdf4ab5eb CocoaLumberjack: 6a459bc897d6d80bd1b8c78482ec7ad05dffc3f0 Firebase: 1fe1c0a7d9aaea32efe01fbea5f0ebd8d70e53a2 + firebase_analytics: 1998960b8fa16fd0cd9e77a6f9fd35a2009ad65e firebase_core: 2d4534e7b489907dcede540c835b48981d890943 + firebase_crashlytics: 961a0812ba79ed8f89a8d5d1e3763daa6267a87a firebase_messaging: 75bc93a4df25faccad67f6662ae872ac9ae69b64 + FirebaseAnalytics: 4e42333f02cf78ed93703a5c36f36dd518aebdef FirebaseCore: 8344daef5e2661eb004b177488d6f9f0f24251b7 + FirebaseCoreExtension: 6f357679327f3614e995dc7cf3f2d600bdc774ac FirebaseCoreInternal: ef4505d2afb1d0ebbc33162cb3795382904b5679 + FirebaseCrashlytics: 84b073c997235740e6a951b7ee49608932877e5c FirebaseInstallations: 9980995bdd06ec8081dfb6ab364162bdd64245c3 FirebaseMessaging: 2b9f56aa4ed286e1f0ce2ee1d413aabb8f9f5cb9 + FirebaseRemoteConfigInterop: 82b81fd06ee550cbeff40004e2c106daedf73e38 + FirebaseSessions: 9b3b30947b97a15370e0902ee7a90f50ef60ead6 Flutter: e0871f40cf51350855a761d2e70bf5af5b9b5de7 flutter_background_geolocation: 5b84413a1bf24012c9c03bd0bf90a890f941ec29 + GoogleAppMeasurement: 36684bfb3ee034e2b42b4321eb19da3a1b81e65d GoogleDataTransport: aae35b7ea0c09004c3797d53c8c41f66f219d6a7 GoogleUtilities: 00c88b9a86066ef77f0da2fab05f65d7768ed8e1 nanopb: fad817b59e0457d11a5dfbde799381cd727c1275 PromisesObjC: f5707f49cb48b9636751c5b2e7d227e43fba9f47 + PromisesSwift: 9d77319bbe72ebf6d872900551f7eeba9bce2851 shared_preferences_foundation: 9e1978ff2562383bd5676f64ec4e9aa8fa06a6f7 PODFILE CHECKSUM: f8c2dcdfb50bb67645580d28a6bf814fca30bdec diff --git a/ios/Runner.xcodeproj/project.pbxproj b/ios/Runner.xcodeproj/project.pbxproj index b2238aa..3114ed0 100644 --- a/ios/Runner.xcodeproj/project.pbxproj +++ b/ios/Runner.xcodeproj/project.pbxproj @@ -205,6 +205,7 @@ 3B06AD1E1E4923F5004D2608 /* Thin Binary */, B103AE670B136CF320D263A0 /* [CP] Embed Pods Frameworks */, A723026CD722D6080D522023 /* [CP] Copy Pods Resources */, + 3EB9047AD990972813CB5287 /* FlutterFire: "flutterfire upload-crashlytics-symbols" */, ); buildRules = ( ); @@ -316,6 +317,24 @@ shellPath = /bin/sh; shellScript = "/bin/sh \"$FLUTTER_ROOT/packages/flutter_tools/bin/xcode_backend.sh\" embed_and_thin"; }; + 3EB9047AD990972813CB5287 /* FlutterFire: "flutterfire upload-crashlytics-symbols" */ = { + isa = PBXShellScriptBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + inputFileListPaths = ( + ); + inputPaths = ( + ); + name = "FlutterFire: \"flutterfire upload-crashlytics-symbols\""; + outputFileListPaths = ( + ); + outputPaths = ( + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "\n#!/bin/bash\nPATH=\"${PATH}:$FLUTTER_ROOT/bin:${PUB_CACHE}/bin:$HOME/.pub-cache/bin\"\n\nif [ -z \"$PODS_ROOT\" ] || [ ! -d \"$PODS_ROOT/FirebaseCrashlytics\" ]; then\n # Cannot use \"BUILD_DIR%/Build/*\" as per Firebase documentation, it points to \"flutter-project/build/ios/*\" path which doesn't have run script\n DERIVED_DATA_PATH=$(echo \"$BUILD_ROOT\" | sed -E 's|(.*DerivedData/[^/]+).*|\\1|')\n PATH_TO_CRASHLYTICS_UPLOAD_SCRIPT=\"${DERIVED_DATA_PATH}/SourcePackages/checkouts/firebase-ios-sdk/Crashlytics/run\"\nelse\n PATH_TO_CRASHLYTICS_UPLOAD_SCRIPT=\"$PODS_ROOT/FirebaseCrashlytics/run\"\nfi\n\n# Command to upload symbols script used to upload symbols to Firebase server\nflutterfire upload-crashlytics-symbols --upload-symbols-script-path=\"$PATH_TO_CRASHLYTICS_UPLOAD_SCRIPT\" --platform=ios --apple-project-path=\"${SRCROOT}\" --env-platform-name=\"${PLATFORM_NAME}\" --env-configuration=\"${CONFIGURATION}\" --env-project-dir=\"${PROJECT_DIR}\" --env-built-products-dir=\"${BUILT_PRODUCTS_DIR}\" --env-dwarf-dsym-folder-path=\"${DWARF_DSYM_FOLDER_PATH}\" --env-dwarf-dsym-file-name=\"${DWARF_DSYM_FILE_NAME}\" --env-infoplist-path=\"${INFOPLIST_PATH}\" --default-config=default\n"; + }; 9740EEB61CF901F6004384FC /* Run Script */ = { isa = PBXShellScriptBuildPhase; alwaysOutOfDate = 1; diff --git a/lib/firebase_options.dart b/lib/firebase_options.dart index f52e668..1d391c6 100644 --- a/lib/firebase_options.dart +++ b/lib/firebase_options.dart @@ -68,4 +68,5 @@ class DefaultFirebaseOptions { iosClientId: '39016471396-7mdutolor3h210bm9qmf60gp18lmmhnm.apps.googleusercontent.com', iosBundleId: 'org.traccar.client.TraccarClient', ); -} + +} \ No newline at end of file diff --git a/pubspec.lock b/pubspec.lock index 96caf11..179570a 100644 --- a/pubspec.lock +++ b/pubspec.lock @@ -81,6 +81,30 @@ packages: url: "https://pub.dev" source: hosted version: "7.0.1" + firebase_analytics: + dependency: "direct main" + description: + name: firebase_analytics + sha256: "2416b9d864412ab7b571dafded801bbcc7e29b5824623c055002d4d0819bea2b" + url: "https://pub.dev" + source: hosted + version: "11.4.5" + firebase_analytics_platform_interface: + dependency: transitive + description: + name: firebase_analytics_platform_interface + sha256: "3ccf5c876a8bea186016de4bcf53fc1bc6fa01236d740fb501d7ef9be356c58e" + url: "https://pub.dev" + source: hosted + version: "4.3.5" + firebase_analytics_web: + dependency: transitive + description: + name: firebase_analytics_web + sha256: "5e4e3f001b67c2034b76cb2a42a0eed330fb3a8fb41ad13eceb04e8d9a74f662" + url: "https://pub.dev" + source: hosted + version: "0.5.10+11" firebase_core: dependency: "direct main" description: @@ -105,6 +129,22 @@ packages: url: "https://pub.dev" source: hosted version: "2.22.0" + firebase_crashlytics: + dependency: "direct main" + description: + name: firebase_crashlytics + sha256: f3fa4a17c2f061b16b2e3ac7aaed889ae954b8952d0fd3e0009a9870cde7bbd2 + url: "https://pub.dev" + source: hosted + version: "4.3.5" + firebase_crashlytics_platform_interface: + dependency: transitive + description: + name: firebase_crashlytics_platform_interface + sha256: cedfbe39927711c0e56fc38bfecbd89e17816b21698a3d88d63298c530ed375c + url: "https://pub.dev" + source: hosted + version: "3.8.5" firebase_messaging: dependency: "direct main" description: diff --git a/pubspec.yaml b/pubspec.yaml index f063614..e595e89 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -16,6 +16,8 @@ dependencies: shared_preferences: ^2.5.3 firebase_core: ^3.13.0 firebase_messaging: ^15.2.5 + firebase_analytics: ^11.4.5 + firebase_crashlytics: ^4.3.5 dev_dependencies: flutter_test: