Branch SDK v1.42-1.43.2 causes crash on launch for iOS 10-12 even with LinkPresentation optionally linked
AlexGingell opened this issue · 9 comments
Branch SDK v1.42 - 1.43 causes crash on launch for iOS 10-12 with:
dyld: Library not loaded: /System/Library/Frameworks/LinkPresentation.framework/LinkPresentation
Referenced from: /Users/Hiro/Library/Developer/Xcode/DerivedData/REDACTED-fhchuwfdawvhjigaguzjpsyrsory/Build/Products/Debug-iphonesimulator/Branch.framework/Branch
Reason: image not found
dyld: launch, loading dependent libraries
DYLD_FRAMEWORK_PATH=/Users/Hiro/Library/Developer/Xcode/DerivedData/REDACTED-fhchuwfdawvhjigaguzjpsyrsory/Build/Products/Debug-iphonesimulator
DYLD_FALLBACK_LIBRARY_PATH=/Library/Developer/CoreSimulator/Profiles/Runtimes/iOS 12.4.simruntime/Contents/Resources/RuntimeRoot/usr/lib
DYLD_ROOT_PATH=/Library/Developer/CoreSimulator/Profiles/Runtimes/iOS 12.4.simruntime/Contents/Resources/RuntimeRoot
DYLD_FALLBACK_FRAMEWORK_PATH=/Library/Developer/CoreSimulator/Profiles/Runtimes/iOS 12.4.simruntime/Contents/Resources/RuntimeRoot/System/Library/Frameworks
DYLD_INSERT_LIBRARIES=/Library/Developer/CoreSimulator/Profiles/Runtimes/iOS 12.4.simruntime/Contents/Resources/RuntimeRoot/usr/lib/libBacktraceRecording.dylib:/Library/Developer/CoreSimulator/Profiles/Runtimes/iOS 12.4.simruntime/Contents/Resources/RuntimeRoot/usr/lib/libMainThreadChecker.dylib:/Library/Developer/CoreSimulator/Profiles/Runtimes/iOS 12.4.simruntime/Contents/Resources/RuntimeRoot/Developer/Library/PrivateFrame
Ours is a manual integration. Note that the LinkPresentation framework has been added to Link Binary With Libraries with the 'Optional' status. LinkPresentation is only available from iOS 13.
We note a similar issue here:
fluttercommunity/plus_plugins#222
which was fixed as follows:
fluttercommunity/plus_plugins#224
Is it possible the Branch SDK is strongly requiring a framework which should be weakly required because it is not available on iOS 10-12 ?
We've downgraded to v1.41.0 for now - this works fine. We note that 1.44 now requires iOS 11, and have not tested it as we support iOS 10+.
Steps to reproduce
- Integrate Branch v1.41 - 1.43
- Link the LinkPresentation framework optionally.
- Run on simulator or device iOS 10-12.
Expected behavior
The LinkPresentation framework should not be required on iOS 10 - 12 and Branch should launch and operate normally, omitting LinkPresentation functionality gracefully.
SDK Version
1.42.0 - 1.43.2
XCode Version
13.4.1
Device
All
OS
10-12
Additional Information/Context
No response
Sorry for the delay. This was a confusing documentation issue. Basically, the framework should be marked optional in xcode.
Sorry for the delay. This was a confusing documentation issue. Basically, the framework should be marked optional in xcode.
As stated in my original post, I did have the LinkPresentation framework marked optional in Xcode's linking options. This does not prevent the crashing issue.
@AlexGingell
Ah yea, I totally overlooked that detail. So it looks like it's an issue with the pre-built SDK library, as the error does not occur with other integration methods. Creating a ticket for this internally.