Thanks a lot for the reply. My original configuration was exactly as described in the link:
"If your app has dependencies between frameworks, configure the dependency with these instructions:
- In the framework target's General settings, add the frameworks it depends on to the Linked Frameworks and Libraries section, as shown in Figure 2.
- In the app project, follow the instructions for Embedding a Framework. The app target is responsible for embedding all of the frameworks, including any frameworks that other frameworks depend on."
---
My framework references the 3rd party framework (as described in point number 1). And my main app embeds the third party framework (as described in point number 2).
This has always worked for me (until now). The app build will succeed but it won't launch (get the error about the info.plist as mentioned in my original post).
Now because I'm just trying to get this all to work, I experimented with my configuration. Turns out embedding the third party framework inside my framework works in my development environment (i can test the app on my device and it works as expected) but I cannot submit it to the App Store (I get the Invalid Bundle Structure error).
In any case, I reverted back to my original configuration (embedding the 3rd party framework inside the main app). Just to recap, my main app links to the frameworks like below:
Third party framework: Embed & Sign.
My framework: Embed & Sign.
And now My framework links to the Third Party Framework but with "Do Not Embed" specified.
And now "Build succeeds" but the app won't run (back to info.plist error). I tried archiving and submitting to the App Store anyway just to see if it'd go through. But App Store Connect won't accept the build and I still get Invalid Bundle Structure error.