Attention: Here be dragons

This is the latest (unstable) version of this documentation, which may document features not available in or compatible with released stable versions of Godot.

EditorExportPlatform

Успадковує: RefCounted < Object

Успадковано від: EditorExportPlatformAndroid, EditorExportPlatformAppleEmbedded, EditorExportPlatformExtension, EditorExportPlatformMacOS, EditorExportPlatformPC, EditorExportPlatformWeb

Визначає підтримуну експортну платформу, і внутрішньо забезпечує функціональність експорту на цю платформу.

Опис

Базовий ресурс, що забезпечує функціональність експорту збірки проекту на платформу, від редактора. Зберігає конкретні метадані, такі як ім'я та підтримувані функції платформи та виконує експорт проектів, файлів PCK та ZIP. Використовуйте експортний шаблон для платформи, що надається в момент експорту проекту.

Використовуються в сценаріїв EditorExportPlugin для налаштування специфіки платформи та ресурсів. редакторExportPlugin._begin_customize_scenes() та редакторExportPlugin._begin_customize_resources() для отримання більш детальної інформації.

Методи

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)

Error

export_pack_patch(preset: EditorExportPreset, debug: bool, path: String, patches: PackedStringArray = PackedStringArray(), flags: BitField[DebugFlags] = 0)

Error

export_project(preset: EditorExportPreset, debug: bool, path: String, flags: BitField[DebugFlags] = 0, notify: bool = true)

Error

export_project_files(preset: EditorExportPreset, debug: bool, save_cb: Callable, shared_cb: Callable = Callable())

Error

export_zip(preset: EditorExportPreset, debug: bool, path: String, flags: BitField[DebugFlags] = 0)

Error

export_zip_patch(preset: EditorExportPreset, debug: bool, path: String, patches: PackedStringArray = PackedStringArray(), flags: BitField[DebugFlags] = 0)

Dictionary

find_export_template(template_file_name: String) const

PackedStringArray

gen_export_flags(flags: BitField[DebugFlags])

Array

get_current_presets() const

PackedStringArray

get_forced_export_files(preset: EditorExportPreset = null) static

Dictionary

get_internal_export_files(preset: EditorExportPreset, debug: bool)

String

get_message_category(index: int) const

int

get_message_count() const

String

get_message_text(index: int) const

ExportMessageType

get_message_type(index: int) const

String

get_os_name() const

ExportMessageType

get_worst_message_type() const

Dictionary

save_pack(preset: EditorExportPreset, debug: bool, path: String, embed: bool = false)

Dictionary

save_pack_patch(preset: EditorExportPreset, debug: bool, path: String)

Dictionary

save_zip(preset: EditorExportPreset, debug: bool, path: String)

Dictionary

save_zip_patch(preset: EditorExportPreset, debug: bool, path: String)

Error

ssh_push_to_remote(host: String, port: String, scp_args: PackedStringArray, src_file: String, dst_file: String) const

Error

ssh_run_on_remote(host: String, port: String, ssh_arg: PackedStringArray, cmd_args: String, output: Array = [], port_fwd: int = -1) const

int

ssh_run_on_remote_no_wait(host: String, port: String, ssh_args: PackedStringArray, cmd_args: String, port_fwd: int = -1) const


Переліки

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 до повернутого списку.

DebugFlags DEBUG_FLAG_VIEW_NAVIGATION = 16

Прапорець встановлено, якщо ввімкнено опцію віддаленого налагодження "Visible Navigation". Якщо встановлено, 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, notify: bool = true) 🔗

Creates a full project at path for the specified preset. If notify is true, plugins using EditorExportPlugin._export_begin() will be called during the process.


Error export_project_files(preset: EditorExportPreset, debug: bool, save_cb: Callable, shared_cb: Callable = Callable()) 🔗

Експортує файли проекту для вказаного пресету. Цей метод може бути використаний для реалізації користувацького формату експорту, відмінного від PCK та ZIP. Для кожного експортованого файлу викликається один з методів зворотного виклику.

save_cb викликається для всіх експортованих файлів і має наступні аргументи: шлях до файлу: Рядок, file_data: PackedByteArray, file_index: int, file_count: int, encryption_include_filters: PackedStringArray, encryption_exclude_filters: PackedStringArray, encryption_key: PackedByteArray.

shared_cb викликається для експортованих нативних спільних/статичних бібліотек і має наступні аргументи: шлях до файлу: 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 з наступними ключами: шлях: Рядок та 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.


String get_os_name() const 🔗

Повертає назву операційної системи експорту, яку обробляє цей клас 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 і повертає ідентифікатор процесу (на віддаленому хості), не чекаючи завершення команди.