From 3ff9717f98d3dad06b98afa0bfb20d1360a4a59a Mon Sep 17 00:00:00 2001 From: Hailey Date: Mon, 17 Jun 2024 12:30:46 -0700 Subject: [PATCH] embed the app clip --- .../withXcodeTarget.js | 34 +++++++++++++++---- 1 file changed, 28 insertions(+), 6 deletions(-) diff --git a/plugins/starterPackAppClipExtension/withXcodeTarget.js b/plugins/starterPackAppClipExtension/withXcodeTarget.js index 5e6378b596..5e06ec8507 100644 --- a/plugins/starterPackAppClipExtension/withXcodeTarget.js +++ b/plugins/starterPackAppClipExtension/withXcodeTarget.js @@ -14,13 +14,18 @@ const withXcodeTarget = (config, {targetName}) => { 'PBXSourcesBuildPhase', 'Sources', target.uuid, + 'application', + '"$(CONTENTS_FOLDER_PATH)/AppClips"', ) pbxProject.addBuildPhase( [], 'PBXResourcesBuildPhase', 'Resources', target.uuid, + 'application', + '"$(CONTENTS_FOLDER_PATH)/AppClips"', ) + const pbxGroupKey = pbxProject.pbxCreateGroup(targetName, targetName) pbxProject.addFile(`${targetName}/Info.plist`, pbxGroupKey) @@ -53,12 +58,6 @@ const withXcodeTarget = (config, {targetName}) => { pbxProject.addTargetAttribute('DevelopmentTeam', 'B3LX46C5HS', targetName) - console.log( - pbxProject.getTarget( - 'com.apple.product-type.application.on-demand-install-capable', - ), - ) - if (!pbxProject.hash.project.objects.PBXTargetDependency) { pbxProject.hash.project.objects.PBXTargetDependency = {} } @@ -69,6 +68,29 @@ const withXcodeTarget = (config, {targetName}) => { target.uuid, ]) + // pbxProject.addProductFile(targetName, { + // basename: `${targetName}.app`, + // groupName: 'Embed App Clips', + // explicitFileType: 'wrapper.application', + // settings: { + // ATTRIBUTES: ['RemoveHeadersOnCopy'], + // }, + // includeInIndex: 0, + // path: `${targetName}.app`, + // sourceTree: 'BUILT_PRODUCTS_DIR', + // }) + + pbxProject.addToPbxNativeTargetSection(target) + + pbxProject.addBuildPhase( + [`${targetName}.app`], + 'PBXCopyFilesBuildPhase', + 'Embed App Clips', + pbxProject.getFirstTarget().uuid, + 'application', + '"$(CONTENTS_FOLDER_PATH)/AppClips"', + ) + return config }) }