Quantcast
Channel: Questions in topic: "xcode"
Viewing all articles
Browse latest Browse all 1047

Not able to add iCloud to XCode project via PostProcessing script using the XCodeAPI

$
0
0
Hi, I am not able to add the iCloud service to my XCode project by using the XCodeAPI. I am adding it via a PostProcessBuild in Unity and I **AM** able to add a lot of other things, such as frameworks etc. I want to have a post process script to help me set up the XCode project, so I don't need to do it manually. First, I thought the issue was using the "*ProjectCapabilityManager*", but I am able to add other capabilities, such as the GameCenter with no problem. I have also tried the *project.AddCapability("stuff there")* approach, but that did not work either I am using Unity 2019.4.1 (LTS) and Xcode 12.1 Here is my PostProcessing script: public class PostProcessIOS { const string XCODE_PROJ = "/Unity-iPhone.xcodeproj/project.pbxproj"; [PostProcessBuild(800)] public static void OnPostProcessBuild(BuildTarget target, string pathToBuiltProject) { if (target != BuildTarget.iOS) return; var fullProjectPath = pathToBuiltProject + XCODE_PROJ; //Get the Xcode project var project = new PBXProject(); project.ReadFromString(File.ReadAllText(fullProjectPath)); string targetGuid = project.GetUnityFrameworkTargetGuid(); project.AddFrameworkToProject(targetGuid, "WebKit.framework", false); project.AddFrameworkToProject(targetGuid, "MobileCoreServices.framework", false); project.AddBuildProperty(targetGuid, "OTHER_LDFLAGS", "-ObjC"); project.AddBuildProperty(targetGuid, "ENABLE_BITCODE", "NO"); var capabilityManager = new ProjectCapabilityManager(fullProjectPath, "Unity-iPhone/mmk.entitlements", "Unity-iPhone"); capabilityManager.AddGameCenter(); //Works fine capabilityManager.AddiCloud(false, true, null); //Why U No Work? capabilityManager.WriteToFile(); //Write the changes File.WriteAllText(fullProjectPath, project.WriteToString()); } }

Viewing all articles
Browse latest Browse all 1047

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>