Class reference
EditorExportPlatformExtension
Inherits EditorExportPlatform
Base class for custom EditorExportPlatform implementations (plugins).
Description
External EditorExportPlatform implementations should inherit from this class. To use EditorExportPlatform, register it using the EditorPlugin.add_export_platform() method first.
Methods
bool _can_export(EditorExportPreset preset, bool debug) virtual const
bool _can_export(EditorExportPreset preset, bool debug) virtual constReturns true, if specified preset is valid and can be exported. Use set_config_error() and set_config_missing_templates() to set error details. Usual implementation can call _has_valid_export_configuration() and _has_valid_project_configuration() to determine if export is possible.
void _cleanup() virtual
Called by the editor before platform is unregistered.
int _export_pack(EditorExportPreset preset, bool debug, String path, int flags) virtual
int _export_pack(EditorExportPreset preset, bool debug, String path, int flags) virtualCreates a PCK archive at path for the specified preset. This method is called when "Export PCK/ZIP" button is pressed in the export dialog, with "Export as Patch" disabled, and PCK is selected as a file type.
int _export_pack_patch(EditorExportPreset preset, bool debug, String path, PackedStringArray patches, int flags) virtual
int _export_pack_patch(EditorExportPreset preset, bool debug, String path, PackedStringArray patches, int flags) virtualCreates a patch PCK archive at path for the specified preset, containing only the files that have changed since the last patch. This method is called when "Export PCK/ZIP" button is pressed in the export dialog, with "Export as Patch" enabled, and PCK is selected as a file type. Note: The patches provided in patches have already been loaded when this method is called and are merely provided as context. When empty the patches defined in the export preset have been loaded instead.
int _export_project(EditorExportPreset preset, bool debug, String path, int flags) virtual required
int _export_project(EditorExportPreset preset, bool debug, String path, int flags) virtual requiredCreates a full project at path for the specified preset. This method is called when "Export" button is pressed in the export dialog. This method implementation can call EditorExportPlatform.save_pack() or EditorExportPlatform.save_zip() to use default PCK/ZIP export process, or calls EditorExportPlatform.export_project_files() and implement custom callback for processing each exported file.
int _export_zip(EditorExportPreset preset, bool debug, String path, int flags) virtual
int _export_zip(EditorExportPreset preset, bool debug, String path, int flags) virtualCreate a ZIP archive at path for the specified preset. This method is called when "Export PCK/ZIP" button is pressed in the export dialog, with "Export as Patch" disabled, and ZIP is selected as a file type.
int _export_zip_patch(EditorExportPreset preset, bool debug, String path, PackedStringArray patches, int flags) virtual
int _export_zip_patch(EditorExportPreset preset, bool debug, String path, PackedStringArray patches, int flags) virtualCreate a ZIP archive at path for the specified preset, containing only the files that have changed since the last patch. This method is called when "Export PCK/ZIP" button is pressed in the export dialog, with "Export as Patch" enabled, and ZIP is selected as a file type. Note: The patches provided in patches have already been loaded when this method is called and are merely provided as context. When empty the patches defined in the export preset have been loaded instead.
PackedStringArray _get_binary_extensions(EditorExportPreset preset) virtual required const
PackedStringArray _get_binary_extensions(EditorExportPreset preset) virtual required constReturns array of supported binary extensions for the full project export.
String _get_debug_protocol() virtual const
String _get_debug_protocol() virtual constReturns protocol used for remote debugging. Default implementation return tcp://.
String _get_device_architecture(int device) virtual const
String _get_device_architecture(int device) virtual constReturns device architecture for one-click deploy.
bool _get_export_option_visibility(EditorExportPreset preset, String option) virtual const
bool _get_export_option_visibility(EditorExportPreset preset, String option) virtual constValidates option and returns visibility for the specified preset. Default implementation return true for all options.
String _get_export_option_warning(EditorExportPreset preset, StringName option) virtual const
String _get_export_option_warning(EditorExportPreset preset, StringName option) virtual constValidates option and returns warning message for the specified preset. Default implementation return empty string for all options.
Dictionary[] _get_export_options() virtual const
Returns a property list, as an Array of dictionaries. Each Dictionary must at least contain the name: StringName and type: Variant.Type entries. Additionally, the following keys are supported: - hint: PropertyHint - hint_string: String - usage: PropertyUsageFlags - class_name: StringName - default_value: Variant, default value of the property. - update_visibility: bool, if set to true, _get_export_option_visibility() is called for each property when this property is changed. - required: bool, if set to true, this property warnings are critical, and should be resolved to make export possible. This value is a hint for the _has_valid_export_configuration() implementation, and not used by the engine directly. See also Object._get_property_list().
Texture2D _get_logo() virtual required const
Texture2D _get_logo() virtual required constReturns the platform logo displayed in the export dialog. The logo should be 32×32 pixels, adjusted for the current editor scale (see EditorInterface.get_editor_scale()).
String _get_name() virtual required const
String _get_name() virtual required constReturns export platform name.
Texture2D _get_option_icon(int device) virtual const
Texture2D _get_option_icon(int device) virtual constReturns the item icon for the specified device in the one-click deploy menu. The icon should be 16×16 pixels, adjusted for the current editor scale (see EditorInterface.get_editor_scale()).
String _get_option_label(int device) virtual const
String _get_option_label(int device) virtual constReturns one-click deploy menu item label for the specified device.
String _get_option_tooltip(int device) virtual const
String _get_option_tooltip(int device) virtual constReturns one-click deploy menu item tooltip for the specified device.
int _get_options_count() virtual const
int _get_options_count() virtual constReturns the number of devices (or other options) available in the one-click deploy menu.
String _get_options_tooltip() virtual const
String _get_options_tooltip() virtual constReturns tooltip of the one-click deploy menu button.
String _get_os_name() virtual required const
String _get_os_name() virtual required constReturns target OS name.
PackedStringArray _get_platform_features() virtual required const
PackedStringArray _get_platform_features() virtual required constReturns array of platform specific features.
PackedStringArray _get_preset_features(EditorExportPreset preset) virtual required const
PackedStringArray _get_preset_features(EditorExportPreset preset) virtual required constReturns array of platform specific features for the specified preset.
Texture2D _get_run_icon() virtual const
Texture2D _get_run_icon() virtual constReturns the icon of the one-click deploy menu button. The icon should be 16×16 pixels, adjusted for the current editor scale (see EditorInterface.get_editor_scale()).
bool _has_valid_export_configuration(EditorExportPreset preset, bool debug) virtual required const
bool _has_valid_export_configuration(EditorExportPreset preset, bool debug) virtual required constReturns true if export configuration is valid.
bool _has_valid_project_configuration(EditorExportPreset preset) virtual required const
bool _has_valid_project_configuration(EditorExportPreset preset) virtual required constReturns true if project configuration is valid.
bool _is_executable(String path) virtual const
bool _is_executable(String path) virtual constReturns true if specified file is a valid executable (native executable or script) for the target platform.
bool _poll_export() virtual
bool _poll_export() virtualReturns true if one-click deploy options are changed and editor interface should be updated.
int _run(EditorExportPreset preset, int device, int debug_flags) virtual
int _run(EditorExportPreset preset, int device, int debug_flags) virtualThis method is called when device one-click deploy menu option is selected. Implementation should export project to a temporary location, upload and run it on the specific device, or perform another action associated with the menu item.
bool _should_update_export_options() virtual
bool _should_update_export_options() virtualReturns true if export options list is changed and presets should be updated.
String get_config_error() const
String get_config_error() constReturns current configuration error message text. This method should be called only from the _can_export(), _has_valid_export_configuration(), or _has_valid_project_configuration() implementations.
bool get_config_missing_templates() const
bool get_config_missing_templates() constReturns true is export templates are missing from the current configuration. This method should be called only from the _can_export(), _has_valid_export_configuration(), or _has_valid_project_configuration() implementations.
void set_config_error(String error_text) const
String error_text) constSets current configuration error message text. This method should be called only from the _can_export(), _has_valid_export_configuration(), or _has_valid_project_configuration() implementations.
void set_config_missing_templates(bool missing_templates) const
bool missing_templates) constSet to true is export templates are missing from the current configuration. This method should be called only from the _can_export(), _has_valid_export_configuration(), or _has_valid_project_configuration() implementations.