Skip to content

Commit fa54eb3

Browse files
committed
feat: update xcode permission by command
1 parent 7ac29d6 commit fa54eb3

File tree

3 files changed

+16
-4
lines changed

3 files changed

+16
-4
lines changed

Platform/IOS.py

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -235,10 +235,12 @@ def PostPackaged_UseMordenXcodeProject(self):
235235
ioscert_tag_name = self.Params['ioscert']
236236
OneIOSCert:IOSCertInfo = ConfigParser.Get().GetOneIOSCertificate(ioscert_tag_name)
237237
team_id = ""
238+
provisioning_profile_specifier = ""
238239
if OneIOSCert != None:
239240
team_id = OneIOSCert.get_team_id
241+
provisioning_profile_specifier = OneIOSCert.get_provisioning_profile_specifier
240242

241-
UnrealProjectManager.AddIOSBroadcastExtension(path_project_root, path_ue_config_resources, team_id)
243+
UnrealProjectManager.AddIOSBroadcastExtension(path_project_root, path_ue_config_resources, team_id, provisioning_profile_specifier)
242244

243245
OneXcodeCommand = XcodeCommand()
244246
params = ParamsXcodebuild()

Tools/ios_extension_setup.rb

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@
99
extension_target_name = ARGV[3]
1010
extension_bundle_id = ARGV[4]
1111
team_id = ARGV[5]
12+
provisioning_profile_specifier = ARGV[6]
1213

1314
puts "--- Ruby Script Start ---"
1415
puts "Project: #{project_path}"
@@ -108,7 +109,16 @@
108109
# Apply Main Target Signing
109110
if team_id && !team_id.empty?
110111
config.build_settings['DEVELOPMENT_TEAM'] = team_id
111-
config.build_settings['CODE_SIGN_STYLE'] = 'Automatic'
112+
113+
if provisioning_profile_specifier && !provisioning_profile_specifier.empty?
114+
config.build_settings['CODE_SIGN_STYLE'] = 'Manual'
115+
config.build_settings['PROVISIONING_PROFILE_SPECIFIER'] = provisioning_profile_specifier
116+
puts "Manual Signing Configured: Team #{team_id}, Profile #{provisioning_profile_specifier}"
117+
else
118+
config.build_settings['CODE_SIGN_STYLE'] = 'Automatic'
119+
puts "Automatic Signing Configured: Team #{team_id}"
120+
end
121+
112122
elsif main_dev_team && !main_dev_team.empty?
113123
config.build_settings['DEVELOPMENT_TEAM'] = main_dev_team
114124
config.build_settings['CODE_SIGN_STYLE'] = 'Automatic'

Utility/UnrealProjectManager.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -181,7 +181,7 @@ def AddMacSandboxPermissions(path_project_root):
181181
cmd_set = f"Set :{permission} true"
182182
OneXcodeCommand.PlistBuddy(cmd_set, file_entitlements)
183183

184-
def AddIOSBroadcastExtension(path_project_root, src_root_path_resource, team_id = ""):
184+
def AddIOSBroadcastExtension(path_project_root, src_root_path_resource, team_id = "", provisioning_profile_specifier = ""):
185185
# 1. Copy Source Files
186186
path_project = Path(path_project_root)
187187
src_extension_path = src_root_path_resource / "AgoraBCExtension"
@@ -291,7 +291,7 @@ def AddIOSBroadcastExtension(path_project_root, src_root_path_resource, team_id
291291
# In a real scenario, retrieve this properly.
292292
extension_bundle_id = f"{bundle_id_prefix}.{extension_name}"
293293

294-
cmd = f"ruby {script_path} '{path_xcodeproj}' '{path_project}' '{main_target_name}' '{extension_name}' '{extension_bundle_id}' '{team_id}'"
294+
cmd = f"ruby {script_path} '{path_xcodeproj}' '{path_project}' '{main_target_name}' '{extension_name}' '{extension_bundle_id}' '{team_id}' '{provisioning_profile_specifier}'"
295295

296296
PrintLog(f"Running: {cmd}")
297297
RUNCMD(cmd)

0 commit comments

Comments
 (0)