桌面上的 AddBuildProperty(不是 iOS)Unity Xcode 构建?
AddBuildProperty on a Desktop (not iOS) Unity Xcode build?
在 Unity 中,出色的 post 处理器使得添加构建标志变得非常容易
在一个 iOS 项目中...
public class BuildPostProcessor
{
public static void OnPostProcessBuild(BuildTarget target, string path) ...
PBXProject project = new PBXProject();
string sPath = PBXProject.GetPBXProjectPath(path);
“PBXProject”的字面意思是“.pbxproj 文件”,也就是说,一个 plist 文本文件。
然后非常容易,例如
project.AddBuildProperty(g, "SOME_FLAG", "--whoa");
或者添加框架等
Mac 桌面构建怎么样?
这对于 iOS 构建非常有用,但是您如何在 OSX 桌面项目上“AddBuildProperty”?
似乎没有“StandaloneProject”或类似的结构。
这是怎么做到的?
我需要添加 OTHER_CODE_SIGN_FLAGS --deep。目前我必须创建 Xcode 项目并每次都手动完成。当然有一种方法可以使用 Unity 的优秀 AddBuildProperty
或类似的调用,以及桌面项目?
这是完成它的一种混乱方法:
using System.IO;
using UnityEngine;
using UnityEditor;
using UnityEditor.Callbacks;
public class BuildPostProcessor
{
[PostProcessBuildAttribute(1)]
public static void OnPostProcessBuild(BuildTarget target, string path)
{
if (target == BuildTarget.StandaloneOSX)
{
string macStylePath = path + "/project.pbxproj";
string s = File.ReadAllText(macStylePath);
s = s.Replace(
"CODE_SIGN_STYLE = Automatic;",
"CODE_SIGN_STYLE = Automatic;\n\t\t\tOTHER_CODE_SIGN_FLAGS = --deep;");
File.Delete(macStylePath);
File.WriteAllText(macStylePath, s);
Debug.Log("OnPostProcessBuild ... added that flag'");
}
}
}
没有真正干净的方法来获取这些文件的内容,所以只需对相关项目执行 grep,在其中添加一些内容。有效。
在 Unity 中,出色的 post 处理器使得添加构建标志变得非常容易
在一个 iOS 项目中...
public class BuildPostProcessor
{
public static void OnPostProcessBuild(BuildTarget target, string path) ...
PBXProject project = new PBXProject();
string sPath = PBXProject.GetPBXProjectPath(path);
“PBXProject”的字面意思是“.pbxproj 文件”,也就是说,一个 plist 文本文件。
然后非常容易,例如
project.AddBuildProperty(g, "SOME_FLAG", "--whoa");
或者添加框架等
Mac 桌面构建怎么样?
这对于 iOS 构建非常有用,但是您如何在 OSX 桌面项目上“AddBuildProperty”?
似乎没有“StandaloneProject”或类似的结构。
这是怎么做到的?
我需要添加 OTHER_CODE_SIGN_FLAGS --deep。目前我必须创建 Xcode 项目并每次都手动完成。当然有一种方法可以使用 Unity 的优秀 AddBuildProperty
或类似的调用,以及桌面项目?
这是完成它的一种混乱方法:
using System.IO;
using UnityEngine;
using UnityEditor;
using UnityEditor.Callbacks;
public class BuildPostProcessor
{
[PostProcessBuildAttribute(1)]
public static void OnPostProcessBuild(BuildTarget target, string path)
{
if (target == BuildTarget.StandaloneOSX)
{
string macStylePath = path + "/project.pbxproj";
string s = File.ReadAllText(macStylePath);
s = s.Replace(
"CODE_SIGN_STYLE = Automatic;",
"CODE_SIGN_STYLE = Automatic;\n\t\t\tOTHER_CODE_SIGN_FLAGS = --deep;");
File.Delete(macStylePath);
File.WriteAllText(macStylePath, s);
Debug.Log("OnPostProcessBuild ... added that flag'");
}
}
}
没有真正干净的方法来获取这些文件的内容,所以只需对相关项目执行 grep,在其中添加一些内容。有效。