private static UnityEditor.Build.Reporting.BuildReport UnityBuildPlayer() { #if UNITY_2020_1_OR_NEWER || UNITY_2019_4_OR_NEWER EditorUserBuildSettings.exportAsGoogleAndroidProject = true; #endif PXR_BuildToolManager.GetScenesEnabled(); var buildOptions = BuildOptions.None; if (EditorUserBuildSettings.development) { buildOptions |= (BuildOptions.Development | BuildOptions.AllowDebugging); } buildOptions |= BuildOptions.AutoRunPlayer; #if !UNITY_2020_1_OR_NEWER && !UNITY_2019_4_OR_NEWER buildOptions |= BuildOptions.AcceptExternalModificationsToPlayer; #endif var buildPlayerOptions = new BuildPlayerOptions { scenes = PXR_BuildToolManager.buildSceneNameList.ToArray(), locationPathName = gradleTempExport, target = BuildTarget.Android, options = buildOptions }; var buildResult = BuildPipeline.BuildPlayer(buildPlayerOptions); return(buildResult); }
private void OnGUI() { this.titleContent.text = "Scene Quick Preview"; InitLogUI(); GUILayout.Space(10.0f); GUILayout.Label("Scenes", EditorStyles.boldLabel); GUIContent selectScenesBtn = new GUIContent("Select Scenes"); foreach (PXR_BuildToolManager.SceneInfo scene in PXR_BuildToolManager.buildSceneInfoList) { EditorGUILayout.BeginHorizontal(); { EditorGUILayout.LabelField(scene.sceneName, GUILayout.ExpandWidth(true)); GUILayout.FlexibleSpace(); } EditorGUILayout.EndHorizontal(); } EditorGUILayout.BeginHorizontal(); { GUIContent sceneBtnTxt = new GUIContent("Build Scene(s)"); var sceneBtnRt = GUILayoutUtility.GetRect(sceneBtnTxt, GUI.skin.button, GUILayout.Width(200)); if (GUI.Button(sceneBtnRt, sceneBtnTxt)) { PXR_BuildToolManager.BuildScenes(forceRestart); GUIUtility.ExitGUI(); } GUIContent forceRestartLabel = new GUIContent("Force Restart [?]", "Restart the app after scene bundles are finished deploying."); forceRestart = GUILayout.Toggle(forceRestart, forceRestartLabel, GUILayout.Width(200)); var buildSettingBtnRt = GUILayoutUtility.GetRect(selectScenesBtn, GUI.skin.button, GUILayout.Width(200)); if (GUI.Button(buildSettingBtnRt, selectScenesBtn)) { GetWindow(System.Type.GetType("UnityEditor.BuildPlayerWindow,UnityEditor")); } } EditorGUILayout.EndHorizontal(); GUILayout.Space(10.0f); GUILayout.Label("Utilities", EditorStyles.boldLabel); EditorGUILayout.BeginHorizontal(); { GUIContent restartBtnTxt = new GUIContent("Restart App"); var restartBtnRt = GUILayoutUtility.GetRect(restartBtnTxt, GUI.skin.button, GUILayout.Width(200)); if (GUI.Button(restartBtnRt, restartBtnTxt)) { if (!PXR_BuildToolManager.IsInstalledAPP()) { PrintError("App is not install."); return; } PXR_BuildToolManager.RestartApp(); } GUIContent uninstallTxt = new GUIContent("Uninstall APP"); var uninstallBtnRt = GUILayoutUtility.GetRect(uninstallTxt, GUI.skin.button, GUILayout.Width(200)); if (GUI.Button(uninstallBtnRt, uninstallTxt)) { PXR_BuildToolManager.UninstallAPP(); PXR_BuildToolManager.IsInstalledAPP(); } GUIContent deleteCacheBundlesTxt = new GUIContent("Delete Cache Bundles"); var deleteCacheBundlesBtnRt = GUILayoutUtility.GetRect(deleteCacheBundlesTxt, GUI.skin.button, GUILayout.Width(200)); if (GUI.Button(deleteCacheBundlesBtnRt, deleteCacheBundlesTxt)) { PXR_BuildToolManager.DeleteCacheBundles(); } } EditorGUILayout.EndHorizontal(); GUILayout.Space(10.0f); GUILayout.Label("Log", EditorStyles.boldLabel); if (!string.IsNullOrEmpty(log)) { GUILayout.Label(log, logStyle, GUILayout.Height(30.0f)); } }
private void OnDestroy() { PXR_BuildToolManager.DeleteCachePreviewIndexFile(); log = null; }
private void OnEnable() { PXR_BuildToolManager.GetScenesEnabled(); EditorBuildSettings.sceneListChanged += PXR_BuildToolManager.GetScenesEnabled; }