#if UNITY_IOS || UNITY_IPHONE public class PbxProjectSetTraceless : PbxProjectSet { public PbxProjectSetTraceless(string source, string target) : base(source, target) { } public override void Action() { // 注:无需修改代码,将会直接替换UnityAppController.mm来植入适配代码 // 配置开发团队 pbxProject.SetTeamId(projectGuid, "2WBWK5S456"); // 替换文件 CopyFileOnly("Info.plist", string.Empty); CopyFileOnly("UnityAppController.mm", "Classes"); // 权限文件 AddFile("traceless.entitlements", "Unity-iPhone"); // SdkHub文件 AddFile("SdkHub.h", "Classes/Unity"); AddFile("SdkHub.m", "Classes/Unity"); // 第三方Frameworks文件 AddFile("AlipaySDK.framework", string.Empty); AddFile("TracelessSdk.framework", string.Empty); AddDirectory("bundle", "Libraries/Plugins"); // 内置Frameworks文件 pbxProject.AddFrameworkToProject(projectGuid, "StoreKit.framework", false); pbxProject.AddFrameworkToProject(projectGuid, "JavaScriptCore.framework", false); pbxProject.AddFrameworkToProject(projectGuid, "Security.framework", false); pbxProject.AddFrameworkToProject(projectGuid, "CoreText.framework", false); pbxProject.AddFrameworkToProject(projectGuid, "CoreTelephony.framework", false); pbxProject.AddFrameworkToProject(projectGuid, "libz.1.2.5.tbd", false); pbxProject.AddFrameworkToProject(projectGuid, "libc++.1.tbd", false); SetAllConfigs(); Save(); } protected override void SetTargetConfig(string guid) { pbxProject.SetBuildPropertyForConfig(guid, "CODE_SIGN_ENTITLEMENTS", "Unity-iPhone/traceless.entitlements"); pbxProject.SetBuildPropertyForConfig(guid, "DEVELOPMENT_TEAM", "2WBWK5S456"); pbxProject.SetBuildPropertyForConfig(guid, "ENABLE_BITCODE", "NO"); pbxProject.SetBuildPropertyForConfig(guid, "PRODUCT_BUNDLE_IDENTIFIER", "com.jjyou.qyxmlios.traceless"); pbxProject.AddBuildPropertyForConfig(guid, "FRAMEWORK_SEARCH_PATHS", "$(PROJECT_DIR)"); pbxProject.AddBuildPropertyForConfig(guid, "OTHER_LDFLAGS", "-ObjC"); } } #endif