Post

Replies

Boosts

Views

Activity

Reply to Unable to export App Clip separately with Ad Hoc distribution
This is a bug with SPM packages - https://bugs.swift.org/browse/SR-13840 that use binary assets, discussion thread. - https://forums.swift.org/t/swift-package-binary-framework-issue/41922 The fix in the case of plugins is mentioned here. - https://github.com/Instabug/Instabug-iOS/issues/330#issuecomment-739475832 The fix in this case of app clips is adding the following snippet in Archive Post actions - Run script phase: bash FRAMEWORK_NAME="ADD THE NAME OF THE BINARY ASSET HERE" APP_PATH=$(dirname "${ARCHIVE_PRODUCTS_PATH}/Applications/${EXECUTABLE_PATH}") APPCLIP_FOLDER_PATH="AppClips" APPCLIP_INSTABUG="${APP_PATH}/${APPCLIP_FOLDER_PATH}/${FRAMEWORK_NAME}.framework" if [ -d "${APPCLIP_INSTABUG}" ]; then echo "Removing ${FRAMEWORK_NAME} from appclips at ${APPCLIP_INSTABUG}" rm -rf "${APPCLIP_INSTABUG}" else echo "${FRAMEWORK_NAME} does not exist at ${APPCLIP_INSTABUG}" fi
Topic: App & System Services SubTopic: General Tags:
Mar ’21
Reply to C++ exceptions on iOS
Any update on this? I have been depending on dynamically rebind __cxa_throw in the loaded libraries to catch the original stack trace, implementation explained here https://github.com/facebook/fishhook The problem is after iOS 14.5 it's not working anymore because I cannot find the Mach-O section where "lazy symbol pointer table" is found, and thus not able to rebind __cxa_throw_. I have discussed this in a lap in WWDC21, it looks related to a change called "Chained fixups" that I'm still searching for. If the bug reported here is fixed I won't need that workaround at all. More info: Sections in > iOS 14.5 Image .... /usr/lib/libc++.1.dylib sect name: __got_weak in __DATA found non lazy symbol pointer table ✔️ sect name: __data in __DATA sect name: __bss in __DATA sect name: __common in __DATA sect name: __got in __DATA_CONST found non lazy symbol pointer table ✔️ sect name: __const in __DATA_CONST Sections < iOS 14.5 Image .... /usr/lib/libc++.1.dylib sect name: __got_weak in __DATA found non lazy symbol pointer table ✔️ sect name: __la_weak_ptr in __DATA found lazy symbol pointer table ✔️ sect name: __got in __DATA_CONST found non lazy symbol pointer table ✔️ sect name: __la_symbol_ptr in __DATA_CONST found lazy symbol pointer table ✔️ ✅ found __cxa_throw in __la_symbol_ptr in __DATA_CONST
Jun ’21