EditorExportPlatform
Наследует: RefCounted < Object
Наследуется от: EditorExportPlatformAndroid, EditorExportPlatformAppleEmbedded, EditorExportPlatformExtension, EditorExportPlatformMacOS, EditorExportPlatformPC, EditorExportPlatformWeb
Определяет поддерживаемую платформу экспорта и внутренне обеспечивает функциональность экспорта на эту платформу.
Описание
Базовый ресурс, который обеспечивает функциональность экспорта сборки выпуска проекта на платформу из редактора. Сохраняет метаданные, специфичные для платформы, такие как имя и поддерживаемые функции платформы, и выполняет экспорт проектов, файлов PCK и файлов ZIP. Использует шаблон экспорта для платформы, предоставленный во время экспорта проекта.
Используется в скриптах EditorExportPlugin для настройки платформенно-специфической настройки сцен и ресурсов. Подробнее см. EditorExportPlugin._begin_customize_scenes() и EditorExportPlugin._begin_customize_resources().
Обучающие материалы
Методы
Перечисления
enum ExportMessageType: 🔗
ExportMessageType EXPORT_MESSAGE_NONE = 0
Неверный тип сообщения, используемый в качестве значения по умолчанию, если тип не указан.
ExportMessageType EXPORT_MESSAGE_INFO = 1
Тип сообщения для информационных сообщений, не влияющих на экспорт.
ExportMessageType EXPORT_MESSAGE_WARNING = 2
Тип сообщения для предупреждающих сообщений, на которые следует обратить внимание, но которые все равно позволят завершить экспорт.
ExportMessageType EXPORT_MESSAGE_ERROR = 3
Тип сообщения для сообщений об ошибках, которые необходимо устранить и которые приводят к сбою экспорта.
flags DebugFlags: 🔗
DebugFlags DEBUG_FLAG_DUMB_CLIENT = 1
Флаг устанавливается, если отлаживаемый удалённо проект должен использовать удалённую файловую систему. Если он установлен, gen_export_flags() добавит аргументы командной строки --remote-fs и --remote-fs-password (если определён EditorSettings.filesystem/file_server/password) к возвращаемому списку.
DebugFlags DEBUG_FLAG_REMOTE_DEBUG = 2
Флаг устанавливается, если включена удалённая отладка. Если он установлен, gen_export_flags() добавит аргументы командной строки --remote-debug и --breakpoints (если точки останова выбраны в редакторе скриптов или добавлены плагином) к возвращаемому списку.
DebugFlags DEBUG_FLAG_REMOTE_DEBUG_LOCALHOST = 4
Флаг устанавливается, если удаленно отлаживаемый проект запущен на локальном хосте. Если установлено, gen_export_flags() будет использовать localhost вместо EditorSettings.network/debug/remote_host в качестве удаленного хоста отладчика.
DebugFlags DEBUG_FLAG_VIEW_COLLISIONS = 8
Флаг устанавливается, если включена опция удалённой отладки «Видимые формы столкновений». Если этот флаг установлен, gen_export_flags() добавит аргумент командной строки --debug-collisions к возвращаемому списку.
Флаг устанавливается, если включена опция удалённой отладки «Видимая навигация». Если она установлена, gen_export_flags() добавит аргумент командной строки --debug-navigation к возвращаемому списку.
Описания метода
void add_message(type: ExportMessageType, category: String, message: String) 🔗
Добавляет сообщение в журнал экспорта, которое будет отображено после завершения экспорта.
void clear_messages() 🔗
Очищает журнал экспорта.
EditorExportPreset create_preset() 🔗
Создайте новый пресет для этой платформы.
Error export_pack(preset: EditorExportPreset, debug: bool, path: String, flags: BitField[DebugFlags] = 0) 🔗
Создает архив PCK по адресу path для указанного preset.
Error export_pack_patch(preset: EditorExportPreset, debug: bool, path: String, patches: PackedStringArray = PackedStringArray(), flags: BitField[DebugFlags] = 0) 🔗
Создает архив патча PCK в path для указанного preset, содержащий только файлы, которые были изменены с момента последнего патча.
Примечание: patches — это необязательное переопределение набора патчей, определенных в экспортном пресете. Если пусто, вместо него будут использоваться патчи, определенные в экспортном пресете.
Error export_project(preset: EditorExportPreset, debug: bool, path: String, flags: BitField[DebugFlags] = 0) 🔗
Создает полный проект по адресу path для указанного preset.
Error export_project_files(preset: EditorExportPreset, debug: bool, save_cb: Callable, shared_cb: Callable = Callable()) 🔗
Экспортирует файлы проекта для указанного пресета. Этот метод можно использовать для реализации пользовательского формата экспорта, отличного от PCK и ZIP. Один из обратных вызовов вызывается для каждого экспортированного файла.
save_cb вызывается для всех экспортированных файлов и имеет следующие аргументы: file_path: String, file_data: PackedByteArray, file_index: int, file_count: int, encryption_include_filters: PackedStringArray, encryption_exclude_filters: PackedStringArray, encryption_key: PackedByteArray.
shared_cb вызывается для экспортированных собственных общих/статических библиотек и имеет следующие аргументы: file_path: String, tags: PackedStringArray, target_folder: String.
Примечание: file_index и file_count предназначены только для отслеживания прогресса и не обязательно являются уникальными и точными.
Error export_zip(preset: EditorExportPreset, debug: bool, path: String, flags: BitField[DebugFlags] = 0) 🔗
Создать ZIP-архив по адресу path для указанного preset.
Error export_zip_patch(preset: EditorExportPreset, debug: bool, path: String, patches: PackedStringArray = PackedStringArray(), flags: BitField[DebugFlags] = 0) 🔗
Создайте архив ZIP патча в path для указанного preset, содержащий только файлы, которые были изменены с момента последнего патча.
Примечание: patches — это необязательное переопределение набора патчей, определенных в экспортном пресете. Если пусто, вместо него будут использоваться патчи, определенные в экспортном пресете.
Dictionary find_export_template(template_file_name: String) const 🔗
Находит шаблон экспорта для платформы и возвращает Dictionary со следующими ключами: path: String и error: String. Этот метод предоставляется для удобства, и пользовательские платформы экспорта не обязаны его использовать или хранить шаблоны экспорта так же, как официальные шаблоны.
PackedStringArray gen_export_flags(flags: BitField[DebugFlags]) 🔗
Генерирует массив аргументов командной строки для шаблонов экспорта по умолчанию для флагов отладки и настроек редактора.
Array get_current_presets() const 🔗
Возвращает массив EditorExportPreset для этой платформы.
PackedStringArray get_forced_export_files(preset: EditorExportPreset = null) static 🔗
Возвращает массив имен основных файлов, которые всегда следует экспортировать независимо от предустановленной конфигурации.
Dictionary get_internal_export_files(preset: EditorExportPreset, debug: bool) 🔗
Возвращает дополнительные файлы, которые всегда должны экспортироваться независимо от предустановленной конфигурации и не являются частью исходного кода проекта. Возвращаемый Dictionary содержит ключи имени файла (String) и соответствующие им необработанные данные (PackedByteArray).
String get_message_category(index: int) const 🔗
Возвращает категорию сообщения для сообщения с index.
int get_message_count() const 🔗
Возвращает количество сообщений в журнале экспорта.
String get_message_text(index: int) const 🔗
Возвращает текст сообщения для сообщения с index.
ExportMessageType get_message_type(index: int) const 🔗
Возвращает тип сообщения для сообщения с index.
Возвращает имя экспортируемой операционной системы, обрабатываемой этим классом EditorExportPlatform, как понятную строку. Возможные возвращаемые значения: Windows, Linux, macOS, Android, iOS, и Web.
ExportMessageType get_worst_message_type() const 🔗
Возвращает наиболее серьезный тип сообщения, присутствующий в данный момент в журнале экспорта.
Dictionary save_pack(preset: EditorExportPreset, debug: bool, path: String, embed: bool = false) 🔗
Сохраняет архив PCK и возвращает Dictionary со следующими ключами: result: Error, so_files: Array (массив общих/статических объектов, содержащий словари со следующими ключами: path: String, tags: PackedStringArray и target_folder: String).
Если embed равен true, содержимое PCK добавляется в конец файла path и возвращаемый Dictionary дополнительно включает следующие ключи: embedded_start: int (смещение внедренного PCK) и embedded_size: int (размер внедренного PCK).
Dictionary save_pack_patch(preset: EditorExportPreset, debug: bool, path: String) 🔗
Сохраняет архив исправлений PCK и возвращает Dictionary со следующими ключами: result: Error, so_files: Array (массив общих/статических объектов, содержащий словари со следующими ключами: path: String, tags: PackedStringArray и target_folder: String).
Dictionary save_zip(preset: EditorExportPreset, debug: bool, path: String) 🔗
Сохраняет ZIP-архив и возвращает Dictionary со следующими ключами: result: Error, so_files: Array (массив общих/статических объектов, содержащий словари со следующими ключами: path: String, tags: PackedStringArray и target_folder: String).
Dictionary save_zip_patch(preset: EditorExportPreset, debug: bool, path: String) 🔗
Сохраняет архив ZIP с исправлениями и возвращает Dictionary со следующими ключами: result: Error, so_files: Array (массив общих/статических объектов, содержащий словари со следующими ключами: path: String, tags: PackedStringArray и target_folder: String).
Error ssh_push_to_remote(host: String, port: String, scp_args: PackedStringArray, src_file: String, dst_file: String) const 🔗
Загружает указанный файл по протоколу SCP на удаленный хост.
Error ssh_run_on_remote(host: String, port: String, ssh_arg: PackedStringArray, cmd_args: String, output: Array = [], port_fwd: int = -1) const 🔗
Выполняет указанную команду на удаленном хосте по протоколу SSH и возвращает вывод команды в output.
int ssh_run_on_remote_no_wait(host: String, port: String, ssh_args: PackedStringArray, cmd_args: String, port_fwd: int = -1) const 🔗
Выполняет указанную команду на удаленном хосте по протоколу SSH и возвращает идентификатор процесса (на удаленном хосте), не дожидаясь завершения команды.