diff --git a/.circleci/config.yml b/.circleci/config.yml index a73f5a458..409f478a0 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -35,12 +35,12 @@ jobs: type: string default: example/build/app/outputs/apk docker: - - image: cimg/android:2022.09 + - image: cimg/android:2024.01 resource_class: xlarge steps: - checkout - flutter/install_sdk_and_pub: - version: 3.13.6 + version: 3.27.0 app-dir: example - run: name: ktlint @@ -106,7 +106,7 @@ jobs: gem uninstall activesupport --version '>= 7.0.8' --ignore-dependencies gem install activesupport --version '7.0.8' - flutter/install_sdk_and_pub: - version: 3.13.6 + version: 3.27.0 app-dir: example - flutter/install_ios_pod: app-dir: example @@ -128,6 +128,7 @@ jobs: popd # to repo root + bundle install bundle exec fastlane build_examples_tests - persist_to_workspace: root: << parameters.workspace-path >> @@ -150,7 +151,7 @@ jobs: command: | gcloud firebase test ios run \ --test << parameters.workspace-path >>/build_products.zip \ - --device model=iphone8,version=15.7 \ + --device model=iphone13pro,version=15.7 \ --timeout 5m \ --num-flaky-test-attempts 3 @@ -172,7 +173,7 @@ executors: macos-xcode-latest: resource_class: macos.m1.medium.gen1 macos: - xcode: 15.0.0 + xcode: 16.2.0 firebase-test-runner: resource_class: small docker: diff --git a/.fastlane/Fastfile b/.fastlane/Fastfile index e9fb4b3e9..e7dcee283 100644 --- a/.fastlane/Fastfile +++ b/.fastlane/Fastfile @@ -14,7 +14,7 @@ platform :ios do team_id: "GJZR2MEM28", # Developer Portal Team ID, profile_name: lane_context[SharedValues::MATCH_PROVISIONING_PROFILE_MAPPING]["com.mapbox.maps.FlutterMapsExample"], targets: ["Runner"], - code_sign_identity: "Apple Development: Machiney McMachineface", + code_sign_identity: "Apple Development: Created via API", ) update_code_signing_settings( use_automatic_signing: false, @@ -22,7 +22,7 @@ platform :ios do team_id: "GJZR2MEM28", # Developer Portal Team ID, profile_name: lane_context[SharedValues::MATCH_PROVISIONING_PROFILE_MAPPING]["com.mapbox.maps.FlutterRunnerTests"], targets: ["RunnerTests"], - code_sign_identity: "Apple Development: Machiney McMachineface", + code_sign_identity: "Apple Development: Created via API", ) # build tests archive in the `output_directory` to launch on firebase run_tests( @@ -31,7 +31,7 @@ platform :ios do xcconfig: "example/ios/Flutter/Release.xcconfig", derived_data_path: "example/build/output", configuration: "Release", - xcargs: "ENABLE_TESTABILITY=YES SWIFT_TREAT_WARNINGS_AS_ERRORS=NO COMPILER_INDEX_STORE_ENABLE=NO", + xcargs: "SWIFT_TREAT_WARNINGS_AS_ERRORS=NO COMPILER_INDEX_STORE_ENABLE=NO", skip_detect_devices: true, # Required build_for_testing: true, # Required sdk: 'iphoneos', # Required diff --git a/.fastlane/Matchfile b/.fastlane/Matchfile index 2b4ef573a..f0b57d7a7 100644 --- a/.fastlane/Matchfile +++ b/.fastlane/Matchfile @@ -2,3 +2,4 @@ git_url("git@github.com:mapbox/apple-certificates.git") type("development") # The default type, can be: appstore, adhoc, enterprise or development app_identifier(["com.mapbox.maps.FlutterMapsExample", "com.mapbox.maps.FlutterRunnerTests"]) username("applemachine@mapbox.com") +force_legacy_encryption(true) \ No newline at end of file diff --git a/CHANGELOG.md b/CHANGELOG.md index 44455b12b..8d4405672 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,4 +1,30 @@ -### 0.5.1 +## 0.7.0 + +> [!NOTE] +> This release adds support for Android 16KB page size requirements and iOS compatibility improvements. + +### Android +* Update Android Maps SDK version to v10.19.1 +* Add support for 16KB page size requirements for Google Play Store compliance + +### iOS +* Update iOS Maps SDK version to v10.19.4 +* Change minimum iOS version to v12.0 + +## 0.6.0 + +> [!NOTE] +> This release contains fixes to the Privacy Manifest on iOS. Upgrade to avoid issues in the App Store app submission starting from May 1st. + +### Android +* Fix map being pixelated on some devices when ContextMode.SHARED is used (e.g. in AndroidAuto extension). +* Fix incorrect widget position and scale when resizing the drawing surface. +* Fix a crash in MapView.snapshot happening on specific devices. + +### iOS +* Fix the issue with invalid privacy manifest + +## 0.5.1 ### Android * Fix registry token lookup failing with an unrelated error in certain circumstances. diff --git a/Gemfile b/Gemfile index e11fb3191..1c9127486 100644 --- a/Gemfile +++ b/Gemfile @@ -1,6 +1,6 @@ source "https://rubygems.org" -gem "fastlane" +gem "fastlane", ">= 2.228.0" plugins_path = File.join(File.dirname(__FILE__), '.fastlane', 'Pluginfile') eval_gemfile(plugins_path) if File.exist?(plugins_path) diff --git a/README.md b/README.md index 714a26e2d..a2db6f9d0 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,6 @@ # Mapbox Maps SDK Flutter Plugin -The Mapbox Maps SDK Flutter Plugin is an officially developed solution from Mapbox that enables use of our latest Maps SDK product (v10.13.0). It is currently in beta, but can be used in production. The plugin allows developers to embed highly customized maps using a Flutter widget on Android and iOS. +The Mapbox Maps SDK Flutter Plugin is an officially developed solution from Mapbox that enables use of our latest Maps SDK product (v10.19.1 (Android) & v10.19.4 (iOS)). It is currently in beta, but can be used in production. The plugin allows developers to embed highly customized maps using a Flutter widget on Android and iOS. Web and desktop are not supported. @@ -45,7 +45,7 @@ Contributions welcome! The Maps Flutter Plugin is compatible with applications: -- Deployed on iOS 11 or higher +- Deployed on iOS 12 or higher - Built using the Android SDK 21 or higher - Built using the Dart SDK 2.17.1 or higher @@ -112,7 +112,7 @@ To use the Maps Flutter Plugin add the git dependency to the pubspec.yaml: ``` dependencies: - mapbox_maps_flutter: ^0.5.1 + mapbox_maps_flutter: ^0.7.0 ``` ### Configure permissions diff --git a/android/build.gradle b/android/build.gradle index 9b4d3656f..de7b9d20d 100644 --- a/android/build.gradle +++ b/android/build.gradle @@ -40,6 +40,7 @@ apply plugin: 'com.android.library' apply plugin: 'kotlin-android' android { + namespace "com.mapbox.maps.mapbox_maps" compileSdkVersion 31 sourceSets { @@ -53,6 +54,10 @@ android { sourceCompatibility JavaVersion.VERSION_1_8 targetCompatibility JavaVersion.VERSION_1_8 } + + kotlinOptions { + jvmTarget = "1.8" + } } if (file("$rootDir/gradle/ktlint.gradle").exists() && file("$rootDir/gradle/lint.gradle").exists()) { @@ -64,7 +69,7 @@ if (file("$rootDir/gradle/ktlint.gradle").exists() && file("$rootDir/gradle/lint dependencies { implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version" - implementation ("com.mapbox.maps:android:10.13.0") { + implementation ("com.mapbox.maps:android:10.19.1") { exclude group: 'com.mapbox.plugin', module: 'maps-lifecycle' } diff --git a/example/android/app/build.gradle b/example/android/app/build.gradle index 8d0934045..d4f98309d 100644 --- a/example/android/app/build.gradle +++ b/example/android/app/build.gradle @@ -1,3 +1,9 @@ +plugins { + id "com.android.application" + id "kotlin-android" + id "dev.flutter.flutter-gradle-plugin" +} + def localProperties = new Properties() def localPropertiesFile = rootProject.file('local.properties') if (localPropertiesFile.exists()) { @@ -6,11 +12,6 @@ if (localPropertiesFile.exists()) { } } -def flutterRoot = localProperties.getProperty('flutter.sdk') -if (flutterRoot == null) { - throw new GradleException("Flutter SDK not found. Define location with flutter.sdk in the local.properties file.") -} - def flutterVersionCode = localProperties.getProperty('flutter.versionCode') if (flutterVersionCode == null) { flutterVersionCode = '1' @@ -21,19 +22,16 @@ if (flutterVersionName == null) { flutterVersionName = '1.0' } -apply plugin: 'com.android.application' -apply plugin: 'kotlin-android' -apply from: "$flutterRoot/packages/flutter_tools/gradle/flutter.gradle" - android { - compileSdkVersion 33 + namespace "com.mapbox.maps.mapbox_maps_example" + compileSdkVersion 35 sourceSets { main.java.srcDirs += 'src/main/kotlin' } defaultConfig { - applicationId "com.mapbox.maps.flutter.example" + applicationId "com.mapbox.maps.mapbox_maps_example" minSdkVersion 21 targetSdkVersion 31 versionCode flutterVersionCode.toInteger() @@ -41,11 +39,26 @@ android { testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" } + compileOptions { + sourceCompatibility JavaVersion.VERSION_1_8 + targetCompatibility JavaVersion.VERSION_1_8 + } + + kotlinOptions { + jvmTarget = "1.8" + } + buildTypes { release { // TODO: Add your own signing config for the release build. // Signing with the debug keys for now, so `flutter run --release` works. signingConfig signingConfigs.debug + minifyEnabled false + shrinkResources false + } + debug { + minifyEnabled false + shrinkResources false } } } diff --git a/example/android/app/proguard-rules.pro b/example/android/app/proguard-rules.pro new file mode 100644 index 000000000..a68641ae7 --- /dev/null +++ b/example/android/app/proguard-rules.pro @@ -0,0 +1,14 @@ +# Keep Mapbox lifecycle plugin +-keep class com.mapbox.maps.plugin.lifecycle.MapboxLifecyclePluginImpl { *; } +-keep class com.mapbox.maps.plugin.lifecycle.* { *; } +-keep class com.mapbox.maps.plugin.** { *; } +-keep class com.mapbox.maps.** { *; } + +# Keep Flutter plugin classes +-keep class io.flutter.plugins.** { *; } +-keep class io.flutter.plugin.** { *; } +-keep class io.flutter.embedding.** { *; } + +# Keep Google Play Core classes (for Flutter deferred components) +-dontwarn com.google.android.play.core.** +-keep class com.google.android.play.core.** { *; } \ No newline at end of file diff --git a/example/android/app/src/debug/AndroidManifest.xml b/example/android/app/src/debug/AndroidManifest.xml index 068a7dc23..34aec1fce 100644 --- a/example/android/app/src/debug/AndroidManifest.xml +++ b/example/android/app/src/debug/AndroidManifest.xml @@ -1,5 +1,4 @@ - + diff --git a/example/android/app/src/main/AndroidManifest.xml b/example/android/app/src/main/AndroidManifest.xml index 40ee65264..de5b27396 100644 --- a/example/android/app/src/main/AndroidManifest.xml +++ b/example/android/app/src/main/AndroidManifest.xml @@ -1,13 +1,14 @@ - + - + + + android:label="Flutter maps example" + android:usesCleartextTraffic="true"> + diff --git a/example/android/build.gradle b/example/android/build.gradle index a6df5389a..3b412013d 100644 --- a/example/android/build.gradle +++ b/example/android/build.gradle @@ -1,14 +1,9 @@ buildscript { - ext.kotlin_version = '1.7.10' + ext.kotlin_version = '1.8.10' repositories { google() mavenCentral() } - - dependencies { - classpath 'com.android.tools.build:gradle:7.3.1' - classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version" - } } allprojects { diff --git a/example/android/gradle.properties b/example/android/gradle.properties index 94adc3a3f..598d13fee 100644 --- a/example/android/gradle.properties +++ b/example/android/gradle.properties @@ -1,3 +1,3 @@ -org.gradle.jvmargs=-Xmx1536M +org.gradle.jvmargs=-Xmx4G android.useAndroidX=true android.enableJetifier=true diff --git a/example/android/gradle/wrapper/gradle-wrapper.properties b/example/android/gradle/wrapper/gradle-wrapper.properties index 8dfddc08f..374212e9c 100644 --- a/example/android/gradle/wrapper/gradle-wrapper.properties +++ b/example/android/gradle/wrapper/gradle-wrapper.properties @@ -3,4 +3,4 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-7.5.1-all.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-8.0-all.zip diff --git a/example/android/settings.gradle b/example/android/settings.gradle index 44e62bcf0..f2b64cfa6 100644 --- a/example/android/settings.gradle +++ b/example/android/settings.gradle @@ -1,11 +1,25 @@ -include ':app' +pluginManagement { + def flutterSdkPath = { + def properties = new Properties() + file("local.properties").withInputStream { properties.load(it) } + def flutterSdkPath = properties.getProperty("flutter.sdk") + assert flutterSdkPath != null, "flutter.sdk not set in local.properties" + return flutterSdkPath + }() -def localPropertiesFile = new File(rootProject.projectDir, "local.properties") -def properties = new Properties() + includeBuild("$flutterSdkPath/packages/flutter_tools/gradle") -assert localPropertiesFile.exists() -localPropertiesFile.withReader("UTF-8") { reader -> properties.load(reader) } + repositories { + google() + mavenCentral() + gradlePluginPortal() + } +} -def flutterSdkPath = properties.getProperty("flutter.sdk") -assert flutterSdkPath != null, "flutter.sdk not set in local.properties" -apply from: "$flutterSdkPath/packages/flutter_tools/gradle/app_plugin_loader.gradle" +plugins { + id "dev.flutter.flutter-plugin-loader" version "1.0.0" + id "com.android.application" version "8.1.0" apply false + id "org.jetbrains.kotlin.android" version "1.8.10" apply false +} + +include ":app" diff --git a/example/integration_test/camera_test.dart b/example/integration_test/camera_test.dart index 7b94734bf..fe3aa5cfd 100644 --- a/example/integration_test/camera_test.dart +++ b/example/integration_test/camera_test.dart @@ -433,8 +433,14 @@ void main() { final options = await mapboxMap.getDragCameraOptions( ScreenCoordinate(x: 0, y: 0), destination); final coordinates = options.center!["coordinates"] as List; - expect((coordinates.first as double).round(), -97); - expect((coordinates.last as double).round(), 69); + + // Platform differences in coordinate systems require different expected values + // Android uses device pixels (scaled by density), iOS uses logical pixels + final expectedLng = Platform.isAndroid ? -97 : -76; + final expectedLat = Platform.isAndroid ? 69 : 60; + + expect((coordinates.first as double).round(), expectedLng); + expect((coordinates.last as double).round(), expectedLat); await addDelay(1000); }); diff --git a/example/ios/Flutter/AppFrameworkInfo.plist b/example/ios/Flutter/AppFrameworkInfo.plist index 9625e105d..0d1408009 100644 --- a/example/ios/Flutter/AppFrameworkInfo.plist +++ b/example/ios/Flutter/AppFrameworkInfo.plist @@ -21,6 +21,6 @@ CFBundleVersion 1.0 MinimumOSVersion - 11.0 + 15.0 diff --git a/example/ios/Podfile b/example/ios/Podfile index 2d273bec5..80306e202 100644 --- a/example/ios/Podfile +++ b/example/ios/Podfile @@ -1,5 +1,5 @@ # Uncomment this line to define a global platform for your project -platform :ios, '11.0' +platform :ios, '15.0' use_frameworks! # CocoaPods analytics sends network stats synchronously affecting flutter build latency. diff --git a/example/ios/Podfile.lock b/example/ios/Podfile.lock index 07aa758b2..00c71150c 100644 --- a/example/ios/Podfile.lock +++ b/example/ios/Podfile.lock @@ -1,26 +1,23 @@ PODS: - Flutter (1.0.0) - - integration_test (0.0.1): + - mapbox_maps_flutter (0.7.0): - Flutter - - mapbox_maps_flutter (0.5.0): + - MapboxMaps (~> 10.19.4) + - MapboxCommon (23.11.4) + - MapboxCoreMaps (10.19.2): + - MapboxCommon (~> 23.11) + - MapboxMaps (10.19.4): + - MapboxCommon (= 23.11.4) + - MapboxCoreMaps (= 10.19.2) + - MapboxMobileEvents (= 2.0.0) + - Turf (= 2.8.0) + - MapboxMobileEvents (2.0.0) + - permission_handler_apple (9.3.0): - Flutter - - MapboxMaps (~> 10.13.1) - - MapboxCommon (23.5.0) - - MapboxCoreMaps (10.13.1): - - MapboxCommon (~> 23.5) - - MapboxMaps (10.13.1): - - MapboxCommon (= 23.5.0) - - MapboxCoreMaps (= 10.13.1) - - MapboxMobileEvents (= 1.0.10) - - Turf (~> 2.0) - - MapboxMobileEvents (1.0.10) - - permission_handler_apple (9.0.4): - - Flutter - - Turf (2.6.1) + - Turf (2.8.0) DEPENDENCIES: - Flutter (from `Flutter`) - - integration_test (from `.symlinks/plugins/integration_test/ios`) - mapbox_maps_flutter (from `.symlinks/plugins/mapbox_maps_flutter/ios`) - permission_handler_apple (from `.symlinks/plugins/permission_handler_apple/ios`) @@ -35,24 +32,21 @@ SPEC REPOS: EXTERNAL SOURCES: Flutter: :path: Flutter - integration_test: - :path: ".symlinks/plugins/integration_test/ios" mapbox_maps_flutter: :path: ".symlinks/plugins/mapbox_maps_flutter/ios" permission_handler_apple: :path: ".symlinks/plugins/permission_handler_apple/ios" SPEC CHECKSUMS: - Flutter: f04841e97a9d0b0a8025694d0796dd46242b2854 - integration_test: 13825b8a9334a850581300559b8839134b124670 - mapbox_maps_flutter: bad1576756da36dce455f94bd8a9a3e2afd0ff76 - MapboxCommon: fdf7fd31c90b7b607cd9c63e37797f023c01d860 - MapboxCoreMaps: 24270c7c6b8cb71819fc2f3c549db9620ee4d019 - MapboxMaps: cb76511b98d3b95c74b0771ed105bc69f30ace6b - MapboxMobileEvents: de50b3a4de180dd129c326e09cd12c8adaaa46d6 - permission_handler_apple: 44366e37eaf29454a1e7b1b7d736c2cceaeb17ce - Turf: 469ce2c3d22e5e8e4818d5a3b254699a5c89efa4 + Flutter: e0871f40cf51350855a761d2e70bf5af5b9b5de7 + mapbox_maps_flutter: 33132440c635630d61a7015691490659ac6fd236 + MapboxCommon: cc47fafe3fe5408ca49240aa80fa64f27f275711 + MapboxCoreMaps: 35685edba03e44468aed57c3dfd7f8795edafda8 + MapboxMaps: f87023cf0d72b180b40ea0b6fb4b2d7db6b73b71 + MapboxMobileEvents: d044b9edbe0ec7df60f6c2c9634fe9a7f449266b + permission_handler_apple: 4ed2196e43d0651e8ff7ca3483a069d469701f2d + Turf: aa2ede4298009639d10db36aba1a7ebaad072a5e -PODFILE CHECKSUM: 04c8a50f0eb98e8e64bc4237a0712e89ba6c14b8 +PODFILE CHECKSUM: e98d932ce674db1883e2c99d62c2fe3f1728145b -COCOAPODS: 1.14.2 +COCOAPODS: 1.16.2 diff --git a/example/ios/Runner.xcodeproj/project.pbxproj b/example/ios/Runner.xcodeproj/project.pbxproj index b344b0429..e8b8bb4a4 100644 --- a/example/ios/Runner.xcodeproj/project.pbxproj +++ b/example/ios/Runner.xcodeproj/project.pbxproj @@ -11,6 +11,7 @@ 1E50EC7628162D9000A396F8 /* RunnerTests.m in Sources */ = {isa = PBXBuildFile; fileRef = 1E50EC7528162D9000A396F8 /* RunnerTests.m */; }; 3B3967161E833CAA004F5970 /* AppFrameworkInfo.plist in Resources */ = {isa = PBXBuildFile; fileRef = 3B3967151E833CAA004F5970 /* AppFrameworkInfo.plist */; }; 74858FAF1ED2DC5600515810 /* AppDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 74858FAE1ED2DC5600515810 /* AppDelegate.swift */; }; + 78A318202AECB46A00862997 /* FlutterGeneratedPluginSwiftPackage in Frameworks */ = {isa = PBXBuildFile; productRef = 78A3181F2AECB46A00862997 /* FlutterGeneratedPluginSwiftPackage */; }; 97C146FC1CF9000F007C117D /* Main.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FA1CF9000F007C117D /* Main.storyboard */; }; 97C146FE1CF9000F007C117D /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FD1CF9000F007C117D /* Assets.xcassets */; }; 97C147011CF9000F007C117D /* LaunchScreen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FF1CF9000F007C117D /* LaunchScreen.storyboard */; }; @@ -80,6 +81,7 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( + 78A318202AECB46A00862997 /* FlutterGeneratedPluginSwiftPackage in Frameworks */, D0F2C3AA8D6C415312599A8A /* Pods_Runner.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; @@ -198,12 +200,16 @@ 9705A1C41CF9048500538489 /* Embed Frameworks */, 3B06AD1E1E4923F5004D2608 /* Thin Binary */, 773B04E9499B9D5A11FF22E3 /* [CP] Embed Pods Frameworks */, + E7B7994ADADAB3852BC706FB /* [CP] Copy Pods Resources */, ); buildRules = ( ); dependencies = ( ); name = Runner; + packageProductDependencies = ( + 78A3181F2AECB46A00862997 /* FlutterGeneratedPluginSwiftPackage */, + ); productName = Runner; productReference = 97C146EE1CF9000F007C117D /* Runner.app */; productType = "com.apple.product-type.application"; @@ -214,7 +220,7 @@ 97C146E61CF9000F007C117D /* Project object */ = { isa = PBXProject; attributes = { - LastUpgradeCheck = 1430; + LastUpgradeCheck = 1510; ORGANIZATIONNAME = ""; TargetAttributes = { 1E50EC7228162D9000A396F8 = { @@ -236,6 +242,9 @@ Base, ); mainGroup = 97C146E51CF9000F007C117D; + packageReferences = ( + 781AD8BC2B33823900A9FFBB /* XCLocalSwiftPackageReference "FlutterGeneratedPluginSwiftPackage" */, + ); productRefGroup = 97C146EF1CF9000F007C117D /* Products */; projectDirPath = ""; projectRoot = ""; @@ -360,6 +369,23 @@ shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n"; showEnvVarsInLog = 0; }; + E7B7994ADADAB3852BC706FB /* [CP] Copy Pods Resources */ = { + isa = PBXShellScriptBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + inputFileListPaths = ( + "${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-resources-${CONFIGURATION}-input-files.xcfilelist", + ); + name = "[CP] Copy Pods Resources"; + outputFileListPaths = ( + "${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-resources-${CONFIGURATION}-output-files.xcfilelist", + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-resources.sh\"\n"; + showEnvVarsInLog = 0; + }; /* End PBXShellScriptBuildPhase section */ /* Begin PBXSourcesBuildPhase section */ @@ -428,7 +454,7 @@ DEVELOPMENT_TEAM = GJZR2MEM28; GCC_C_LANGUAGE_STANDARD = gnu11; GENERATE_INFOPLIST_FILE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 15.2; + IPHONEOS_DEPLOYMENT_TARGET = 15.0; MARKETING_VERSION = 1.0; MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE; MTL_FAST_MATH = YES; @@ -462,7 +488,7 @@ DEVELOPMENT_TEAM = GJZR2MEM28; GCC_C_LANGUAGE_STANDARD = gnu11; GENERATE_INFOPLIST_FILE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 15.2; + IPHONEOS_DEPLOYMENT_TARGET = 15.0; MARKETING_VERSION = 1.0; MTL_FAST_MATH = YES; PRODUCT_BUNDLE_IDENTIFIER = com.mapbox.maps.FlutterRunnerTests; @@ -495,7 +521,7 @@ DEVELOPMENT_TEAM = GJZR2MEM28; GCC_C_LANGUAGE_STANDARD = gnu11; GENERATE_INFOPLIST_FILE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 15.2; + IPHONEOS_DEPLOYMENT_TARGET = 15.0; MARKETING_VERSION = 1.0; MTL_FAST_MATH = YES; PRODUCT_BUNDLE_IDENTIFIER = com.mapbox.maps.FlutterRunnerTests; @@ -551,7 +577,7 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 11.0; + IPHONEOS_DEPLOYMENT_TARGET = 15.0; MTL_ENABLE_DEBUG_INFO = NO; SDKROOT = iphoneos; SUPPORTED_PLATFORMS = iphoneos; @@ -566,8 +592,8 @@ buildSettings = { ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; CLANG_ENABLE_MODULES = YES; - CODE_SIGN_IDENTITY = "Apple Development: Machiney McMachineface"; - CODE_SIGN_STYLE = Manual; + CODE_SIGN_IDENTITY = "Apple Development"; + CODE_SIGN_STYLE = Automatic; CURRENT_PROJECT_VERSION = "$(FLUTTER_BUILD_NUMBER)"; DEVELOPMENT_TEAM = GJZR2MEM28; ENABLE_BITCODE = NO; @@ -578,7 +604,7 @@ ); PRODUCT_BUNDLE_IDENTIFIER = com.mapbox.maps.FlutterMapsExample; PRODUCT_NAME = "$(TARGET_NAME)"; - PROVISIONING_PROFILE_SPECIFIER = "match Development com.mapbox.maps.FlutterMapsExample"; + PROVISIONING_PROFILE_SPECIFIER = ""; SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h"; SWIFT_VERSION = 5.0; VERSIONING_SYSTEM = "apple-generic"; @@ -632,7 +658,7 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 11.0; + IPHONEOS_DEPLOYMENT_TARGET = 15.0; MTL_ENABLE_DEBUG_INFO = YES; ONLY_ACTIVE_ARCH = YES; SDKROOT = iphoneos; @@ -681,7 +707,7 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 11.0; + IPHONEOS_DEPLOYMENT_TARGET = 15.0; MTL_ENABLE_DEBUG_INFO = NO; SDKROOT = iphoneos; SUPPORTED_PLATFORMS = iphoneos; @@ -697,8 +723,8 @@ buildSettings = { ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; CLANG_ENABLE_MODULES = YES; - CODE_SIGN_IDENTITY = "Apple Development: Machiney McMachineface"; - CODE_SIGN_STYLE = Manual; + CODE_SIGN_IDENTITY = "Apple Development"; + CODE_SIGN_STYLE = Automatic; CURRENT_PROJECT_VERSION = "$(FLUTTER_BUILD_NUMBER)"; DEVELOPMENT_TEAM = GJZR2MEM28; ENABLE_BITCODE = NO; @@ -709,7 +735,7 @@ ); PRODUCT_BUNDLE_IDENTIFIER = com.mapbox.maps.FlutterMapsExample; PRODUCT_NAME = "$(TARGET_NAME)"; - PROVISIONING_PROFILE_SPECIFIER = "match Development com.mapbox.maps.FlutterMapsExample"; + PROVISIONING_PROFILE_SPECIFIER = ""; SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h"; SWIFT_OPTIMIZATION_LEVEL = "-Onone"; SWIFT_VERSION = 5.0; @@ -723,8 +749,8 @@ buildSettings = { ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; CLANG_ENABLE_MODULES = YES; - CODE_SIGN_IDENTITY = "Apple Development: Machiney McMachineface"; - CODE_SIGN_STYLE = Manual; + CODE_SIGN_IDENTITY = "Apple Development"; + CODE_SIGN_STYLE = Automatic; CURRENT_PROJECT_VERSION = "$(FLUTTER_BUILD_NUMBER)"; DEVELOPMENT_TEAM = GJZR2MEM28; ENABLE_BITCODE = NO; @@ -735,7 +761,7 @@ ); PRODUCT_BUNDLE_IDENTIFIER = com.mapbox.maps.FlutterMapsExample; PRODUCT_NAME = "$(TARGET_NAME)"; - PROVISIONING_PROFILE_SPECIFIER = "match Development com.mapbox.maps.FlutterMapsExample"; + PROVISIONING_PROFILE_SPECIFIER = ""; SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h"; SWIFT_VERSION = 5.0; VERSIONING_SYSTEM = "apple-generic"; @@ -776,6 +802,20 @@ defaultConfigurationName = Release; }; /* End XCConfigurationList section */ + +/* Begin XCLocalSwiftPackageReference section */ + 781AD8BC2B33823900A9FFBB /* XCLocalSwiftPackageReference "FlutterGeneratedPluginSwiftPackage" */ = { + isa = XCLocalSwiftPackageReference; + relativePath = Flutter/ephemeral/Packages/FlutterGeneratedPluginSwiftPackage; + }; +/* End XCLocalSwiftPackageReference section */ + +/* Begin XCSwiftPackageProductDependency section */ + 78A3181F2AECB46A00862997 /* FlutterGeneratedPluginSwiftPackage */ = { + isa = XCSwiftPackageProductDependency; + productName = FlutterGeneratedPluginSwiftPackage; + }; +/* End XCSwiftPackageProductDependency section */ }; rootObject = 97C146E61CF9000F007C117D /* Project object */; } diff --git a/example/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme b/example/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme index e288360f7..6432723a1 100644 --- a/example/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme +++ b/example/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme @@ -1,10 +1,28 @@ + + + + + + + + + + diff --git a/example/ios/Runner/AppDelegate.swift b/example/ios/Runner/AppDelegate.swift index 70693e4a8..b63630348 100644 --- a/example/ios/Runner/AppDelegate.swift +++ b/example/ios/Runner/AppDelegate.swift @@ -1,7 +1,7 @@ import UIKit import Flutter -@UIApplicationMain +@main @objc class AppDelegate: FlutterAppDelegate { override func application( _ application: UIApplication, diff --git a/example/pubspec.lock b/example/pubspec.lock index 623bbfc3c..419cb888a 100644 --- a/example/pubspec.lock +++ b/example/pubspec.lock @@ -5,42 +5,42 @@ packages: dependency: transitive description: name: async - sha256: "947bfcf187f74dbc5e146c9eb9c0f10c9f8b30743e341481c1e2ed3ecc18c20c" + sha256: "758e6d74e971c3e5aceb4110bfd6698efc7f501675bcfe0c775459a8140750eb" url: "https://pub.dev" source: hosted - version: "2.11.0" + version: "2.13.0" boolean_selector: dependency: transitive description: name: boolean_selector - sha256: "6cfb5af12253eaf2b368f07bacc5a80d1301a071c73360d746b7f2e32d762c66" + sha256: "8aab1771e1243a5063b8b0ff68042d67334e3feab9e95b9490f9a6ebf73b42ea" url: "https://pub.dev" source: hosted - version: "2.1.1" + version: "2.1.2" characters: dependency: transitive description: name: characters - sha256: "04a925763edad70e8443c99234dc3328f442e811f1d8fd1a72f1c8ad0f69a605" + sha256: f71061c654a3380576a52b451dd5532377954cf9dbd272a78fc8479606670803 url: "https://pub.dev" source: hosted - version: "1.3.0" + version: "1.4.0" clock: dependency: transitive description: name: clock - sha256: cb6d7f03e1de671e34607e909a7213e31d7752be4fb66a86d29fe1eb14bfb5cf + sha256: fddb70d9b5277016c77a80201021d40a2247104d9f4aa7bab7157b7e3f05b84b url: "https://pub.dev" source: hosted - version: "1.1.1" + version: "1.1.2" collection: dependency: transitive description: name: collection - sha256: ee67cb0715911d28db6bf4af1026078bd6f0128b07a5f66fb2ed94ec6783c09a + sha256: "2f5709ae4d3d59dd8f7cd309b4e023046b57d8a6c82130785d2b0e5868084e76" url: "https://pub.dev" source: hosted - version: "1.18.0" + version: "1.19.1" cupertino_icons: dependency: "direct main" description: @@ -61,18 +61,18 @@ packages: dependency: transitive description: name: fake_async - sha256: "511392330127add0b769b75a987850d136345d9227c6b94c96a04cf4a391bf78" + sha256: "5368f224a74523e8d2e7399ea1638b37aecfca824a3cc4dfdf77bf1fa905ac44" url: "https://pub.dev" source: hosted - version: "1.3.1" + version: "1.3.3" file: dependency: transitive description: name: file - sha256: "1b92bec4fc2a72f59a8e15af5f52cd441e4a7860b49499d69dfa817af20e925d" + sha256: a3b4f84adafef897088c160faf7dfffb7696046cb13ae90b508c2cbc95d3b8d4 url: "https://pub.dev" source: hosted - version: "6.1.4" + version: "7.0.1" flutter: dependency: "direct main" description: flutter @@ -84,18 +84,23 @@ packages: source: sdk version: "0.0.0" flutter_plugin_android_lifecycle: - dependency: transitive + dependency: "direct main" description: name: flutter_plugin_android_lifecycle - sha256: "5c574d21b98ec92adab05ead10afd2b13ff5856c7ca79696edb338a9dd8ed387" + sha256: c2fe1001710127dfa7da89977a08d591398370d099aacdaa6d44da7eb14b8476 url: "https://pub.dev" source: hosted - version: "2.0.5" + version: "2.0.31" flutter_test: dependency: "direct dev" description: flutter source: sdk version: "0.0.0" + flutter_web_plugins: + dependency: transitive + description: flutter + source: sdk + version: "0.0.0" font_awesome_flutter: dependency: "direct main" description: @@ -138,146 +143,178 @@ packages: url: "https://pub.dev" source: hosted version: "4.6.0" + leak_tracker: + dependency: transitive + description: + name: leak_tracker + sha256: "6bb818ecbdffe216e81182c2f0714a2e62b593f4a4f13098713ff1685dfb6ab0" + url: "https://pub.dev" + source: hosted + version: "10.0.9" + leak_tracker_flutter_testing: + dependency: transitive + description: + name: leak_tracker_flutter_testing + sha256: f8b613e7e6a13ec79cfdc0e97638fddb3ab848452eff057653abd3edba760573 + url: "https://pub.dev" + source: hosted + version: "3.0.9" + leak_tracker_testing: + dependency: transitive + description: + name: leak_tracker_testing + sha256: "6ba465d5d76e67ddf503e1161d1f4a6bc42306f9d66ca1e8f079a47290fb06d3" + url: "https://pub.dev" + source: hosted + version: "3.0.1" mapbox_maps_flutter: dependency: "direct main" description: path: ".." relative: true source: path - version: "0.5.0" + version: "0.7.0" matcher: dependency: transitive description: name: matcher - sha256: "1803e76e6653768d64ed8ff2e1e67bea3ad4b923eb5c56a295c3e634bad5960e" + sha256: dc58c723c3c24bf8d3e2d3ad3f2f9d7bd9cf43ec6feaa64181775e60190153f2 url: "https://pub.dev" source: hosted - version: "0.12.16" + version: "0.12.17" material_color_utilities: dependency: transitive description: name: material_color_utilities - sha256: "9528f2f296073ff54cb9fee677df673ace1218163c3bc7628093e7eed5203d41" + sha256: f7142bb1154231d7ea5f96bc7bde4bda2a0945d2806bb11670e30b850d56bdec url: "https://pub.dev" source: hosted - version: "0.5.0" + version: "0.11.1" meta: dependency: transitive description: name: meta - sha256: a6e590c838b18133bb482a2745ad77c5bb7715fb0451209e1a7567d416678b8e + sha256: e3641ec5d63ebf0d9b41bd43201a66e3fc79a65db5f61fc181f04cd27aab950c url: "https://pub.dev" source: hosted - version: "1.10.0" + version: "1.16.0" path: dependency: transitive description: name: path - sha256: "8829d8a55c13fc0e37127c29fedf290c102f4e40ae94ada574091fe0ff96c917" + sha256: "75cca69d1490965be98c73ceaea117e8a04dd21217b37b292c9ddbec0d955bc5" url: "https://pub.dev" source: hosted - version: "1.8.3" + version: "1.9.1" permission_handler: dependency: "direct main" description: name: permission_handler - sha256: ae51809c535fd765061c7384a67bc24d304d24cfc455c59e2f6a5cec9a37fc9c + sha256: "59adad729136f01ea9e35a48f5d1395e25cba6cea552249ddbe9cf950f5d7849" url: "https://pub.dev" source: hosted - version: "10.0.0" + version: "11.4.0" permission_handler_android: dependency: transitive description: name: permission_handler_android - sha256: "692e5dd690cd9e978e1cefa67d97bddd3a7f4748ddac6cd8bbd1a354a6a1869f" + sha256: d3971dcdd76182a0c198c096b5db2f0884b0d4196723d21a866fc4cdea057ebc url: "https://pub.dev" source: hosted - version: "10.0.0" + version: "12.1.0" permission_handler_apple: dependency: transitive description: name: permission_handler_apple - sha256: "6367799be76d1fe70ffe2df7f025abfe28818b450f550621778995badbebf519" + sha256: f000131e755c54cf4d84a5d8bd6e4149e262cc31c5a8b1d698de1ac85fa41023 url: "https://pub.dev" source: hosted - version: "9.0.4" + version: "9.4.7" + permission_handler_html: + dependency: transitive + description: + name: permission_handler_html + sha256: "38f000e83355abb3392140f6bc3030660cfaef189e1f87824facb76300b4ff24" + url: "https://pub.dev" + source: hosted + version: "0.1.3+5" permission_handler_platform_interface: dependency: transitive description: name: permission_handler_platform_interface - sha256: ca16451bfdc6d26693d10b37b2d81370bdf3f0318422f3eecfd6004f5bd7d21f + sha256: eb99b295153abce5d683cac8c02e22faab63e50679b937fa1bf67d58bb282878 url: "https://pub.dev" source: hosted - version: "3.7.0" + version: "4.3.0" permission_handler_windows: dependency: transitive description: name: permission_handler_windows - sha256: "40ad5ab4d3c65d75c7f3a069065c77503aae19a1cf01ba246d43489e14f1b90c" + sha256: "1a790728016f79a41216d88672dbc5df30e686e811ad4e698bfc51f76ad91f1e" url: "https://pub.dev" source: hosted - version: "0.1.0" + version: "0.2.1" platform: dependency: transitive description: name: platform - sha256: ae68c7bfcd7383af3629daafb32fb4e8681c7154428da4febcff06200585f102 + sha256: "5d6b1b0036a5f331ebc77c850ebc8506cbc1e9416c27e59b439f917a902a4984" url: "https://pub.dev" source: hosted - version: "3.1.2" + version: "3.1.6" plugin_platform_interface: dependency: transitive description: name: plugin_platform_interface - sha256: "075f927ebbab4262ace8d0b283929ac5410c0ac4e7fc123c76429564facfb757" + sha256: "4820fbfdb9478b1ebae27888254d445073732dae3d6ea81f0b7e06d5dedc3f02" url: "https://pub.dev" source: hosted - version: "2.1.2" + version: "2.1.8" process: dependency: transitive description: name: process - sha256: "53fd8db9cec1d37b0574e12f07520d582019cb6c44abf5479a01505099a34a09" + sha256: "107d8be718f120bbba9dcd1e95e3bd325b1b4a4f07db64154635ba03f2567a0d" url: "https://pub.dev" source: hosted - version: "4.2.4" + version: "5.0.3" sky_engine: dependency: transitive description: flutter source: sdk - version: "0.0.99" + version: "0.0.0" source_span: dependency: transitive description: name: source_span - sha256: "53e943d4206a5e30df338fd4c6e7a077e02254531b138a15aec3bd143c1a8b3c" + sha256: "254ee5351d6cb365c859e20ee823c3bb479bf4a293c22d17a9f1bf144ce86f7c" url: "https://pub.dev" source: hosted - version: "1.10.0" + version: "1.10.1" stack_trace: dependency: transitive description: name: stack_trace - sha256: "73713990125a6d93122541237550ee3352a2d84baad52d375a4cad2eb9b7ce0b" + sha256: "8b27215b45d22309b5cddda1aa2b19bdfec9df0e765f2de506401c071d38d1b1" url: "https://pub.dev" source: hosted - version: "1.11.1" + version: "1.12.1" stream_channel: dependency: transitive description: name: stream_channel - sha256: ba2aa5d8cc609d96bbb2899c28934f9e1af5cddbd60a827822ea467161eb54e7 + sha256: "969e04c80b8bcdf826f8f16579c7b14d780458bd97f56d107d3950fdbeef059d" url: "https://pub.dev" source: hosted - version: "2.1.2" + version: "2.1.4" string_scanner: dependency: transitive description: name: string_scanner - sha256: "556692adab6cfa87322a115640c11f13cb77b3f076ddcc5d6ae3c20242bedcde" + sha256: "921cd31725b72fe181906c6a94d987c78e3b98c2e205b397ea399d4054872b43" url: "https://pub.dev" source: hosted - version: "1.2.0" + version: "1.4.1" sync_http: dependency: transitive description: @@ -290,18 +327,18 @@ packages: dependency: transitive description: name: term_glyph - sha256: a29248a84fbb7c79282b40b8c72a1209db169a2e0542bce341da992fe1bc7e84 + sha256: "7f554798625ea768a7518313e58f83891c7f5024f88e46e7182a4558850a4b8e" url: "https://pub.dev" source: hosted - version: "1.2.1" + version: "1.2.2" test_api: dependency: transitive description: name: test_api - sha256: "5c2f730018264d276c20e4f1503fd1308dfbbae39ec8ee63c5236311ac06954b" + sha256: fb31f383e2ee25fbbfe06b40fe21e1e458d14080e3c67e7ba0acfde4df4e0bbd url: "https://pub.dev" source: hosted - version: "0.6.1" + version: "0.7.4" turf: dependency: "direct dev" description: @@ -338,26 +375,26 @@ packages: dependency: transitive description: name: vm_service - sha256: c538be99af830f478718b51630ec1b6bee5e74e52c8a802d328d9e71d35d2583 + sha256: ddfa8d30d89985b96407efce8acbdd124701f96741f2d981ca860662f1c0dc02 url: "https://pub.dev" source: hosted - version: "11.10.0" + version: "15.0.0" web: dependency: transitive description: name: web - sha256: afe077240a270dcfd2aafe77602b4113645af95d0ad31128cc02bce5ac5d5152 + sha256: "868d88a33d8a87b18ffc05f9f030ba328ffefba92d6c127917a2ba740f9cfe4a" url: "https://pub.dev" source: hosted - version: "0.3.0" + version: "1.1.1" webdriver: dependency: transitive description: name: webdriver - sha256: "3c923e918918feeb90c4c9fdf1fe39220fa4c0e8e2c0fffaded174498ef86c49" + sha256: "2f3a14ca026957870cfd9c635b83507e0e51d8091568e90129fbf805aba7cade" url: "https://pub.dev" source: hosted - version: "3.0.2" + version: "3.1.0" sdks: - dart: ">=3.2.0-194.0.dev <4.0.0" - flutter: ">=2.8.0" + dart: ">=3.7.0 <4.0.0" + flutter: ">=3.29.0" diff --git a/example/pubspec.yaml b/example/pubspec.yaml index 0a9315212..60d302af4 100644 --- a/example/pubspec.yaml +++ b/example/pubspec.yaml @@ -1,13 +1,14 @@ name: mapbox_maps_example description: Demonstrates how to use the mapbox_maps_flutter plugin. +version: 0.7.0+1 # The following line prevents the package from being accidentally published to # pub.dev using `pub publish`. This is preferred for private packages. publish_to: 'none' # Remove this line if you wish to publish to pub.dev environment: - sdk: ">=2.19.0 <3.0.0" - flutter: ">=2.0.0" + sdk: ">=3.1.3 <4.0.0" + flutter: ">=3.10.0" dependencies: flutter: @@ -19,9 +20,12 @@ dependencies: path: ../ cupertino_icons: ^1.0.2 - permission_handler: ^10.0.0 + permission_handler: ^11.0.0 font_awesome_flutter: ^10.1.0 http: ^0.13.5 + + # Override for AGP 8.0+ compatibility in example app only + flutter_plugin_android_lifecycle: ^2.0.19 dev_dependencies: flutter_test: diff --git a/ios/Classes/Extensions.swift b/ios/Classes/Extensions.swift index 173d8008b..5ce14e602 100644 --- a/ios/Classes/Extensions.swift +++ b/ios/Classes/Extensions.swift @@ -377,10 +377,10 @@ func toRgb(alpha: Int, red: Int, green: Int, blue: Int) -> Int { extension StyleColor { func rgb() -> Int { return toRgb( - alpha: Int(self.alpha * 255), - red: Int(self.red), - green: Int(self.green), - blue: Int(self.blue) + alpha: Int(alpha.rounded() * 255), + red: Int(self.red.rounded()), + green: Int(self.green.rounded()), + blue: Int(self.blue.rounded()) ) } } diff --git a/ios/mapbox_maps_flutter.podspec b/ios/mapbox_maps_flutter.podspec index 9e1feda5a..c96e6bb4d 100644 --- a/ios/mapbox_maps_flutter.podspec +++ b/ios/mapbox_maps_flutter.podspec @@ -4,7 +4,7 @@ # Pod::Spec.new do |s| s.name = 'mapbox_maps_flutter' - s.version = '0.5.1' + s.version = '0.7.0' s.summary = 'Mapbox Maps SDK Flutter Plugin.' s.description = 'An officially developed solution from Mapbox that enables use of our latest Maps SDK product.' @@ -15,8 +15,8 @@ Pod::Spec.new do |s| s.source_files = 'Classes/**/*' s.dependency 'Flutter' - s.platform = :ios, '11.0' - s.dependency 'MapboxMaps', '~> 10.13.1' + s.platform = :ios, '12.0' + s.dependency 'MapboxMaps', '~> 10.19.4' # Flutter.framework does not contain a i386 slice. s.pod_target_xcconfig = { 'DEFINES_MODULE' => 'YES', 'EXCLUDED_ARCHS[sdk=iphonesimulator*]' => 'i386' } diff --git a/lib/src/map_widget.dart b/lib/src/map_widget.dart index 40a80fb64..9fcf8bebd 100644 --- a/lib/src/map_widget.dart +++ b/lib/src/map_widget.dart @@ -188,7 +188,7 @@ class _MapWidgetState extends State { 'textureView': widget.textureView, 'styleUri': widget.styleUri, 'eventTypes': widget._eventTypes, - 'mapboxPluginVersion': '0.5.1' + 'mapboxPluginVersion': '0.7.0' }; return _mapboxMapsPlatform.buildView( diff --git a/pubspec.yaml b/pubspec.yaml index bfcd79caf..6c218144b 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -1,6 +1,6 @@ name: mapbox_maps_flutter description: A Flutter plugin for integrating Mapbox Maps SDK v10 in Android/iOS application. -version: 0.5.1 +version: 0.7.0 homepage: https://github.com/mapbox/mapbox-maps-flutter environment: @@ -26,7 +26,7 @@ dev_dependencies: pigeon: git: url: https://github.com/evil159/packages.git - ref: 53718b121f385905a7baa1531f771d24bbb25a1d + ref: cc713e558de9bbfd037620c83b001e10a8af2119 path: packages/pigeon