Altering the target membership for StickerPackExtension.appex irrevocably breaks the Xcode project.

Originator:jelly
Number:rdar://28460089 Date Originated:24-Sep-2016 01:21 PM
Status:Open Resolved:
Product:Developer Tools Product Version:Xcode 8 on macOS Sierra 10.12
Classification:Serious Bug Reproducible:Always
 
Summary:
When using the Sticker Pack Application template, making changes to the Target Membership can cause issues for the project that cannot be repaired without directly altering the project.pbxproj file. Specifically, if the .app target is unchecked within the Target Membership options for StickerPackExtension.appex, checking it again will not resolve the issue that appears (App installation failed - This iMessage application is missing its required iMessage app extension).

This becomes a problem because it means that the project cannot be easily repaired if it becomes unchecked for any reason (it may be inadvertent, plenty of people making sticker packs are not familiar with Xcode).

Steps to Reproduce:
1. Create a sticker pack application project.
2. Uncheck the app target in the Target Membership options for StickerPackExtension.appex.
3. Re-check the app target in the Target Membership options for StickerPackExtension.appex.


Expected Results:
The app should be able to be built and run on device and in the simulator.

Actual Results:
The app cannot be installed, and instead presents the error "App installation failed - This iMessage application is missing its required iMessage app extension".

This error can be resolved by manually editing the project.pbxproj file to configure the StickerPackExtension.appex for "Embed App Extensions", which requires several steps to get working correctly.

Comments


Please note: Reports posted here will not necessarily be seen by Apple. All problems should be submitted at bugreport.apple.com before they are posted here. Please only post information for Radars that you have filed yourself, and please do not include Apple confidential information in your posts. Thank you!