:github_url: hide .. DO NOT EDIT THIS FILE!!! .. Generated automatically from Godot engine sources. .. Generator: https://github.com/godotengine/godot/tree/master/doc/tools/make_rst.py. .. XML source: https://github.com/godotengine/godot/tree/master/doc/classes/EditorExportPlugin.xml. .. _class_EditorExportPlugin: EditorExportPlugin ================== **Inherits:** :ref:`RefCounted` **<** :ref:`Object` A script that is executed when exporting the project. Description ----------- ``EditorExportPlugin``\ s are automatically invoked whenever the user exports the project. Their most common use is to determine what files are being included in the exported project. For each plugin, :ref:`_export_begin` is called at the beginning of the export process and then :ref:`_export_file` is called for each exported file. To use ``EditorExportPlugin``, register it using the :ref:`EditorPlugin.add_export_plugin` method first. Methods ------- +------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`_export_begin` **(** :ref:`PackedStringArray` features, :ref:`bool` is_debug, :ref:`String` path, :ref:`int` flags **)** |virtual| | +------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`_export_end` **(** **)** |virtual| | +------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`_export_file` **(** :ref:`String` path, :ref:`String` type, :ref:`PackedStringArray` features **)** |virtual| | +------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`add_file` **(** :ref:`String` path, :ref:`PackedByteArray` file, :ref:`bool` remap **)** | +------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`add_ios_bundle_file` **(** :ref:`String` path **)** | +------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`add_ios_cpp_code` **(** :ref:`String` code **)** | +------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`add_ios_embedded_framework` **(** :ref:`String` path **)** | +------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`add_ios_framework` **(** :ref:`String` path **)** | +------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`add_ios_linker_flags` **(** :ref:`String` flags **)** | +------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`add_ios_plist_content` **(** :ref:`String` plist_content **)** | +------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`add_ios_project_static_lib` **(** :ref:`String` path **)** | +------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`add_macos_plugin_file` **(** :ref:`String` path **)** | +------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`add_shared_object` **(** :ref:`String` path, :ref:`PackedStringArray` tags, :ref:`String` target **)** | +------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`skip` **(** **)** | +------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ Method Descriptions ------------------- .. _class_EditorExportPlugin_method__export_begin: - void **_export_begin** **(** :ref:`PackedStringArray` features, :ref:`bool` is_debug, :ref:`String` path, :ref:`int` flags **)** |virtual| Virtual method to be overridden by the user. It is called when the export starts and provides all information about the export. ``features`` is the list of features for the export, ``is_debug`` is ``true`` for debug builds, ``path`` is the target path for the exported project. ``flags`` is only used when running a runnable profile, e.g. when using native run on Android. ---- .. _class_EditorExportPlugin_method__export_end: - void **_export_end** **(** **)** |virtual| Virtual method to be overridden by the user. Called when the export is finished. ---- .. _class_EditorExportPlugin_method__export_file: - void **_export_file** **(** :ref:`String` path, :ref:`String` type, :ref:`PackedStringArray` features **)** |virtual| Virtual method to be overridden by the user. Called for each exported file, providing arguments that can be used to identify the file. ``path`` is the path of the file, ``type`` is the :ref:`Resource` represented by the file (e.g. :ref:`PackedScene`) and ``features`` is the list of features for the export. Calling :ref:`skip` inside this callback will make the file not included in the export. ---- .. _class_EditorExportPlugin_method_add_file: - void **add_file** **(** :ref:`String` path, :ref:`PackedByteArray` file, :ref:`bool` remap **)** Adds a custom file to be exported. ``path`` is the virtual path that can be used to load the file, ``file`` is the binary data of the file. If ``remap`` is ``true``, file will not be exported, but instead remapped to the given ``path``. ---- .. _class_EditorExportPlugin_method_add_ios_bundle_file: - void **add_ios_bundle_file** **(** :ref:`String` path **)** Adds an iOS bundle file from the given ``path`` to the exported project. ---- .. _class_EditorExportPlugin_method_add_ios_cpp_code: - void **add_ios_cpp_code** **(** :ref:`String` code **)** Adds a C++ code to the iOS export. The final code is created from the code appended by each active export plugin. ---- .. _class_EditorExportPlugin_method_add_ios_embedded_framework: - void **add_ios_embedded_framework** **(** :ref:`String` path **)** Adds a dynamic library (\*.dylib, \*.framework) to Linking Phase in iOS's Xcode project and embeds it into resulting binary. \ **Note:** For static libraries (\*.a) works in same way as ``add_ios_framework``. This method should not be used for System libraries as they are already present on the device. ---- .. _class_EditorExportPlugin_method_add_ios_framework: - void **add_ios_framework** **(** :ref:`String` path **)** Adds a static library (\*.a) or dynamic library (\*.dylib, \*.framework) to Linking Phase in iOS's Xcode project. ---- .. _class_EditorExportPlugin_method_add_ios_linker_flags: - void **add_ios_linker_flags** **(** :ref:`String` flags **)** Adds linker flags for the iOS export. ---- .. _class_EditorExportPlugin_method_add_ios_plist_content: - void **add_ios_plist_content** **(** :ref:`String` plist_content **)** Adds content for iOS Property List files. ---- .. _class_EditorExportPlugin_method_add_ios_project_static_lib: - void **add_ios_project_static_lib** **(** :ref:`String` path **)** Adds a static lib from the given ``path`` to the iOS project. ---- .. _class_EditorExportPlugin_method_add_macos_plugin_file: - void **add_macos_plugin_file** **(** :ref:`String` path **)** Adds file or directory matching ``path`` to ``PlugIns`` directory of macOS app bundle. \ **Note:** This is useful only for macOS exports. ---- .. _class_EditorExportPlugin_method_add_shared_object: - void **add_shared_object** **(** :ref:`String` path, :ref:`PackedStringArray` tags, :ref:`String` target **)** Adds a shared object or a directory containing only shared objects with the given ``tags`` and destination ``path``. \ **Note:** In case of macOS exports, those shared objects will be added to ``Frameworks`` directory of app bundle. In case of a directory code-sign will error if you place non code object in directory. ---- .. _class_EditorExportPlugin_method_skip: - void **skip** **(** **)** To be called inside :ref:`_export_file`. Skips the current file, so it's not included in the export. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` .. |static| replace:: :abbr:`static (This method doesn't need an instance to be called, so it can be called directly using the class name.)` .. |operator| replace:: :abbr:`operator (This method describes a valid operator to use with this type as left-hand operand.)`