/// <summary>
        /// Builds an Android App Bundle at a location specified in a file save dialog.
        /// The AAB will include asset packs configured in Asset Delivery Settings.
        /// </summary>
        public static void Build()
        {
            // Check that we're ready to build before displaying the file save dialog.
            var appBundleBuilder = CreateAppBundleBuilder();

            if (!appBundleBuilder.Initialize(new BuildToolLogger()))
            {
                return;
            }

            var aabFilePath = EditorUtility.SaveFilePanel("Create Android App Bundle", null, null, "aab");

            if (string.IsNullOrEmpty(aabFilePath))
            {
                // Assume cancelled.
                return;
            }

            var buildSettings = new AppBundleBuildSettings
            {
                buildPlayerOptions = AndroidBuildHelper.CreateBuildPlayerOptions(aabFilePath),
                assetPackConfig    = AssetPackConfigSerializer.LoadConfig()
            };

            Build(appBundleBuilder, buildSettings);
        }
示例#2
0
        /// <summary>
        /// First builds the current project as an APK or Android App Bundle, and then installs and runs it on a
        /// connected Android device.
        /// </summary>
        private static void BuildAndRunDefault()
        {
            var assetPackConfig = AssetPackConfigSerializer.LoadConfig();

            if (assetPackConfig.HasDeliveredAssetPacks())
            {
                AppBundlePublisher.BuildAndRun(assetPackConfig);
            }
            else
            {
                EmulateUnityBuildAndRun();
            }
        }
示例#3
0
        /// <summary>
        /// Builds an Android App Bundle to a temp directory and then runs it on device.
        /// </summary>
        public static void BuildAndRun()
        {
            var buildSettings = new AppBundleBuildSettings
            {
                requirePrerequisiteChecks = true,
                runOnDevice = true
            };

            var appBundleBuilder   = CreateAppBundleBuilder();
            var tempOutputFilePath = Path.Combine(appBundleBuilder.WorkingDirectoryPath, "temp.aab");
            var buildPlayerOptions = AndroidBuildHelper.CreateBuildPlayerOptions(tempOutputFilePath);
            var assetPackConfig    = AssetPackConfigSerializer.LoadConfig();

            Build(appBundleBuilder, buildPlayerOptions, assetPackConfig, buildSettings);
        }
        /// <summary>
        /// Builds an Android App Bundle to a temp directory and then runs it on device.
        /// The AAB will include asset packs configured in Asset Delivery Settings.
        /// </summary>
        public static void BuildAndRun()
        {
            var appBundleBuilder = CreateAppBundleBuilder();

            if (!appBundleBuilder.Initialize(new BuildToolLogger()))
            {
                return;
            }

            var tempOutputFilePath = Path.Combine(appBundleBuilder.WorkingDirectoryPath, "temp.aab");
            var buildSettings      = new AppBundleBuildSettings
            {
                buildPlayerOptions = AndroidBuildHelper.CreateBuildPlayerOptions(tempOutputFilePath),
                assetPackConfig    = AssetPackConfigSerializer.LoadConfig(),
                runOnDevice        = true
            };

            Build(appBundleBuilder, buildSettings);
        }