Skip to content

Commit

Permalink
M1 support and update Leanplum framework (#19)
Browse files Browse the repository at this point in the history
* Latest Leanplum SDK and fix M1 simulator support

* Updated kit project to use xcframeworks

* Update Carthage example app to use xcframeworks

* Fix SPM issues with latest dependencies
  • Loading branch information
einsteinx2 authored Jun 13, 2022
1 parent aea33b4 commit 6898a63
Show file tree
Hide file tree
Showing 11 changed files with 119 additions and 96 deletions.
2 changes: 1 addition & 1 deletion Cartfile
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
github "leanplum/leanplum-ios-sdk" ~> 3.1
github "leanplum/leanplum-ios-sdk" ~> 4.1
github "mparticle/mparticle-apple-sdk" ~> 8.0
2 changes: 1 addition & 1 deletion Examples/Carthage/Cartfile
Original file line number Diff line number Diff line change
@@ -1 +1 @@
github "mparticle-integrations/mparticle-apple-integration-leanplum" ~> 7.0.0
github "mparticle-integrations/mparticle-apple-integration-leanplum" ~> 8.0.0
111 changes: 55 additions & 56 deletions Examples/Carthage/mParticle-Leanplum-Example.xcodeproj/project.pbxproj
Original file line number Diff line number Diff line change
Expand Up @@ -3,23 +3,23 @@
archiveVersion = 1;
classes = {
};
objectVersion = 48;
objectVersion = 52;
objects = {

/* Begin PBXBuildFile section */
535B24B528579D79003141C8 /* Leanplum.xcframework in Frameworks */ = {isa = PBXBuildFile; fileRef = 535B24AF28579D39003141C8 /* Leanplum.xcframework */; };
535B24B628579D79003141C8 /* Leanplum.xcframework in Embed Frameworks */ = {isa = PBXBuildFile; fileRef = 535B24AF28579D39003141C8 /* Leanplum.xcframework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; };
535B24B728579D7A003141C8 /* mParticle_Apple_SDK.xcframework in Frameworks */ = {isa = PBXBuildFile; fileRef = 535B24B028579D39003141C8 /* mParticle_Apple_SDK.xcframework */; };
535B24B828579D7B003141C8 /* mParticle_Apple_SDK.xcframework in Embed Frameworks */ = {isa = PBXBuildFile; fileRef = 535B24B028579D39003141C8 /* mParticle_Apple_SDK.xcframework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; };
535B24B928579D7C003141C8 /* mParticle_Leanplum.xcframework in Frameworks */ = {isa = PBXBuildFile; fileRef = 535B24B128579D39003141C8 /* mParticle_Leanplum.xcframework */; };
535B24BA28579D7C003141C8 /* mParticle_Leanplum.xcframework in Embed Frameworks */ = {isa = PBXBuildFile; fileRef = 535B24B128579D39003141C8 /* mParticle_Leanplum.xcframework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; };
DBFA61E21F9ECB8F003A3ED8 /* AppDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = DBFA61E11F9ECB8F003A3ED8 /* AppDelegate.swift */; };
DBFA61E41F9ECB8F003A3ED8 /* ViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = DBFA61E31F9ECB8F003A3ED8 /* ViewController.swift */; };
DBFA61E71F9ECB8F003A3ED8 /* Main.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = DBFA61E51F9ECB8F003A3ED8 /* Main.storyboard */; };
DBFA61E91F9ECB8F003A3ED8 /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = DBFA61E81F9ECB8F003A3ED8 /* Assets.xcassets */; };
DBFA61EC1F9ECB8F003A3ED8 /* LaunchScreen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = DBFA61EA1F9ECB8F003A3ED8 /* LaunchScreen.storyboard */; };
DBFA61F71F9ECB90003A3ED8 /* mParticle_Leanplum_ExampleTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = DBFA61F61F9ECB90003A3ED8 /* mParticle_Leanplum_ExampleTests.swift */; };
DBFA62021F9ECB90003A3ED8 /* mParticle_Leanplum_ExampleUITests.swift in Sources */ = {isa = PBXBuildFile; fileRef = DBFA62011F9ECB90003A3ED8 /* mParticle_Leanplum_ExampleUITests.swift */; };
DBFA62171F9ECE4C003A3ED8 /* Leanplum.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = DBFA62111F9ECE42003A3ED8 /* Leanplum.framework */; };
DBFA62181F9ECE4C003A3ED8 /* Leanplum.framework in Embed Frameworks */ = {isa = PBXBuildFile; fileRef = DBFA62111F9ECE42003A3ED8 /* Leanplum.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; };
DBFA62191F9ECE4C003A3ED8 /* mParticle_Apple_SDK.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = DBFA62131F9ECE42003A3ED8 /* mParticle_Apple_SDK.framework */; };
DBFA621A1F9ECE4C003A3ED8 /* mParticle_Apple_SDK.framework in Embed Frameworks */ = {isa = PBXBuildFile; fileRef = DBFA62131F9ECE42003A3ED8 /* mParticle_Apple_SDK.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; };
DBFA621B1F9ECE4C003A3ED8 /* mParticle_Leanplum.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = DBFA62121F9ECE42003A3ED8 /* mParticle_Leanplum.framework */; };
DBFA621C1F9ECE4C003A3ED8 /* mParticle_Leanplum.framework in Embed Frameworks */ = {isa = PBXBuildFile; fileRef = DBFA62121F9ECE42003A3ED8 /* mParticle_Leanplum.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; };
/* End PBXBuildFile section */

/* Begin PBXContainerItemProxy section */
Expand All @@ -46,16 +46,19 @@
dstPath = "";
dstSubfolderSpec = 10;
files = (
DBFA621C1F9ECE4C003A3ED8 /* mParticle_Leanplum.framework in Embed Frameworks */,
DBFA621A1F9ECE4C003A3ED8 /* mParticle_Apple_SDK.framework in Embed Frameworks */,
DBFA62181F9ECE4C003A3ED8 /* Leanplum.framework in Embed Frameworks */,
535B24B628579D79003141C8 /* Leanplum.xcframework in Embed Frameworks */,
535B24BA28579D7C003141C8 /* mParticle_Leanplum.xcframework in Embed Frameworks */,
535B24B828579D7B003141C8 /* mParticle_Apple_SDK.xcframework in Embed Frameworks */,
);
name = "Embed Frameworks";
runOnlyForDeploymentPostprocessing = 0;
};
/* End PBXCopyFilesBuildPhase section */

/* Begin PBXFileReference section */
535B24AF28579D39003141C8 /* Leanplum.xcframework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.xcframework; name = Leanplum.xcframework; path = Carthage/Build/Leanplum.xcframework; sourceTree = "<group>"; };
535B24B028579D39003141C8 /* mParticle_Apple_SDK.xcframework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.xcframework; name = mParticle_Apple_SDK.xcframework; path = Carthage/Build/mParticle_Apple_SDK.xcframework; sourceTree = "<group>"; };
535B24B128579D39003141C8 /* mParticle_Leanplum.xcframework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.xcframework; name = mParticle_Leanplum.xcframework; path = Carthage/Build/mParticle_Leanplum.xcframework; sourceTree = "<group>"; };
DBFA61DE1F9ECB8F003A3ED8 /* mParticle-Leanplum-Example.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = "mParticle-Leanplum-Example.app"; sourceTree = BUILT_PRODUCTS_DIR; };
DBFA61E11F9ECB8F003A3ED8 /* AppDelegate.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AppDelegate.swift; sourceTree = "<group>"; };
DBFA61E31F9ECB8F003A3ED8 /* ViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ViewController.swift; sourceTree = "<group>"; };
Expand All @@ -69,19 +72,16 @@
DBFA61FD1F9ECB90003A3ED8 /* mParticle-Leanplum-ExampleUITests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = "mParticle-Leanplum-ExampleUITests.xctest"; sourceTree = BUILT_PRODUCTS_DIR; };
DBFA62011F9ECB90003A3ED8 /* mParticle_Leanplum_ExampleUITests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = mParticle_Leanplum_ExampleUITests.swift; sourceTree = "<group>"; };
DBFA62031F9ECB90003A3ED8 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; };
DBFA62111F9ECE42003A3ED8 /* Leanplum.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Leanplum.framework; path = Carthage/Build/iOS/Leanplum.framework; sourceTree = "<group>"; };
DBFA62121F9ECE42003A3ED8 /* mParticle_Leanplum.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = mParticle_Leanplum.framework; path = Carthage/Build/iOS/mParticle_Leanplum.framework; sourceTree = "<group>"; };
DBFA62131F9ECE42003A3ED8 /* mParticle_Apple_SDK.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = mParticle_Apple_SDK.framework; path = Carthage/Build/iOS/mParticle_Apple_SDK.framework; sourceTree = "<group>"; };
/* End PBXFileReference section */

/* Begin PBXFrameworksBuildPhase section */
DBFA61DB1F9ECB8F003A3ED8 /* Frameworks */ = {
isa = PBXFrameworksBuildPhase;
buildActionMask = 2147483647;
files = (
DBFA621B1F9ECE4C003A3ED8 /* mParticle_Leanplum.framework in Frameworks */,
DBFA62191F9ECE4C003A3ED8 /* mParticle_Apple_SDK.framework in Frameworks */,
DBFA62171F9ECE4C003A3ED8 /* Leanplum.framework in Frameworks */,
535B24B528579D79003141C8 /* Leanplum.xcframework in Frameworks */,
535B24B928579D7C003141C8 /* mParticle_Leanplum.xcframework in Frameworks */,
535B24B728579D7A003141C8 /* mParticle_Apple_SDK.xcframework in Frameworks */,
);
runOnlyForDeploymentPostprocessing = 0;
};
Expand Down Expand Up @@ -157,9 +157,9 @@
DBFA62101F9ECD49003A3ED8 /* Frameworks */ = {
isa = PBXGroup;
children = (
DBFA62111F9ECE42003A3ED8 /* Leanplum.framework */,
DBFA62131F9ECE42003A3ED8 /* mParticle_Apple_SDK.framework */,
DBFA62121F9ECE42003A3ED8 /* mParticle_Leanplum.framework */,
535B24AF28579D39003141C8 /* Leanplum.xcframework */,
535B24B028579D39003141C8 /* mParticle_Apple_SDK.xcframework */,
535B24B128579D39003141C8 /* mParticle_Leanplum.xcframework */,
);
name = Frameworks;
sourceTree = "<group>";
Expand All @@ -175,7 +175,6 @@
DBFA61DB1F9ECB8F003A3ED8 /* Frameworks */,
DBFA61DC1F9ECB8F003A3ED8 /* Resources */,
DBFA621D1F9ECE4C003A3ED8 /* Embed Frameworks */,
DBFA621E1F9ECE7E003A3ED8 /* ShellScript */,
);
buildRules = (
);
Expand Down Expand Up @@ -295,28 +294,6 @@
};
/* End PBXResourcesBuildPhase section */

/* Begin PBXShellScriptBuildPhase section */
DBFA621E1F9ECE7E003A3ED8 /* ShellScript */ = {
isa = PBXShellScriptBuildPhase;
buildActionMask = 2147483647;
files = (
);
inputPaths = (
"$(SRCROOT)/Carthage/Build/iOS/Leanplum.framework",
"$(SRCROOT)/Carthage/Build/iOS/mParticle_Leanplum.framework",
"$(SRCROOT)/Carthage/Build/iOS/mParticle_Apple_SDK.framework",
);
outputPaths = (
"$(BUILT_PRODUCTS_DIR)/$(FRAMEWORKS_FOLDER_PATH)/Leanplum.framework",
"$(BUILT_PRODUCTS_DIR)/$(FRAMEWORKS_FOLDER_PATH)/mParticle_Leanplum.framework",
"$(BUILT_PRODUCTS_DIR)/$(FRAMEWORKS_FOLDER_PATH)/mParticle_Apple_SDK.framework",
);
runOnlyForDeploymentPostprocessing = 0;
shellPath = /bin/sh;
shellScript = "/usr/local/bin/carthage copy-frameworks";
};
/* End PBXShellScriptBuildPhase section */

/* Begin PBXSourcesBuildPhase section */
DBFA61DA1F9ECB8F003A3ED8 /* Sources */ = {
isa = PBXSourcesBuildPhase;
Expand Down Expand Up @@ -432,6 +409,8 @@
SDKROOT = iphoneos;
SWIFT_ACTIVE_COMPILATION_CONDITIONS = DEBUG;
SWIFT_OPTIMIZATION_LEVEL = "-Onone";
SWIFT_VERSION = 5.0;
VALIDATE_WORKSPACE = YES;
};
name = Debug;
};
Expand Down Expand Up @@ -480,8 +459,10 @@
IPHONEOS_DEPLOYMENT_TARGET = 11.0;
MTL_ENABLE_DEBUG_INFO = NO;
SDKROOT = iphoneos;
SWIFT_OPTIMIZATION_LEVEL = "-Owholemodule";
VALIDATE_PRODUCT = YES;
SWIFT_COMPILATION_MODE = wholemodule;
SWIFT_OPTIMIZATION_LEVEL = "-O";
SWIFT_VERSION = 5.0;
VALIDATE_WORKSPACE = YES;
};
name = Release;
};
Expand All @@ -494,12 +475,15 @@
FRAMEWORK_SEARCH_PATHS = (
"$(inherited)",
"$(PROJECT_DIR)/Carthage/Build/iOS",
"$(PROJECT_DIR)/Carthage/Build/iOS/Static",
);
INFOPLIST_FILE = "mParticle-Leanplum-Example/Info.plist";
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks";
LD_RUNPATH_SEARCH_PATHS = (
"$(inherited)",
"@executable_path/Frameworks",
);
PRODUCT_BUNDLE_IDENTIFIER = "com.mparticle.example.kit.leanplum.mParticle-Leanplum-Example";
PRODUCT_NAME = "$(TARGET_NAME)";
SWIFT_VERSION = 4.0;
TARGETED_DEVICE_FAMILY = "1,2";
};
name = Debug;
Expand All @@ -513,12 +497,15 @@
FRAMEWORK_SEARCH_PATHS = (
"$(inherited)",
"$(PROJECT_DIR)/Carthage/Build/iOS",
"$(PROJECT_DIR)/Carthage/Build/iOS/Static",
);
INFOPLIST_FILE = "mParticle-Leanplum-Example/Info.plist";
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks";
LD_RUNPATH_SEARCH_PATHS = (
"$(inherited)",
"@executable_path/Frameworks",
);
PRODUCT_BUNDLE_IDENTIFIER = "com.mparticle.example.kit.leanplum.mParticle-Leanplum-Example";
PRODUCT_NAME = "$(TARGET_NAME)";
SWIFT_VERSION = 4.0;
TARGETED_DEVICE_FAMILY = "1,2";
};
name = Release;
Expand All @@ -531,10 +518,13 @@
CODE_SIGN_STYLE = Automatic;
DEVELOPMENT_TEAM = 9RE44VD454;
INFOPLIST_FILE = "mParticle-Leanplum-ExampleTests/Info.plist";
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks";
LD_RUNPATH_SEARCH_PATHS = (
"$(inherited)",
"@executable_path/Frameworks",
"@loader_path/Frameworks",
);
PRODUCT_BUNDLE_IDENTIFIER = "com.mparticle.example.kit.leanplum.mParticle-Leanplum-ExampleTests";
PRODUCT_NAME = "$(TARGET_NAME)";
SWIFT_VERSION = 4.0;
TARGETED_DEVICE_FAMILY = "1,2";
TEST_HOST = "$(BUILT_PRODUCTS_DIR)/mParticle-Leanplum-Example.app/mParticle-Leanplum-Example";
};
Expand All @@ -548,10 +538,13 @@
CODE_SIGN_STYLE = Automatic;
DEVELOPMENT_TEAM = 9RE44VD454;
INFOPLIST_FILE = "mParticle-Leanplum-ExampleTests/Info.plist";
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks";
LD_RUNPATH_SEARCH_PATHS = (
"$(inherited)",
"@executable_path/Frameworks",
"@loader_path/Frameworks",
);
PRODUCT_BUNDLE_IDENTIFIER = "com.mparticle.example.kit.leanplum.mParticle-Leanplum-ExampleTests";
PRODUCT_NAME = "$(TARGET_NAME)";
SWIFT_VERSION = 4.0;
TARGETED_DEVICE_FAMILY = "1,2";
TEST_HOST = "$(BUILT_PRODUCTS_DIR)/mParticle-Leanplum-Example.app/mParticle-Leanplum-Example";
};
Expand All @@ -564,10 +557,13 @@
CODE_SIGN_STYLE = Automatic;
DEVELOPMENT_TEAM = 9RE44VD454;
INFOPLIST_FILE = "mParticle-Leanplum-ExampleUITests/Info.plist";
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks";
LD_RUNPATH_SEARCH_PATHS = (
"$(inherited)",
"@executable_path/Frameworks",
"@loader_path/Frameworks",
);
PRODUCT_BUNDLE_IDENTIFIER = "com.mparticle.example.kit.leanplum.mParticle-Leanplum-ExampleUITests";
PRODUCT_NAME = "$(TARGET_NAME)";
SWIFT_VERSION = 4.0;
TARGETED_DEVICE_FAMILY = "1,2";
TEST_TARGET_NAME = "mParticle-Leanplum-Example";
};
Expand All @@ -580,10 +576,13 @@
CODE_SIGN_STYLE = Automatic;
DEVELOPMENT_TEAM = 9RE44VD454;
INFOPLIST_FILE = "mParticle-Leanplum-ExampleUITests/Info.plist";
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks";
LD_RUNPATH_SEARCH_PATHS = (
"$(inherited)",
"@executable_path/Frameworks",
"@loader_path/Frameworks",
);
PRODUCT_BUNDLE_IDENTIFIER = "com.mparticle.example.kit.leanplum.mParticle-Leanplum-ExampleUITests";
PRODUCT_NAME = "$(TARGET_NAME)";
SWIFT_VERSION = 4.0;
TARGETED_DEVICE_FAMILY = "1,2";
TEST_TARGET_NAME = "mParticle-Leanplum-Example";
};
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ class AppDelegate: UIResponder, UIApplicationDelegate {
var window: UIWindow?


func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool {
func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool {
// Override point for customization after application launch.
let options = MParticleOptions(key: "REPLACEME", secret: "REPLACEME")
MParticle.sharedInstance().start(with: options)
Expand Down
8 changes: 6 additions & 2 deletions Package.swift
Original file line number Diff line number Diff line change
Expand Up @@ -15,13 +15,17 @@ let package = Package(
.upToNextMajor(from: "8.7.0")),
.package(name: "Leanplum",
url: "https://github.com/leanplum/leanplum-ios-sdk",
.upToNextMajor(from: "3.1.0")),
.upToNextMajor(from: "4.1.0")),
],
targets: [
.target(
name: "mParticle-Leanplum",
dependencies: ["mParticle-Apple-SDK","Leanplum"],
path: "mParticle-Leanplum",
publicHeadersPath: "."),
exclude: ["File.swift", "Info.plist"],
publicHeadersPath: ".",
cSettings: [
.headerSearchPath("."),
]),
]
)
6 changes: 3 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,16 +4,16 @@ This repository contains the [Leanplum](https://www.leanplum.com) integration fo

### Adding the integration

1. Add the kit dependency to your app's Podfile or Cartfile:
1. Add the kit dependency via SPM or add to your app's Podfile or Cartfile:

```
pod 'mParticle-Leanplum', '~> 7.0'
pod 'mParticle-Leanplum', '~> 8.0'
```
OR
```
github "mparticle-integrations/mparticle-apple-integration-leanplum" ~> 7.0
github "mparticle-integrations/mparticle-apple-integration-leanplum" ~> 8.0
```
2. Follow the mParticle iOS SDK [quick-start](https://github.com/mParticle/mparticle-apple-sdk), then rebuild and launch your app, and verify that you see `"Included kits: { Leanplum }"` in your Xcode console
Expand Down
9 changes: 3 additions & 6 deletions mParticle-Leanplum.podspec
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
Pod::Spec.new do |s|
s.name = "mParticle-Leanplum"
s.version = "8.0.3"
s.version = "8.2.0"
s.summary = "Leanplum integration for mParticle"

s.description = <<-DESC
Expand All @@ -16,14 +16,11 @@ Pod::Spec.new do |s|
s.ios.deployment_target = "9.0"
s.ios.source_files = 'mParticle-Leanplum/*.{h,m,mm}'
s.ios.dependency 'mParticle-Apple-SDK/mParticle', '~> 8.0'
s.ios.dependency 'Leanplum-iOS-SDK', '~> 3.1'
s.ios.dependency 'Leanplum-iOS-SDK', '~> 4.1'
s.ios.frameworks = 'CFNetwork', 'SystemConfiguration', 'Security', 'CoreLocation', 'StoreKit'
s.ios.weak_frameworks = 'AdSupport'
s.ios.pod_target_xcconfig = {
'FRAMEWORK_SEARCH_PATHS' => '$(inherited) $(PODS_ROOT)/Leanplum-iOS-SDK/**',
'OTHER_LDFLAGS' => '$(inherited) -framework "Leanplum"',
'EXCLUDED_ARCHS[sdk=iphonesimulator*]' => 'arm64'
'OTHER_LDFLAGS' => '$(inherited) -framework "Leanplum"'
}
s.ios.user_target_xcconfig = { 'EXCLUDED_ARCHS[sdk=iphonesimulator*]' => 'arm64' }

end
Loading

0 comments on commit 6898a63

Please sign in to comment.