using UnityEditor; using UnityEngine; namespace BFEditor.Build { public enum BFPlatformOptions { AndroidDev = 1, IOSDev, AndroidRelease, AndroidGP, } public class BuildProjectWindow : EditorWindow { private static int versionCode = 17; private static string versionName = "1.5.8"; BFPlatformOptions platform = BFPlatformOptions.AndroidDev; const string ANDROID_DEV_PACKAGE_NAME = "com.juzu.b6.dev.android"; const string ANDROID_RELEASE_PACKAGE_NAME = "com.juzu.b6.release.android"; const string ANDROID_GP_PACKAGE_NAME = "com.combo.heroes.puzzle.rpg"; const string IOS_PACKAGE_NAME = "com.juzu.b6.dev.ios"; public BuildProjectWindow() { titleContent = new GUIContent("打包"); } private void OnEnable() { } void OnGUI() { GUILayout.BeginVertical("box"); EditorGUILayout.LabelField("选择渠道"); platform = (BFPlatformOptions)EditorGUILayout.EnumPopup("", platform); EditorGUILayout.Space(); EditorGUILayout.LabelField("版本: " + versionName); EditorGUILayout.Space(); string packageName; string mode; bool skipVersion = false; if (platform == BFPlatformOptions.AndroidDev) { packageName = ANDROID_DEV_PACKAGE_NAME; skipVersion = true; mode = "dev_debug"; } else if(platform == BFPlatformOptions.AndroidRelease) { packageName = ANDROID_RELEASE_PACKAGE_NAME; mode = "release_release"; } else if(platform == BFPlatformOptions.AndroidGP) { packageName = ANDROID_GP_PACKAGE_NAME; mode = "publish_release"; } else { packageName = IOS_PACKAGE_NAME; mode = "dev_debug"; } EditorGUILayout.LabelField("包名: " + packageName); EditorGUILayout.LabelField("mode: " + mode); EditorGUILayout.Space(); EditorGUILayout.Space(); if (GUILayout.Button("一键打包")) { var buildInfo = new BuildInfo(); buildInfo.version = versionName; buildInfo.version_code = versionCode; buildInfo.mode = mode; buildInfo.bundleName = packageName; buildInfo.skipVersion = skipVersion; BuildProjectTools.BuildBFPlayer(buildInfo); } GUILayout.EndVertical(); } public static void ShowWindow() { var window = GetWindow(); window.Show(); } } }