Leanplum / Leanplum-iOS-SDK

Leanplum's integrated solution delivers meaningful engagement across messaging and the in-app experience.
https://www.leanplum.com
Apache License 2.0
71 stars 59 forks source link

Do not use dynamic umbrella framework #553

Closed nzagorchev closed 1 year ago

nzagorchev commented 1 year ago
What Where/Who
JIRA Issue SDK-2616
People Involved @nzagorchev

Background

Leanplum dynamic framework was an umbrella framework and embedded its dependency - CleverTapSDK and its dependencies, in the nested Frameworks folder. This was previously discouraged by Apple but now causes the AppStore Validation to fail with the following errors: "Invalid Bundle. The bundle at 'MyApp.app/Frameworks/Leanplum.framework' contains disallowed file 'Frameworks'". "Invalid Bundle. The bundle at 'MyApp.app/Frameworks/Leanplum.framework' contains disallowed nested bundles".

Implementation

Update the build script, so it also adds the dependencies (CleverTapSDK and SDWebImage) into the Leanplum.framework zip.

When using the dynamic Leanplum framework, developers need to add and embed all dependencies as well.

Testing steps

Manual - AppStore validation.

Is this change backwards-compatible?

Yes