internal static void Launch(BuildTarget target, string installPath) { if (target != BuildTarget.Android) { CancelPostProcess.AbortBuild("Build failure", "Internal error: Target platform mismatch", null); } PostProcessRunner runner = new PostProcessRunner(); _context.Set <string>("InstallPath", installPath); runner.AddNextTask(new PublishPackage()); runner.RunAllTasks(_context); }
internal static string PrepareForBuild(BuildOptions options, BuildTarget target) { if (target != BuildTarget.Android) { CancelPostProcess.AbortBuild("Build failure", "Internal error: Target platform mismatch", null); } if ((options & BuildOptions.BuildAdditionalStreamedScenes) == BuildOptions.CompressTextures) { _context = new PostProcessorContext(); SetupContextForPreBuild(_context, options, target); PostProcessRunner runner = new PostProcessRunner(); runner.AddNextTask(new CheckPrerequisites()); runner.AddNextTask(new CheckAndroidSdk()); runner.AddNextTask(new CheckDevice()); runner.RunAllTasks(_context); } return(""); }
internal static void PostProcess(BuildTarget target, string stagingAreaData, string stagingArea, string playerPackage, string installPath, string companyName, string productName, BuildOptions options, RuntimeClassRegistry usedClassRegistry) { if (target != BuildTarget.Android) { CancelPostProcess.AbortBuild("Build failure", "Internal error: Target platform mismatch", null); } _context.Set <BuildTarget>("BuildTarget", target); _context.Set <string>("StagingAreaData", stagingAreaData); _context.Set <string>("StagingArea", stagingArea); _context.Set <string>("InstallPath", installPath); _context.Set <RuntimeClassRegistry>("UsedClassRegistry", usedClassRegistry); bool flag = (options & BuildOptions.AutoRunPlayer) != BuildOptions.CompressTextures; _context.Set <bool>("AutoRunPlayer", flag); bool flag2 = (options & BuildOptions.AcceptExternalModificationsToPlayer) != BuildOptions.CompressTextures; _context.Set <bool>("ExportAndroidProject", flag2); _context.Set <string>("AndroidPluginsPath", "Assets/Plugins/Android"); switch (EditorUserBuildSettings.androidBuildSystem) { case AndroidBuildSystem.Internal: _context.Set <int>("ProjectType", 0); break; case AndroidBuildSystem.Gradle: _context.Set <int>("ProjectType", 1); break; case AndroidBuildSystem.ADT: _context.Set <int>("ProjectType", 2); break; default: _context.Set <int>("ProjectType", !flag2 ? 0 : 2); break; } bool flag3 = _context.Get <int>("ProjectType") == 1; PostProcessRunner runner = new PostProcessRunner(); runner.AddNextTask(new Initializer()); runner.AddNextTask(new PrepareUnityResources()); runner.AddNextTask(new SplitLargeFiles()); runner.AddNextTask(new NonstreamingObbAssets()); runner.AddNextTask(new PrepareUnityPackage()); runner.AddNextTask(new PrepareUserResources()); runner.AddNextTask(new PrepareAPKResources()); runner.AddNextTask(new NativePlugins()); if (!flag3) { runner.AddNextTask(new ProcessAAR()); } runner.AddNextTask(new AddAndroidLibraries()); runner.AddNextTask(new GenerateManifest()); runner.AddNextTask(new BuildResources()); if (!flag3 && !flag2) { runner.AddNextTask(new CheckLibrariesConflict()); runner.AddNextTask(new RunDex()); } runner.AddNextTask(new RunIl2Cpp()); runner.AddNextTask(new StreamingAssets()); runner.AddNextTask(new FastZip()); runner.AddNextTask(new AAPTPackage()); if (flag2) { runner.AddNextTask(new ExportProject()); } else { if (flag3) { runner.AddNextTask(new BuildGradleProject()); } else { runner.AddNextTask(new BuildAPK()); } runner.AddNextTask(new MoveFinalPackage()); } runner.RunAllTasks(_context); }