From 303c72e74c11036fc6ec47d25dd62ad21a8f971a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Phile=CC=81mon=20Merlet?= Date: Tue, 2 Dec 2025 16:40:54 +0100 Subject: [PATCH 01/13] Move library files to support SPM --- example/ios/Runner.xcodeproj/project.pbxproj | 42 +++++++++++-------- .../xcshareddata/xcschemes/Runner.xcscheme | 18 ++++++++ ios/Assets/.gitkeep | 0 ios/didomi_sdk/Package.swift | 28 +++++++++++++ .../Sources/DidomiObjC}/DidomiSdkPlugin.m | 4 +- .../DidomiObjC/include}/DidomiSdkPlugin.h | 0 .../Sources/DidomiSwift}/Constants.swift | 0 .../DidomiEventStreamHandler.swift | 0 .../Sources/DidomiSwift}/EntitiesHelper.swift | 0 .../DidomiSwift}/SwiftDidomiSdkPlugin.swift | 0 10 files changed, 72 insertions(+), 20 deletions(-) delete mode 100644 ios/Assets/.gitkeep create mode 100644 ios/didomi_sdk/Package.swift rename ios/{Classes => didomi_sdk/Sources/DidomiObjC}/DidomiSdkPlugin.m (78%) rename ios/{Classes => didomi_sdk/Sources/DidomiObjC/include}/DidomiSdkPlugin.h (100%) rename ios/{Classes => didomi_sdk/Sources/DidomiSwift}/Constants.swift (100%) rename ios/{Classes => didomi_sdk/Sources/DidomiSwift}/DidomiEventStreamHandler.swift (100%) rename ios/{Classes => didomi_sdk/Sources/DidomiSwift}/EntitiesHelper.swift (100%) rename ios/{Classes => didomi_sdk/Sources/DidomiSwift}/SwiftDidomiSdkPlugin.swift (100%) diff --git a/example/ios/Runner.xcodeproj/project.pbxproj b/example/ios/Runner.xcodeproj/project.pbxproj index cd103e54..6deb7ef2 100644 --- a/example/ios/Runner.xcodeproj/project.pbxproj +++ b/example/ios/Runner.xcodeproj/project.pbxproj @@ -11,6 +11,7 @@ 3B3967161E833CAA004F5970 /* AppFrameworkInfo.plist in Resources */ = {isa = PBXBuildFile; fileRef = 3B3967151E833CAA004F5970 /* AppFrameworkInfo.plist */; }; 5BEF40852CA0649DEAF17271 /* Pods_RunnerTests.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 5AC0A7F54D70B4F95B39F312 /* Pods_RunnerTests.framework */; }; 74858FAF1ED2DC5600515810 /* AppDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 74858FAE1ED2DC5600515810 /* AppDelegate.swift */; }; + 78A318202AECB46A00862997 /* FlutterGeneratedPluginSwiftPackage in Frameworks */ = {isa = PBXBuildFile; productRef = 78A3181F2AECB46A00862997 /* FlutterGeneratedPluginSwiftPackage */; }; 889ECD487086994A23280BE6 /* Pods_Runner.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F7459BC1AA35E005B1CCEE6E /* Pods_Runner.framework */; }; 97C146FC1CF9000F007C117D /* Main.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FA1CF9000F007C117D /* Main.storyboard */; }; 97C146FE1CF9000F007C117D /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FD1CF9000F007C117D /* Assets.xcassets */; }; @@ -54,6 +55,7 @@ 6B9521846B7BDD041FDAE9E3 /* Pods-Runner.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Runner.release.xcconfig"; path = "Target Support Files/Pods-Runner/Pods-Runner.release.xcconfig"; sourceTree = ""; }; 74858FAD1ED2DC5600515810 /* Runner-Bridging-Header.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = "Runner-Bridging-Header.h"; sourceTree = ""; }; 74858FAE1ED2DC5600515810 /* AppDelegate.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = AppDelegate.swift; sourceTree = ""; }; + 78E0A7A72DC9AD7400C4905E /* FlutterGeneratedPluginSwiftPackage */ = {isa = PBXFileReference; lastKnownFileType = wrapper; name = FlutterGeneratedPluginSwiftPackage; path = Flutter/ephemeral/Packages/FlutterGeneratedPluginSwiftPackage; sourceTree = ""; }; 7AFA3C8E1D35360C0083082E /* Release.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; name = Release.xcconfig; path = Flutter/Release.xcconfig; sourceTree = ""; }; 9740EEB21CF90195004384FC /* Debug.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; name = Debug.xcconfig; path = Flutter/Debug.xcconfig; sourceTree = ""; }; 9740EEB31CF90195004384FC /* Generated.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; name = Generated.xcconfig; path = Flutter/Generated.xcconfig; sourceTree = ""; }; @@ -75,6 +77,7 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( + 78A318202AECB46A00862997 /* FlutterGeneratedPluginSwiftPackage in Frameworks */, 889ECD487086994A23280BE6 /* Pods_Runner.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; @@ -115,6 +118,7 @@ 9740EEB11CF90186004384FC /* Flutter */ = { isa = PBXGroup; children = ( + 78E0A7A72DC9AD7400C4905E /* FlutterGeneratedPluginSwiftPackage */, 3B3967151E833CAA004F5970 /* AppFrameworkInfo.plist */, 9740EEB21CF90195004384FC /* Debug.xcconfig */, 7AFA3C8E1D35360C0083082E /* Release.xcconfig */, @@ -191,13 +195,15 @@ 97C146EC1CF9000F007C117D /* Resources */, 9705A1C41CF9048500538489 /* Embed Frameworks */, 3B06AD1E1E4923F5004D2608 /* Thin Binary */, - 4C11C7A522D5C5BDF99CED1E /* [CP] Embed Pods Frameworks */, ); buildRules = ( ); dependencies = ( ); name = Runner; + packageProductDependencies = ( + 78A3181F2AECB46A00862997 /* FlutterGeneratedPluginSwiftPackage */, + ); productName = Runner; productReference = 97C146EE1CF9000F007C117D /* Runner.app */; productType = "com.apple.product-type.application"; @@ -249,6 +255,9 @@ Base, ); mainGroup = 97C146E51CF9000F007C117D; + packageReferences = ( + 781AD8BC2B33823900A9FFBB /* XCLocalSwiftPackageReference "FlutterGeneratedPluginSwiftPackage" */, + ); productRefGroup = 97C146EF1CF9000F007C117D /* Products */; projectDirPath = ""; projectRoot = ""; @@ -320,23 +329,6 @@ shellPath = /bin/sh; shellScript = "/bin/sh \"$FLUTTER_ROOT/packages/flutter_tools/bin/xcode_backend.sh\" embed_and_thin"; }; - 4C11C7A522D5C5BDF99CED1E /* [CP] Embed Pods Frameworks */ = { - isa = PBXShellScriptBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - inputFileListPaths = ( - "${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-frameworks-${CONFIGURATION}-input-files.xcfilelist", - ); - name = "[CP] Embed Pods Frameworks"; - outputFileListPaths = ( - "${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-frameworks-${CONFIGURATION}-output-files.xcfilelist", - ); - runOnlyForDeploymentPostprocessing = 0; - shellPath = /bin/sh; - shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-frameworks.sh\"\n"; - showEnvVarsInLog = 0; - }; 9740EEB61CF901F6004384FC /* Run Script */ = { isa = PBXShellScriptBuildPhase; alwaysOutOfDate = 1; @@ -786,6 +778,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 05f39c46..dba210de 100644 --- a/example/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme +++ b/example/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme @@ -5,6 +5,24 @@ + + + + + + + + + + ) -#import +#if __has_include() +#import #else // Support project import fallback if the generated compatibility header // is not copied when this plugin is created as a library. diff --git a/ios/Classes/DidomiSdkPlugin.h b/ios/didomi_sdk/Sources/DidomiObjC/include/DidomiSdkPlugin.h similarity index 100% rename from ios/Classes/DidomiSdkPlugin.h rename to ios/didomi_sdk/Sources/DidomiObjC/include/DidomiSdkPlugin.h diff --git a/ios/Classes/Constants.swift b/ios/didomi_sdk/Sources/DidomiSwift/Constants.swift similarity index 100% rename from ios/Classes/Constants.swift rename to ios/didomi_sdk/Sources/DidomiSwift/Constants.swift diff --git a/ios/Classes/DidomiEventStreamHandler.swift b/ios/didomi_sdk/Sources/DidomiSwift/DidomiEventStreamHandler.swift similarity index 100% rename from ios/Classes/DidomiEventStreamHandler.swift rename to ios/didomi_sdk/Sources/DidomiSwift/DidomiEventStreamHandler.swift diff --git a/ios/Classes/EntitiesHelper.swift b/ios/didomi_sdk/Sources/DidomiSwift/EntitiesHelper.swift similarity index 100% rename from ios/Classes/EntitiesHelper.swift rename to ios/didomi_sdk/Sources/DidomiSwift/EntitiesHelper.swift diff --git a/ios/Classes/SwiftDidomiSdkPlugin.swift b/ios/didomi_sdk/Sources/DidomiSwift/SwiftDidomiSdkPlugin.swift similarity index 100% rename from ios/Classes/SwiftDidomiSdkPlugin.swift rename to ios/didomi_sdk/Sources/DidomiSwift/SwiftDidomiSdkPlugin.swift From 6773797cf53f4e7dde27143379a7eb265373b8a4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Phile=CC=81mon=20Merlet?= Date: Tue, 2 Dec 2025 18:46:50 +0100 Subject: [PATCH 02/13] Fix project for spm --- ios/didomi_sdk.podspec | 2 +- .../Classes/DidomiObjC/DidomiSdkPlugin.m | 16 +++++++++++ .../DidomiObjC/include/DidomiSdkPlugin.h | 0 .../DidomiSwift/Constants.swift | 2 ++ .../DidomiEventStreamHandler.swift | 0 .../DidomiSwift/EntitiesHelper.swift | 0 .../DidomiSwift/SwiftDidomiSdkPlugin.swift | 8 +++--- ios/didomi_sdk/Package.swift | 28 +++++++++++++------ .../Sources/DidomiObjC/DidomiSdkPlugin.m | 15 ---------- 9 files changed, 43 insertions(+), 28 deletions(-) create mode 100644 ios/didomi_sdk/Classes/DidomiObjC/DidomiSdkPlugin.m rename ios/didomi_sdk/{Sources => Classes}/DidomiObjC/include/DidomiSdkPlugin.h (100%) rename ios/didomi_sdk/{Sources => Classes}/DidomiSwift/Constants.swift (96%) rename ios/didomi_sdk/{Sources => Classes}/DidomiSwift/DidomiEventStreamHandler.swift (100%) rename ios/didomi_sdk/{Sources => Classes}/DidomiSwift/EntitiesHelper.swift (100%) rename ios/didomi_sdk/{Sources => Classes}/DidomiSwift/SwiftDidomiSdkPlugin.swift (99%) delete mode 100644 ios/didomi_sdk/Sources/DidomiObjC/DidomiSdkPlugin.m diff --git a/ios/didomi_sdk.podspec b/ios/didomi_sdk.podspec index 2ca40937..0dabd625 100644 --- a/ios/didomi_sdk.podspec +++ b/ios/didomi_sdk.podspec @@ -10,7 +10,7 @@ Pod::Spec.new do |s| s.license = { :type => 'BSD', :file => '../LICENSE' } s.author = { 'Didomi ' => 'tech@didomi.io' } s.source = { :path => 'git@github.com:didomi/flutter.git', :tag => '2.18.0' } - s.source_files = 'Classes/**/*' + s.source_files = 'didomi_sdk/Sources/**/*.{swift,h,m}' s.dependency 'Flutter' s.dependency 'Didomi-XCFramework', '2.34.0' s.platform = :ios, '13.0' diff --git a/ios/didomi_sdk/Classes/DidomiObjC/DidomiSdkPlugin.m b/ios/didomi_sdk/Classes/DidomiObjC/DidomiSdkPlugin.m new file mode 100644 index 00000000..b0771e0d --- /dev/null +++ b/ios/didomi_sdk/Classes/DidomiObjC/DidomiSdkPlugin.m @@ -0,0 +1,16 @@ +#import "DidomiSdkPlugin.h" +#import + +// For CocoaPods/traditional builds +#if __has_include() +#import +#else +// For SPM builds, import the Swift module directly +@import DidomiSwift; +#endif + +@implementation DidomiSdkPlugin ++ (void)registerWithRegistrar:(NSObject*)registrar { + [SwiftDidomiSdkPlugin registerWithRegistrar:registrar]; +} +@end diff --git a/ios/didomi_sdk/Sources/DidomiObjC/include/DidomiSdkPlugin.h b/ios/didomi_sdk/Classes/DidomiObjC/include/DidomiSdkPlugin.h similarity index 100% rename from ios/didomi_sdk/Sources/DidomiObjC/include/DidomiSdkPlugin.h rename to ios/didomi_sdk/Classes/DidomiObjC/include/DidomiSdkPlugin.h diff --git a/ios/didomi_sdk/Sources/DidomiSwift/Constants.swift b/ios/didomi_sdk/Classes/DidomiSwift/Constants.swift similarity index 96% rename from ios/didomi_sdk/Sources/DidomiSwift/Constants.swift rename to ios/didomi_sdk/Classes/DidomiSwift/Constants.swift index f05122cb..e22e47c1 100644 --- a/ios/didomi_sdk/Sources/DidomiSwift/Constants.swift +++ b/ios/didomi_sdk/Classes/DidomiSwift/Constants.swift @@ -5,6 +5,8 @@ // Created by Philémon Merlet on 10/05/2021. // +import Foundation + struct Constants { // Channels names static let methodsChannelName = "didomi_sdk" diff --git a/ios/didomi_sdk/Sources/DidomiSwift/DidomiEventStreamHandler.swift b/ios/didomi_sdk/Classes/DidomiSwift/DidomiEventStreamHandler.swift similarity index 100% rename from ios/didomi_sdk/Sources/DidomiSwift/DidomiEventStreamHandler.swift rename to ios/didomi_sdk/Classes/DidomiSwift/DidomiEventStreamHandler.swift diff --git a/ios/didomi_sdk/Sources/DidomiSwift/EntitiesHelper.swift b/ios/didomi_sdk/Classes/DidomiSwift/EntitiesHelper.swift similarity index 100% rename from ios/didomi_sdk/Sources/DidomiSwift/EntitiesHelper.swift rename to ios/didomi_sdk/Classes/DidomiSwift/EntitiesHelper.swift diff --git a/ios/didomi_sdk/Sources/DidomiSwift/SwiftDidomiSdkPlugin.swift b/ios/didomi_sdk/Classes/DidomiSwift/SwiftDidomiSdkPlugin.swift similarity index 99% rename from ios/didomi_sdk/Sources/DidomiSwift/SwiftDidomiSdkPlugin.swift rename to ios/didomi_sdk/Classes/DidomiSwift/SwiftDidomiSdkPlugin.swift index d2c11482..36f39a5f 100644 --- a/ios/didomi_sdk/Sources/DidomiSwift/SwiftDidomiSdkPlugin.swift +++ b/ios/didomi_sdk/Classes/DidomiSwift/SwiftDidomiSdkPlugin.swift @@ -2,7 +2,7 @@ import Flutter import UIKit import Didomi -public class SwiftDidomiSdkPlugin: NSObject, FlutterPlugin { +@objc public class SwiftDidomiSdkPlugin: NSObject, FlutterPlugin { /// Default message if SDK is not ready private static let didomiNotReadyException: String = "Didomi SDK is not ready. Use the onReady callback to access this method." @@ -12,13 +12,13 @@ public class SwiftDidomiSdkPlugin: NSObject, FlutterPlugin { override init() { super.init() - + if let userAgentVersion = Constants.userAgentVersion { Didomi.shared.setUserAgent(name: Constants.userAgentName, version: userAgentVersion) } } - - public static func register(with registrar: FlutterPluginRegistrar) { + + @objc public static func register(with registrar: FlutterPluginRegistrar) { let channel = FlutterMethodChannel(name: Constants.methodsChannelName, binaryMessenger: registrar.messenger()) let instance = SwiftDidomiSdkPlugin() registrar.addMethodCallDelegate(instance, channel: channel) diff --git a/ios/didomi_sdk/Package.swift b/ios/didomi_sdk/Package.swift index c14fb800..9a2aa2e6 100644 --- a/ios/didomi_sdk/Package.swift +++ b/ios/didomi_sdk/Package.swift @@ -6,23 +6,35 @@ import PackageDescription let package = Package( name: "didomi_sdk", platforms: [ - .iOS("10.0") + .iOS("13.0") ], products: [ - .library(name: "didomi-sdk", targets: ["DidomiSwift", "DidomiObjC"]) + .library(name: "didomi-sdk", targets: ["didomi_sdk"]) + ], + dependencies: [ + .package(url: "https://github.com/didomi/didomi-ios-sdk-spm", from: "2.34.0") ], - dependencies: [], targets: [ .target( name: "DidomiSwift", - dependencies: [], - resources: [] + dependencies: [ + .product(name: "Didomi", package: "didomi-ios-sdk-spm") + ], + path: "Classes/DidomiSwift", + resources: [], + linkerSettings: [ + .linkedFramework("Flutter", .when(platforms: [.iOS])) + ] ), .target( - name: "DidomiObjC", - dependencies: [], + name: "didomi_sdk", + dependencies: ["DidomiSwift"], + path: "Classes/DidomiObjC", resources: [], - publicHeadersPath: "include" + publicHeadersPath: "include", + linkerSettings: [ + .linkedFramework("Flutter", .when(platforms: [.iOS])) + ] ) ] ) diff --git a/ios/didomi_sdk/Sources/DidomiObjC/DidomiSdkPlugin.m b/ios/didomi_sdk/Sources/DidomiObjC/DidomiSdkPlugin.m deleted file mode 100644 index 7d56e46c..00000000 --- a/ios/didomi_sdk/Sources/DidomiObjC/DidomiSdkPlugin.m +++ /dev/null @@ -1,15 +0,0 @@ -#import "DidomiSdkPlugin.h" -#if __has_include() -#import -#else -// Support project import fallback if the generated compatibility header -// is not copied when this plugin is created as a library. -// https://forums.swift.org/t/swift-static-libraries-dont-copy-generated-objective-c-header/19816 -#import "didomi_sdk-Swift.h" -#endif - -@implementation DidomiSdkPlugin -+ (void)registerWithRegistrar:(NSObject*)registrar { - [SwiftDidomiSdkPlugin registerWithRegistrar:registrar]; -} -@end From 7ea9013ee5dccfa1a15cee2539b652b42c2cd1fa Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Phile=CC=81mon=20Merlet?= Date: Wed, 3 Dec 2025 09:57:19 +0100 Subject: [PATCH 03/13] Update example podfile --- example/ios/Podfile.lock | 19 ------------------- 1 file changed, 19 deletions(-) diff --git a/example/ios/Podfile.lock b/example/ios/Podfile.lock index 6e9d1ff2..0158e991 100644 --- a/example/ios/Podfile.lock +++ b/example/ios/Podfile.lock @@ -1,34 +1,15 @@ PODS: - - Didomi-XCFramework (2.34.0) - - didomi_sdk (2.18.0): - - Didomi-XCFramework (= 2.34.0) - - Flutter - Flutter (1.0.0) - - integration_test (0.0.1): - - Flutter DEPENDENCIES: - - didomi_sdk (from `.symlinks/plugins/didomi_sdk/ios`) - Flutter (from `Flutter`) - - integration_test (from `.symlinks/plugins/integration_test/ios`) - -SPEC REPOS: - trunk: - - Didomi-XCFramework EXTERNAL SOURCES: - didomi_sdk: - :path: ".symlinks/plugins/didomi_sdk/ios" Flutter: :path: Flutter - integration_test: - :path: ".symlinks/plugins/integration_test/ios" SPEC CHECKSUMS: - Didomi-XCFramework: 671c92122f40c407fc0d24f101c27c898ac83a61 - didomi_sdk: 0b8b5935f1b53169cfa87d9401a1d3ed8c455b85 Flutter: cabc95a1d2626b1b06e7179b784ebcf0c0cde467 - integration_test: 252f60fa39af5e17c3aa9899d35d908a0721b573 PODFILE CHECKSUM: e2772aabdb96c4d254f2b01df983810e9a468979 From 33eb416dc32ac1ed22136641a71d6e9e5e574449 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Phile=CC=81mon=20Merlet?= Date: Wed, 3 Dec 2025 10:14:49 +0100 Subject: [PATCH 04/13] Add didomi_sdk umbrella --- ios/didomi_sdk/Classes/DidomiObjC/include/didomi_sdk.h | 8 ++++++++ 1 file changed, 8 insertions(+) create mode 100644 ios/didomi_sdk/Classes/DidomiObjC/include/didomi_sdk.h diff --git a/ios/didomi_sdk/Classes/DidomiObjC/include/didomi_sdk.h b/ios/didomi_sdk/Classes/DidomiObjC/include/didomi_sdk.h new file mode 100644 index 00000000..0cb5efd7 --- /dev/null +++ b/ios/didomi_sdk/Classes/DidomiObjC/include/didomi_sdk.h @@ -0,0 +1,8 @@ +// +// didomi_sdk.h +// didomi_sdk +// +// Umbrella header for didomi_sdk module +// + +#import "DidomiSdkPlugin.h" From d75ac0b9f3ba0d21769975f008cb5f7dbbedf6c7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Phile=CC=81mon=20Merlet?= Date: Wed, 3 Dec 2025 11:08:32 +0100 Subject: [PATCH 05/13] Fix incorrect classes path --- example/ios/Podfile.lock | 19 +++++++++++++++++++ ios/didomi_sdk.podspec | 3 ++- 2 files changed, 21 insertions(+), 1 deletion(-) diff --git a/example/ios/Podfile.lock b/example/ios/Podfile.lock index 0158e991..e35f4926 100644 --- a/example/ios/Podfile.lock +++ b/example/ios/Podfile.lock @@ -1,15 +1,34 @@ PODS: + - Didomi-XCFramework (2.34.0) + - didomi_sdk (2.18.0): + - Didomi-XCFramework (= 2.34.0) + - Flutter - Flutter (1.0.0) + - integration_test (0.0.1): + - Flutter DEPENDENCIES: + - didomi_sdk (from `.symlinks/plugins/didomi_sdk/ios`) - Flutter (from `Flutter`) + - integration_test (from `.symlinks/plugins/integration_test/ios`) + +SPEC REPOS: + trunk: + - Didomi-XCFramework EXTERNAL SOURCES: + didomi_sdk: + :path: ".symlinks/plugins/didomi_sdk/ios" Flutter: :path: Flutter + integration_test: + :path: ".symlinks/plugins/integration_test/ios" SPEC CHECKSUMS: + Didomi-XCFramework: 671c92122f40c407fc0d24f101c27c898ac83a61 + didomi_sdk: cd6fc1713dec59d1ac293f5b6fe7d6bae17a28fa Flutter: cabc95a1d2626b1b06e7179b784ebcf0c0cde467 + integration_test: 4a889634ef21a45d28d50d622cf412dc6d9f586e PODFILE CHECKSUM: e2772aabdb96c4d254f2b01df983810e9a468979 diff --git a/ios/didomi_sdk.podspec b/ios/didomi_sdk.podspec index 0dabd625..d8b08652 100644 --- a/ios/didomi_sdk.podspec +++ b/ios/didomi_sdk.podspec @@ -10,7 +10,8 @@ Pod::Spec.new do |s| s.license = { :type => 'BSD', :file => '../LICENSE' } s.author = { 'Didomi ' => 'tech@didomi.io' } s.source = { :path => 'git@github.com:didomi/flutter.git', :tag => '2.18.0' } - s.source_files = 'didomi_sdk/Sources/**/*.{swift,h,m}' + s.source_files = 'didomi_sdk/Classes/**/*.{swift,h,m}' + s.public_header_files = 'didomi_sdk/Classes/DidomiObjC/include/**/*.h' s.dependency 'Flutter' s.dependency 'Didomi-XCFramework', '2.34.0' s.platform = :ios, '13.0' From 1d1022becb155efd96864f4bbd0a0c479c7ad831 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Phile=CC=81mon=20Merlet?= Date: Thu, 4 Dec 2025 11:54:03 +0100 Subject: [PATCH 06/13] After attempt to clean unnecessary changes --- example/ios/Runner.xcodeproj/project.pbxproj | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/example/ios/Runner.xcodeproj/project.pbxproj b/example/ios/Runner.xcodeproj/project.pbxproj index 6deb7ef2..b8f9c277 100644 --- a/example/ios/Runner.xcodeproj/project.pbxproj +++ b/example/ios/Runner.xcodeproj/project.pbxproj @@ -195,6 +195,7 @@ 97C146EC1CF9000F007C117D /* Resources */, 9705A1C41CF9048500538489 /* Embed Frameworks */, 3B06AD1E1E4923F5004D2608 /* Thin Binary */, + 50A0FB47D488346EABFE2884 /* [CP] Embed Pods Frameworks */, ); buildRules = ( ); @@ -329,6 +330,23 @@ shellPath = /bin/sh; shellScript = "/bin/sh \"$FLUTTER_ROOT/packages/flutter_tools/bin/xcode_backend.sh\" embed_and_thin"; }; + 50A0FB47D488346EABFE2884 /* [CP] Embed Pods Frameworks */ = { + isa = PBXShellScriptBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + inputFileListPaths = ( + "${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-frameworks-${CONFIGURATION}-input-files.xcfilelist", + ); + name = "[CP] Embed Pods Frameworks"; + outputFileListPaths = ( + "${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-frameworks-${CONFIGURATION}-output-files.xcfilelist", + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-frameworks.sh\"\n"; + showEnvVarsInLog = 0; + }; 9740EEB61CF901F6004384FC /* Run Script */ = { isa = PBXShellScriptBuildPhase; alwaysOutOfDate = 1; From 8a5c035b977b62fa125a49a49b358be298c52395 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Phile=CC=81mon=20Merlet?= Date: Thu, 4 Dec 2025 15:15:41 +0100 Subject: [PATCH 07/13] Add step to build sample using SPM --- .github/workflows/build.yml | 18 ++++++++++++++++-- 1 file changed, 16 insertions(+), 2 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index c448d8d7..c21fd77e 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -95,10 +95,24 @@ jobs: working-directory: ./example/ios run: pod update - # iOS IPA - - name: Build iOS Sample + # iOS IPA with SPM + - name: Build iOS Sample (SPM) working-directory: ./example run: | + flutter config --enable-swift-package-manager + flutter build ios --no-codesign + cd build/ios/iphoneos + mkdir Payload + cd Payload + ln -s ../Runner.app + cd .. + zip -r app-spm.ipa Payload + + # iOS IPA with CocoaPods + - name: Build iOS Sample (CocoaPods) + working-directory: ./example + run: | + flutter config --no-enable-swift-package-manager flutter build ios --no-codesign cd build/ios/iphoneos mkdir Payload From a5fcf948267721b41f4a4b11d293f3c0f8498c1f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Phile=CC=81mon=20Merlet?= Date: Thu, 4 Dec 2025 15:30:29 +0100 Subject: [PATCH 08/13] Fix mkdir --- .github/workflows/build.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index c21fd77e..ecc9257c 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -102,7 +102,7 @@ jobs: flutter config --enable-swift-package-manager flutter build ios --no-codesign cd build/ios/iphoneos - mkdir Payload + mkdir -p Payload cd Payload ln -s ../Runner.app cd .. @@ -115,7 +115,7 @@ jobs: flutter config --no-enable-swift-package-manager flutter build ios --no-codesign cd build/ios/iphoneos - mkdir Payload + mkdir -p Payload cd Payload ln -s ../Runner.app cd .. From 04c0c08c9f36f74fc5516a0e4e24d25510adec54 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Phile=CC=81mon=20Merlet?= Date: Thu, 4 Dec 2025 16:12:05 +0100 Subject: [PATCH 09/13] Make sure both CocoaPods and SPM are built correctly --- .github/workflows/build.yml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index ecc9257c..fec87b7f 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -102,11 +102,11 @@ jobs: flutter config --enable-swift-package-manager flutter build ios --no-codesign cd build/ios/iphoneos - mkdir -p Payload - cd Payload + mkdir Payload-spm + cd Payload-spm ln -s ../Runner.app cd .. - zip -r app-spm.ipa Payload + zip -r app-spm.ipa Payload-spm # iOS IPA with CocoaPods - name: Build iOS Sample (CocoaPods) @@ -115,7 +115,7 @@ jobs: flutter config --no-enable-swift-package-manager flutter build ios --no-codesign cd build/ios/iphoneos - mkdir -p Payload + mkdir Payload cd Payload ln -s ../Runner.app cd .. From 87d9b08c2f3dcbfe04f3f0b731cb8a7819bc41ae Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Phile=CC=81mon=20Merlet?= Date: Thu, 4 Dec 2025 16:36:10 +0100 Subject: [PATCH 10/13] Update native SDK used for SPM --- .github/scripts/update_native_sdks.sh | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.github/scripts/update_native_sdks.sh b/.github/scripts/update_native_sdks.sh index 9020102b..741b2c53 100644 --- a/.github/scripts/update_native_sdks.sh +++ b/.github/scripts/update_native_sdks.sh @@ -34,7 +34,7 @@ echo "Android SDK last version is $androidVersion" sed -i~ -e "s|io.didomi.sdk:android:[0-9]\{1,2\}.[0-9]\{1,2\}.[0-9]\{1,2\}|io.didomi.sdk:android:$androidVersion|g" android/build.gradle || exit 1 -# Update ios SDK Version +# Update ios SDK Version for both CocoaPods and SPM builds iOSVersion=$(pod_last_version) if [[ ! $iOSVersion =~ ^[0-9]+.[0-9]+.[0-9]+$ ]]; then echo "Error while getting ios SDK version ($iOSVersion)" @@ -44,6 +44,7 @@ fi echo "iOS SDK last version is $iOSVersion" sed -i~ -e "s|s.dependency 'Didomi-XCFramework', '[0-9]\{1,2\}.[0-9]\{1,2\}.[0-9]\{1,2\}'|s.dependency 'Didomi-XCFramework', '$iOSVersion'|g" ios/didomi_sdk.podspec || exit 1 +sed -i~ -e "s|from: \"[0-9]\{1,2\}.[0-9]\{1,2\}.[0-9]\{1,2\}\"|from: \"$iOSVersion\"|g" ios/didomi_sdk/Package.swift || exit 1 # Cleanup backup files find . -type f -name '*~' -delete From 4000aab955931c84c99556e9f819ec62a3a789a2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Phile=CC=81mon=20Merlet?= Date: Thu, 4 Dec 2025 16:49:03 +0100 Subject: [PATCH 11/13] Small cleanup for sdk files --- example/ios/Runner.xcodeproj/project.pbxproj | 18 ------------------ ios/didomi_sdk.podspec | 4 ++-- ios/didomi_sdk/Package.swift | 4 ++-- .../DidomiObjC/DidomiSdkPlugin.m | 0 .../DidomiObjC/include/DidomiSdkPlugin.h | 0 .../DidomiObjC/include/didomi_sdk.h | 0 .../DidomiSwift/Constants.swift | 0 .../DidomiSwift/DidomiEventStreamHandler.swift | 0 .../DidomiSwift/EntitiesHelper.swift | 0 .../DidomiSwift/SwiftDidomiSdkPlugin.swift | 0 10 files changed, 4 insertions(+), 22 deletions(-) rename ios/didomi_sdk/{Classes => Sources}/DidomiObjC/DidomiSdkPlugin.m (100%) rename ios/didomi_sdk/{Classes => Sources}/DidomiObjC/include/DidomiSdkPlugin.h (100%) rename ios/didomi_sdk/{Classes => Sources}/DidomiObjC/include/didomi_sdk.h (100%) rename ios/didomi_sdk/{Classes => Sources}/DidomiSwift/Constants.swift (100%) rename ios/didomi_sdk/{Classes => Sources}/DidomiSwift/DidomiEventStreamHandler.swift (100%) rename ios/didomi_sdk/{Classes => Sources}/DidomiSwift/EntitiesHelper.swift (100%) rename ios/didomi_sdk/{Classes => Sources}/DidomiSwift/SwiftDidomiSdkPlugin.swift (100%) diff --git a/example/ios/Runner.xcodeproj/project.pbxproj b/example/ios/Runner.xcodeproj/project.pbxproj index b8f9c277..6deb7ef2 100644 --- a/example/ios/Runner.xcodeproj/project.pbxproj +++ b/example/ios/Runner.xcodeproj/project.pbxproj @@ -195,7 +195,6 @@ 97C146EC1CF9000F007C117D /* Resources */, 9705A1C41CF9048500538489 /* Embed Frameworks */, 3B06AD1E1E4923F5004D2608 /* Thin Binary */, - 50A0FB47D488346EABFE2884 /* [CP] Embed Pods Frameworks */, ); buildRules = ( ); @@ -330,23 +329,6 @@ shellPath = /bin/sh; shellScript = "/bin/sh \"$FLUTTER_ROOT/packages/flutter_tools/bin/xcode_backend.sh\" embed_and_thin"; }; - 50A0FB47D488346EABFE2884 /* [CP] Embed Pods Frameworks */ = { - isa = PBXShellScriptBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - inputFileListPaths = ( - "${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-frameworks-${CONFIGURATION}-input-files.xcfilelist", - ); - name = "[CP] Embed Pods Frameworks"; - outputFileListPaths = ( - "${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-frameworks-${CONFIGURATION}-output-files.xcfilelist", - ); - runOnlyForDeploymentPostprocessing = 0; - shellPath = /bin/sh; - shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-frameworks.sh\"\n"; - showEnvVarsInLog = 0; - }; 9740EEB61CF901F6004384FC /* Run Script */ = { isa = PBXShellScriptBuildPhase; alwaysOutOfDate = 1; diff --git a/ios/didomi_sdk.podspec b/ios/didomi_sdk.podspec index d8b08652..50d80468 100644 --- a/ios/didomi_sdk.podspec +++ b/ios/didomi_sdk.podspec @@ -10,8 +10,8 @@ Pod::Spec.new do |s| s.license = { :type => 'BSD', :file => '../LICENSE' } s.author = { 'Didomi ' => 'tech@didomi.io' } s.source = { :path => 'git@github.com:didomi/flutter.git', :tag => '2.18.0' } - s.source_files = 'didomi_sdk/Classes/**/*.{swift,h,m}' - s.public_header_files = 'didomi_sdk/Classes/DidomiObjC/include/**/*.h' + s.source_files = 'didomi_sdk/Sources/**/*.{swift,h,m}' + s.public_header_files = 'didomi_sdk/Sources/DidomiObjC/include/**/*.h' s.dependency 'Flutter' s.dependency 'Didomi-XCFramework', '2.34.0' s.platform = :ios, '13.0' diff --git a/ios/didomi_sdk/Package.swift b/ios/didomi_sdk/Package.swift index 9a2aa2e6..47d56fe3 100644 --- a/ios/didomi_sdk/Package.swift +++ b/ios/didomi_sdk/Package.swift @@ -20,7 +20,7 @@ let package = Package( dependencies: [ .product(name: "Didomi", package: "didomi-ios-sdk-spm") ], - path: "Classes/DidomiSwift", + path: "Sources/DidomiSwift", resources: [], linkerSettings: [ .linkedFramework("Flutter", .when(platforms: [.iOS])) @@ -29,7 +29,7 @@ let package = Package( .target( name: "didomi_sdk", dependencies: ["DidomiSwift"], - path: "Classes/DidomiObjC", + path: "Sources/DidomiObjC", resources: [], publicHeadersPath: "include", linkerSettings: [ diff --git a/ios/didomi_sdk/Classes/DidomiObjC/DidomiSdkPlugin.m b/ios/didomi_sdk/Sources/DidomiObjC/DidomiSdkPlugin.m similarity index 100% rename from ios/didomi_sdk/Classes/DidomiObjC/DidomiSdkPlugin.m rename to ios/didomi_sdk/Sources/DidomiObjC/DidomiSdkPlugin.m diff --git a/ios/didomi_sdk/Classes/DidomiObjC/include/DidomiSdkPlugin.h b/ios/didomi_sdk/Sources/DidomiObjC/include/DidomiSdkPlugin.h similarity index 100% rename from ios/didomi_sdk/Classes/DidomiObjC/include/DidomiSdkPlugin.h rename to ios/didomi_sdk/Sources/DidomiObjC/include/DidomiSdkPlugin.h diff --git a/ios/didomi_sdk/Classes/DidomiObjC/include/didomi_sdk.h b/ios/didomi_sdk/Sources/DidomiObjC/include/didomi_sdk.h similarity index 100% rename from ios/didomi_sdk/Classes/DidomiObjC/include/didomi_sdk.h rename to ios/didomi_sdk/Sources/DidomiObjC/include/didomi_sdk.h diff --git a/ios/didomi_sdk/Classes/DidomiSwift/Constants.swift b/ios/didomi_sdk/Sources/DidomiSwift/Constants.swift similarity index 100% rename from ios/didomi_sdk/Classes/DidomiSwift/Constants.swift rename to ios/didomi_sdk/Sources/DidomiSwift/Constants.swift diff --git a/ios/didomi_sdk/Classes/DidomiSwift/DidomiEventStreamHandler.swift b/ios/didomi_sdk/Sources/DidomiSwift/DidomiEventStreamHandler.swift similarity index 100% rename from ios/didomi_sdk/Classes/DidomiSwift/DidomiEventStreamHandler.swift rename to ios/didomi_sdk/Sources/DidomiSwift/DidomiEventStreamHandler.swift diff --git a/ios/didomi_sdk/Classes/DidomiSwift/EntitiesHelper.swift b/ios/didomi_sdk/Sources/DidomiSwift/EntitiesHelper.swift similarity index 100% rename from ios/didomi_sdk/Classes/DidomiSwift/EntitiesHelper.swift rename to ios/didomi_sdk/Sources/DidomiSwift/EntitiesHelper.swift diff --git a/ios/didomi_sdk/Classes/DidomiSwift/SwiftDidomiSdkPlugin.swift b/ios/didomi_sdk/Sources/DidomiSwift/SwiftDidomiSdkPlugin.swift similarity index 100% rename from ios/didomi_sdk/Classes/DidomiSwift/SwiftDidomiSdkPlugin.swift rename to ios/didomi_sdk/Sources/DidomiSwift/SwiftDidomiSdkPlugin.swift From 4d7e5ee157b050d5d3ea4b388d009f0bd748f79b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Phile=CC=81mon=20Merlet?= Date: Thu, 4 Dec 2025 17:02:50 +0100 Subject: [PATCH 12/13] Revert unneeded changes --- example/ios/Runner.xcodeproj/project.pbxproj | 42 ++++++++----------- .../xcshareddata/xcschemes/Runner.xcscheme | 18 -------- 2 files changed, 18 insertions(+), 42 deletions(-) diff --git a/example/ios/Runner.xcodeproj/project.pbxproj b/example/ios/Runner.xcodeproj/project.pbxproj index 6deb7ef2..7285b534 100644 --- a/example/ios/Runner.xcodeproj/project.pbxproj +++ b/example/ios/Runner.xcodeproj/project.pbxproj @@ -11,7 +11,6 @@ 3B3967161E833CAA004F5970 /* AppFrameworkInfo.plist in Resources */ = {isa = PBXBuildFile; fileRef = 3B3967151E833CAA004F5970 /* AppFrameworkInfo.plist */; }; 5BEF40852CA0649DEAF17271 /* Pods_RunnerTests.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 5AC0A7F54D70B4F95B39F312 /* Pods_RunnerTests.framework */; }; 74858FAF1ED2DC5600515810 /* AppDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 74858FAE1ED2DC5600515810 /* AppDelegate.swift */; }; - 78A318202AECB46A00862997 /* FlutterGeneratedPluginSwiftPackage in Frameworks */ = {isa = PBXBuildFile; productRef = 78A3181F2AECB46A00862997 /* FlutterGeneratedPluginSwiftPackage */; }; 889ECD487086994A23280BE6 /* Pods_Runner.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F7459BC1AA35E005B1CCEE6E /* Pods_Runner.framework */; }; 97C146FC1CF9000F007C117D /* Main.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FA1CF9000F007C117D /* Main.storyboard */; }; 97C146FE1CF9000F007C117D /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FD1CF9000F007C117D /* Assets.xcassets */; }; @@ -55,7 +54,6 @@ 6B9521846B7BDD041FDAE9E3 /* Pods-Runner.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Runner.release.xcconfig"; path = "Target Support Files/Pods-Runner/Pods-Runner.release.xcconfig"; sourceTree = ""; }; 74858FAD1ED2DC5600515810 /* Runner-Bridging-Header.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = "Runner-Bridging-Header.h"; sourceTree = ""; }; 74858FAE1ED2DC5600515810 /* AppDelegate.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = AppDelegate.swift; sourceTree = ""; }; - 78E0A7A72DC9AD7400C4905E /* FlutterGeneratedPluginSwiftPackage */ = {isa = PBXFileReference; lastKnownFileType = wrapper; name = FlutterGeneratedPluginSwiftPackage; path = Flutter/ephemeral/Packages/FlutterGeneratedPluginSwiftPackage; sourceTree = ""; }; 7AFA3C8E1D35360C0083082E /* Release.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; name = Release.xcconfig; path = Flutter/Release.xcconfig; sourceTree = ""; }; 9740EEB21CF90195004384FC /* Debug.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; name = Debug.xcconfig; path = Flutter/Debug.xcconfig; sourceTree = ""; }; 9740EEB31CF90195004384FC /* Generated.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; name = Generated.xcconfig; path = Flutter/Generated.xcconfig; sourceTree = ""; }; @@ -77,7 +75,6 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - 78A318202AECB46A00862997 /* FlutterGeneratedPluginSwiftPackage in Frameworks */, 889ECD487086994A23280BE6 /* Pods_Runner.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; @@ -118,7 +115,6 @@ 9740EEB11CF90186004384FC /* Flutter */ = { isa = PBXGroup; children = ( - 78E0A7A72DC9AD7400C4905E /* FlutterGeneratedPluginSwiftPackage */, 3B3967151E833CAA004F5970 /* AppFrameworkInfo.plist */, 9740EEB21CF90195004384FC /* Debug.xcconfig */, 7AFA3C8E1D35360C0083082E /* Release.xcconfig */, @@ -195,15 +191,13 @@ 97C146EC1CF9000F007C117D /* Resources */, 9705A1C41CF9048500538489 /* Embed Frameworks */, 3B06AD1E1E4923F5004D2608 /* Thin Binary */, + 50A0FB47D488346EABFE2884 /* [CP] Embed Pods Frameworks */, ); buildRules = ( ); dependencies = ( ); name = Runner; - packageProductDependencies = ( - 78A3181F2AECB46A00862997 /* FlutterGeneratedPluginSwiftPackage */, - ); productName = Runner; productReference = 97C146EE1CF9000F007C117D /* Runner.app */; productType = "com.apple.product-type.application"; @@ -255,9 +249,6 @@ Base, ); mainGroup = 97C146E51CF9000F007C117D; - packageReferences = ( - 781AD8BC2B33823900A9FFBB /* XCLocalSwiftPackageReference "FlutterGeneratedPluginSwiftPackage" */, - ); productRefGroup = 97C146EF1CF9000F007C117D /* Products */; projectDirPath = ""; projectRoot = ""; @@ -329,6 +320,23 @@ shellPath = /bin/sh; shellScript = "/bin/sh \"$FLUTTER_ROOT/packages/flutter_tools/bin/xcode_backend.sh\" embed_and_thin"; }; + 50A0FB47D488346EABFE2884 /* [CP] Embed Pods Frameworks */ = { + isa = PBXShellScriptBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + inputFileListPaths = ( + "${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-frameworks-${CONFIGURATION}-input-files.xcfilelist", + ); + name = "[CP] Embed Pods Frameworks"; + outputFileListPaths = ( + "${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-frameworks-${CONFIGURATION}-output-files.xcfilelist", + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-frameworks.sh\"\n"; + showEnvVarsInLog = 0; + }; 9740EEB61CF901F6004384FC /* Run Script */ = { isa = PBXShellScriptBuildPhase; alwaysOutOfDate = 1; @@ -778,20 +786,6 @@ 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 dba210de..05f39c46 100644 --- a/example/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme +++ b/example/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme @@ -5,24 +5,6 @@ - - - - - - - - - - Date: Fri, 5 Dec 2025 10:22:26 +0100 Subject: [PATCH 13/13] Fix minimum iOS version --- ios/didomi_sdk/Package.swift | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ios/didomi_sdk/Package.swift b/ios/didomi_sdk/Package.swift index 47d56fe3..b43528a1 100644 --- a/ios/didomi_sdk/Package.swift +++ b/ios/didomi_sdk/Package.swift @@ -6,7 +6,7 @@ import PackageDescription let package = Package( name: "didomi_sdk", platforms: [ - .iOS("13.0") + .iOS("10.0") ], products: [ .library(name: "didomi-sdk", targets: ["didomi_sdk"])