Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/unity3d/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用命令行从Unity3D播放器导出Google Android项目_Unity3d_Command Line Arguments - Fatal编程技术网

使用命令行从Unity3D播放器导出Google Android项目

使用命令行从Unity3D播放器导出Google Android项目,unity3d,command-line-arguments,Unity3d,Command Line Arguments,查看Unity命令行选项和Unity API参考手册的文档,我无法找到将Unity项目导出到Android Studio项目的方法 有一个用于构建android项目的API调用BuildTarget.android 但我正在考虑将其导出为一个GoogleAndroid项目,可以通过构建设置手动完成 您必须在Unity 3d中创建以下脚本文件,并将其放入资源的编辑器子文件夹中 using System; using System.Collections; using System.Collecti

查看Unity命令行选项和Unity API参考手册的文档,我无法找到将Unity项目导出到Android Studio项目的方法

有一个用于构建android项目的API调用
BuildTarget.android
但我正在考虑将其导出为一个GoogleAndroid项目,可以通过构建设置手动完成


您必须在Unity 3d中创建以下脚本文件,并将其放入资源的编辑器子文件夹中

using System;
using System.Collections;
using System.Collections.Generic;
using UnityEditor;
using UnityEngine;


public class CIEditorScript
{
    static string[] SCENES = FindEnabledEditorScenes ();

    static string APP_NAME = "LuauUnity";
    static string TARGET_DIR = "target";

    [MenuItem ("Custom/CI/Build iOS")]
    static void PerformIOSBuild ()
    {
        GenericBuild (SCENES, TARGET_DIR + "/ios/", BuildTarget.iOS, BuildOptions.None);
    }

    [MenuItem ("Custom/CI/Build Android")]
    static void PerformAndroidBuild ()
    {
        GenericBuild (SCENES, TARGET_DIR + "/android/", BuildTarget.Android, BuildOptions.AcceptExternalModificationsToPlayer);
    }

    private static string[] FindEnabledEditorScenes ()
    {
        List<string> EditorScenes = new List<string> ();
        foreach (EditorBuildSettingsScene scene in EditorBuildSettings.scenes) {
            if (!scene.enabled)
                continue;
            EditorScenes.Add (scene.path);
        }
        return EditorScenes.ToArray ();
    }

    static void GenericBuild (string[] scenes, string target_dir, BuildTarget build_target, BuildOptions build_options)
    {
        EditorUserBuildSettings.SwitchActiveBuildTarget (build_target);
        string res = BuildPipeline.BuildPlayer (scenes, target_dir, build_target, build_options);
        if (res.Length > 0) {
            throw new Exception ("BuildPlayer failure: " + res);
        }
    }
}
还是iOS

$UNITYCMD -batchmode -nographics -silent-crashes -projectpath $PROJECTPATH -logfile $U3DLOGFILE -executeMethod CIEditorScript.PerformIOSBuild -quit
其中:

$UNITYCMD是Unity应用程序文件或可执行文件

$PROJECTPATH是Unity项目的路径

$U3DLOGFILE是Unity构建日志文件的路径

$UNITYCMD -batchmode -nographics -silent-crashes -projectpath $PROJECTPATH -logfile $U3DLOGFILE -executeMethod CIEditorScript.PerformIOSBuild -quit