static void Build() { ArgumentSetting setting = new ArgumentSetting (); string[] args = System.Environment.GetCommandLineArgs (); ParseArgs (setting, args);//解析参数 Debug.Log ("Command line build version\n------------------------"); Debug.Log (PlayerSettings.bundleIdentifier); PlayerSettings.bundleIdentifier = setting.bundleIdentifier; PlayerSettings.bundleVersion = setting.version; if (EditorUserBuildSettings.activeBuildTarget == BuildTarget.Android) { PlayerSettings.Android.bundleVersionCode = setting.versionCode; } else if (EditorUserBuildSettings.activeBuildTarget == BuildTarget.iOS) { PlayerSettings.iOS.buildNumber = setting.buildNumber; } else { //Error... } string[] scenes = GetBuildScenes (); if (scenes == null || scenes.Length == 0) { Debug.Log (string.Format ("Did not find any scene !!!")); return; } for (int i = 0; i < scenes.Length; ++i) { Debug.Log (string.Format ("Scene[{0}]: \"{1}\"", i, scenes [i])); } string path = GetBuildPath (EditorUserBuildSettings.activeBuildTarget); Debug.Log (string.Format ("Path: \"{0}\"", path)); Debug.Log ("Starting Build..."); BuildPipeline.BuildPlayer (scenes, path, EditorUserBuildSettings.activeBuildTarget, BuildOptions.None); }
static void ParseArgs(ArgumentSetting setting, string[] args) { setting.bundleIdentifier = GetArg (BUNDLE_ID); setting.version = GetArg (VERSION); setting.versionCode = int.Parse (GetArg (VERSION_CODE)); setting.buildNumber = GetArg (BUILD_NUMBER); }