Unity命令行打包

http://www.66acg.com/?post=137


补充

unity编辑器端获取打包命令行自定义参数,这个可以获取到所有打包时的参数

string[] runArgs = System.Environment.GetCommandLineArgs();




一、在Assets\Editor目录下放个脚本

using UnityEngine;
using UnityEditor;
using System;
using System.IO;
using System.Collections.Generic;
 
/// <summary>
/// 命令行批处理工具类
/// </summary>
public class Batchmode {
 
    static List<string> levels = new List<string>();
    static string keystoreFile = @"D:\keystore.txt";
 
    public static void BuildAndroid() {
        
 
        if(!File.Exists(keystoreFile))
            throw new Exception("Not find keystore file");
 
        StreamReader sr = File.OpenText(keystoreFile);
        string password = sr.ReadToEnd().Trim();
 
        PlayerSettings.Android.keystorePass = password;
        PlayerSettings.Android.keyaliasPass = password;
 
        foreach ( EditorBuildSettingsScene scene in EditorBuildSettings.scenes ) {
            if ( !scene.enabled ) continue;
            levels.Add( scene.path );
        }
		EditorUserBuildSettings.SwitchActiveBuildTarget(BuildTarget.Android);
        string res = BuildPipeline.BuildPlayer( levels.ToArray(), "android.apk", BuildTarget.Android, BuildOptions.None );
        if (res.Length > 0)
            throw new Exception("BuildPlayer failure: " + res);
    }
}

二、写个批处理(路径改成自己的工程路径)

@echo off
@set unity="C:\Program Files\Unity\Editor\Unity.exe"
echo 正在生成APK文件...
%unity%  -batchmode -quit -nographics -executeMethod Batchmode.BuildAndroid  -logFile D:\Editor.log -projectPath "D:\China\2014-11-12_client_wushen_android" 
echo APK文件生成完毕!
pause



  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值