#if UNITY_IOS
using System.IO;
using UnityEditor;
using UnityEditor.Callbacks;
using UnityEditor.iOS.Xcode;
using UnityEngine;
namespace AnyThinkAds.Editor
{
public static class IOSPostProcessBuild
{
///
/// 构建后
///
/// 平台
/// 路径
[PostProcessBuild(999)]
public static void OnPostProcessBuild(BuildTarget buildTarget, string path)
{
if (buildTarget == BuildTarget.iOS)
{
Debug.Log("开始构建IOS");
string projectPath = path + "/Unity-iPhone.xcodeproj/project.pbxproj";
PBXProject pbxProject = new PBXProject();
pbxProject.ReadFromFile(projectPath);
string mainTarget = pbxProject.GetUnityMainTargetGuid();
string target = pbxProject.GetUnityFrameworkTargetGuid();
pbxProject.SetTeamId(mainTarget, "H8954G9K5C");
pbxProject.SetBuildProperty(mainTarget, "ENABLE_BITCODE", "NO");
pbxProject.SetBuildProperty(target, "ENABLE_BITCODE", "NO");
pbxProject.SetBuildProperty(target, "GCC_ENABLE_OBJC_EXCEPTIONS", "YES");
pbxProject.SetBuildProperty(target, "GCC_C_LANGUAGE_STANDARD", "gnu99");
pbxProject.SetBuildProperty(target, "GENERATE_DEBUG_SYMBOLS", "NO");
pbxProject.AddFrameworkToProject(target, "VideoToolbox.framework", false);
pbxProject.AddFrameworkToProject(target, "SystemConfiguration.framework", false);
pbxProject.AddFrameworkToProject(target, "Security.framework", false);
pbxProject.AddBuildProperty(target, "OTHER_LDFLAGS", "-ObjC");
pbxProject.AddBuildProperty(target, "OTHER_LDFLAGS", "-fobjc-arc");
pbxProject.AddFileToBuild(target, pbxProject.AddFile("usr/lib/libxml2.tbd", "Libraries/libxml2.tbd", PBXSourceTree.Sdk));
pbxProject.AddFileToBuild(target, pbxProject.AddFile("usr/lib/libresolv.9.tbd", "Libraries/libresolv.9.tbd", PBXSourceTree.Sdk));
pbxProject.AddFileToBuild(target, pbxProject.AddFile("usr/lib/libz.tbd", "Libraries/libz.tbd", PBXSourceTree.Sdk));
pbxProject.AddFileToBuild(target, pbxProject.AddFile("usr/lib/libbz2.1.0.tbd", "Libraries/libbz2.1.0.tbd", PBXSourceTree.Sdk));
pbxProject.AddFileToBuild(target, pbxProject.AddFile("usr/lib/libc++.dylib", "Libraries/libc++.dylib", PBXSourceTree.Sdk));
pbxProject.AddFileToBuild(target, pbxProject.AddFile("usr/lib/libresolv.tbd", "Libraries/libresolv.tbd", PBXSourceTree.Sdk));
pbxProject.WriteToFile (projectPath);
var plist = new PlistDocument();
plist.ReadFromString(File.ReadAllText(path));
plist.root.SetString("GADApplicationIdentifier", "ca-app-pub-9488501426181082/7319780494");
plist.root.SetBoolean("GADIsAdManagerApp", true);
plist.WriteToFile(plistPath);
}
}
}
}
#endif