12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970 |
- using UnityEditor;
- using UnityEngine;
- using UnityEditor.Callbacks;
- using UnityEditor.iOS.Xcode;
- using System.IO;
- using System.Collections;
- using System.Collections.Generic;
- public class NewBehaviourScript
- {
- [PostProcessBuild(100)]
- public static void OnPostprocessBuild(BuildTarget buildTarget, string buildPath)
- {
- if (buildTarget != BuildTarget.iOS)
- {
- return;
- }
- string projectPath = PBXProject.GetPBXProjectPath(buildPath);
- PBXProject project = new PBXProject();
- project.ReadFromFile(projectPath);
- //关闭BitCode
- string target = project.TargetGuidByName("Unity-iPhone");
- project.SetBuildProperty(target, "ENABLE_BITCODE", "NO");
- //添加资源
- FileUtil.CopyFileOrDirectory(Application.dataPath + "/AppleDependency", buildPath + "/AppleDependency");
- string[] filePaths = Directory.GetFiles(buildPath + "/AppleDependency", "*.*", SearchOption.AllDirectories);
- for (int i = 0; i < filePaths.Length; i++)
- {
- if (Path.GetExtension(filePaths[i]) == ".meta")
- {
- continue;
- }
- project.AddFileToBuild(target, project.AddFile(filePaths[i], filePaths[i].Replace(buildPath, ""), PBXSourceTree.Source));
- }
- //添加引用库
- string targetGuid = project.TargetGuidByName("Unity-iPhone");
- project.AddFrameworkToProject(targetGuid, "libc++.tbd", false);
- project.AddFrameworkToProject(targetGuid, "libz.tbd", false);
- project.AddFrameworkToProject(targetGuid, "SystemConfiguration.framework", false);
- project.AddFrameworkToProject(targetGuid, "CoreTelephony.framework", false);
- project.AddFrameworkToProject(targetGuid, "QuartzCore.framework", false);
- project.AddFrameworkToProject(targetGuid, "CoreText.framework", false);
- project.AddFrameworkToProject(targetGuid, "CoreGraphics.framework", false);
- project.AddFrameworkToProject(targetGuid, "UIKit.framework", false);
- project.AddFrameworkToProject(targetGuid, "Foundation.framework", false);
- project.AddFrameworkToProject(targetGuid, "CFNetwork.framework", false);
- project.AddFrameworkToProject(targetGuid, "CoreMotion.framework", false);
- project.AddFrameworkToProject(targetGuid, "AlipaySDK.framework", false);
- project.AddFrameworkToProject(targetGuid, "Security.framework", false);
- //保存
- File.WriteAllText(projectPath, project.WriteToString());
- }
- }
|