public void Simulate(ChannelConfig config, BuildTarget target, BuildCfg cfg) { SetConfig_Compile(config, target, cfg); PreparePlugin(config, target, cfg); AssetDatabase.Refresh(); AssetDatabase.SaveAssets(); }
public void Prepare(ChannelConfig config, BuildTarget buildTarget, BuildCfg cfg) { Debug.Log("准备打包" + config.name); //todo 打包加速 //CopyRes(config, buildTarget, cfg); PreparePlugin(config, buildTarget, cfg); SetConfig_Compile(config, buildTarget, cfg); }
public void Prepare(ChannelConfig channelConfig, BuildTarget target, BuildCfg cfg) { if (cfg.importAssets) { ImportAsset(); } PreBuild(channelConfig, target, cfg); }
public void PreBuild(ChannelConfig channelConfig, BuildTarget target, BuildCfg cfg) { foreach (var pluginImporter in importerList) { try { pluginImporter.PreBuild(channelConfig, target, cfg); } catch (Exception e) { Debug.Log(e); } } }
public void Build(ChannelConfig config, BuildTarget target, BuildCfg cfg) { string outPutPath = Application.dataPath; outPutPath = outPutPath.Replace("Assets", ""); outPutPath += "/bin/"; BuildOptions buildOption = BuildOptions.None; if (cfg.debug) { buildOption |= BuildOptions.Development; buildOption |= BuildOptions.AllowDebugging; buildOption |= BuildOptions.ConnectWithProfiler; } string filename = ""; string exportFilePath = ""; DateTime time = DateTime.Now; string timeStamp = time.Year.ToString("D2") + time.Month.ToString("D2") + time.Day.ToString("D2") + "_" + time.Hour.ToString("D2") + time.Minute.ToString("D2"); if (cfg.useIL2CPP) { PlayerSettings.SetScriptingBackend(BuildTargetGroup.Android, ScriptingImplementation.IL2CPP); } else { PlayerSettings.SetScriptingBackend(BuildTargetGroup.Android, ScriptingImplementation.Mono2x); } if (target == BuildTarget.Android) { outPutPath = Path.Combine(outPutPath, "Andorid"); if (!Directory.Exists(outPutPath)) { Directory.CreateDirectory(outPutPath); } filename = timeStamp + "demo.apk"; exportFilePath = outPutPath + "/" + filename; } else { outPutPath = Path.Combine(outPutPath, "iOS"); outPutPath += timeStamp; exportFilePath = outPutPath; } BuildPipeline.BuildPlayer(BUILD_SCENES, exportFilePath, target, buildOption); }
private void PreparePlugin(ChannelConfig config, BuildTarget target, BuildCfg cfg) { var targetGroup = BuildPipeline.GetBuildTargetGroup(target); _pluginImporterGroup = new PluginGroup(); string[] plugins = config.plugins.Split(';'); for (int i = 0; i < plugins.Length; i++) { if (!string.IsNullOrEmpty(plugins[i])) { Debug.Log("usePlugin" + plugins[i]); _pluginImporterGroup.Use(plugins[i]); } } _pluginImporterGroup.Prepare(config, target, cfg); }
private void SetConfig_Compile(ChannelConfig config, BuildTarget target, BuildCfg cfg) { Debug.Log("SetConfig_Compile"); Tools.WriteChannelConst(config); Tools.AddScriptingDefineSymbols(config.DefineSymbol); }
public void RevertSimulate(ChannelConfig config, BuildTarget target, BuildCfg cfg) { _config = config; RevertConfig(); RemovePlugin(config, target, cfg); }
public static bool RunQemu(string args, string workingdir, BuildCfg cfg) => StartProcess(Path.Combine(cfg.QemuRoot, "qemu-system-x86_64"), workingdir, args, true, false);
public static bool RunGrubImageTool(string args, string workingdir, BuildCfg cfg) => StartProcess("./Uskr/GrubImgTool.exe", workingdir, args);
public static bool RunLinker(string args, string workingdir, BuildCfg cfg) => StartProcess(Path.Combine(cfg.GccRoot, "ld.exe"), workingdir, args);
public static bool RunNasm(string args, string workingdir, BuildCfg cfg) => StartProcess(Path.Combine(cfg.NasmExe, "nasm.exe"), workingdir, args);
public static bool RunObjCopy(string args, string workingdir, BuildCfg cfg) => StartProcess(Path.Combine(cfg.GccRoot, "objcopy.exe"), workingdir, args);