Експорт на macOS

Дивись також

На цій сторінці описано, як експортувати проект Godot на macOS. Якщо ви хочете замість цього скомпілювати редактор, або експортувати шаблони бінарних файлів з джерела, прочитайте Compiling for macOS.

macOS apps are exported as an .app bundle, a folder with a specific structure which stores the executable, libraries and all the project files. This bundle can be exported as is, packed in a ZIP archive or DMG disk image (only supported when exporting from a computer running macOS).

Вимоги

  • To enable code signing with Apple Developer ID and notarization, you must export from a computer running macOS with Xcode command line tools installed.

  • Ad-hoc code signing is supported on all platforms, without additional tools.

  • Завантаження шаблонів експорту Godot. Використовуйте меню Godot: Редактор> Керування шаблонами експортування.

  • A valid and unique Bundle identifier should be set in the Application section of the export options.

Попередження

Проекти, експортовані без підпису та нотаріального засвідчення коду, будуть заблоковані Gatekeeper, якщо вони завантажені з невідомих джерел, перегляньте сторінку Запуск додатків Godot на MacOS для отримання додаткової інформації.

Підпис та нотаріальне засвідчення коду

By default, macOS will run only applications that are signed and notarized. If you use any other signing configuration, see Running Godot apps on macOS for workarounds.

To notarize an app, you must have a valid Apple Developer ID Certificate.

Якщо у вас є сертифікат Apple Developer ID

  • Export your project from a computer running macOS with Xcode command line tools installed.

  • Увімкніть Code Signing, Notarization, Hardened Runtime та Timestamp і вимкніть право Debug.

  • Надайте дійсні облікові дані Apple ID та посвідчення сертифіката.

Якщо увімкнено Notarization, Godot буде автоматично завантажувати експортований проект для нотаріального засвідчення.

Ви можете використовувати команду xcrun notarytool history, щоб перевірити стан нотаріального засвідчення і скористатися командою xcrun notarytool log {ID} для завантаження логу нотаріальних свідчень.

Якщо у вас виникли проблеми з нотаріальним засвідченням перегляньте Вирішення поширених питань нотаріального засвідчення.

Після завершення нотаріального засвідчення `прикріпіть квиток<https://developer.apple.com/documentation/security/notarizing_macos_software_before_distribution/customizing_the_notarization_workflow>`__ до експортованого проекту.

Якщо у вас немає сертифіката Apple Developer ID

Keep Code Signing enabled and leave the Identity option empty (when exporting from a computer running macOS, on other platforms this option is hidden). In this case Godot will use a ad-hoc signature, which will make running an exported app easier for the end users, see the Running Godot apps on macOS page for more information.

Параметри підпису

Опція

Опис

Увімкнути

Вмикає підписування коду.

Профіль

The "Full Name" or "Common Name" of the signing identity, store in the macOS keychain. 1 2

Часова позначка

Requests a timestamp server to authenticate the time of signing. Required for notarization. 2

Стійке середовище виконання

Enables "Hardened Runtime". Required for notarization. 2

Замінити наявний підпис

Замінює наявні підписи бібліотек GDNative і вбудованих допоміжних виконуваних файлів.

Примітка

Для засвідчення ви повинні увімкнути Hardened Runtime та Timestamp.

The Hardened Runtime and Timestamp options are incompatible with ad-hoc signing and will be ignored.

1

Залиште параметр Identity порожнім, щоб використовувати спеціальний підпис.

2(1,2,3)

This option is visible only when exporting from a computer running macOS.

Параметри нотаріального засвідчення

Опція

Опис

Увімкнути

Вмикає автоматичне завантаження для нотаріального засвідчення.

Ім'я Apple ID

Ім'я облікового запису Apple ID (адреса електронної пошти)

Пароль до Apple ID

Пароль для програми Apple ID. Перегляньте `Використання паролів для спеціальних додатків<https://support.apple.com/en-us/HT204397>`__, щоб ввімкнення двофакторну автентифікації та створення пароля додатка.

Apple Team ID

Team ID, if your Apple ID belongs to multiple teams

Для більшої інформації дивіться Нотаріальне засвідчення програмного забезпечення macOS перед розповсюдженням.

Примітка

Notarization is supported when exporting from a computer running macOS, these options are hidden on other platforms.

Права

Дозволи Захищеного виконання

За допомогою дозволів Захищеного виконання можна керувати параметрами безпеки та політикою доступу до ресурсів. Докладніше про них можна дізнатися з розділу Захищене виконання.

Дозволи

Опис

Allow JIT Code Execution 3

Дозволяє створювати записувану та виконувану пам'ять для коду JIT. Якщо використовуються додаткові компоненти з динамічним, або само-змінюваним, рідним кодом, увімкніть їх відповідно до додаткової документації.

Allow Unsigned Executable Memory 3

Дозволяє створювати завантажувальну та виконувану пам'ять без обмежень JIT. Якщо використовуються додаткові компоненти з динамічним або само-змінюваним рідним кодом, увімкніть їх відповідно до додаткової документації.

Allow DYLD Environment Variables 3

Дозволяє програмі використовувати динамічні змінні середовища зв'язку для введення коду. Якщо ви використовуєте додатки з динамічним або само-змінюваним рідним кодом, увімкніть їх відповідно до додаткової документації.

Вимкнути перевірку бібліотеки

Дозволяє програмі завантажувати довільні бібліотеки та фреймворки. Увімкніть його, якщо ви використовуєте додаткові компоненти GDNative і спеціальний підпис, або хочете підтримувати зовнішні додаткові компоненти, надані користувачем.

Звуковий вхід

Увімкніть, якщо вам потрібно використовувати мікрофон, або інші джерела введення звуку, якщо він включений, ви також повинні надати повідомлення про використання в параметрі privacy/microphone_usage_description.

Фотоапарат

Увімкніть, якщо вам потрібно використовувати камеру, якщо вона включена, ви також повинні надати повідомлення про використання в параметрі privacy/camera_usage_description.

Розташування

Увімкніть, якщо вам потрібно використовувати інформацію про місцезнаходження зі служб визначення місцезнаходження, якщо вона включена, ви також повинні надати повідомлення про використання в параметрі privacy/location_usage_description.

Адресна книга

4 Enable to allow access contacts in the user's address book, if it's enabled you should also provide usage message in the privacy/address_book_usage_description option.

Календарі

4 Enable to allow access to the user's calendar, if it's enabled you should also provide usage message in the privacy/calendar_usage_description option.

Бібліотека світлин

4 Enable to allow access to the user's Photos library, if it's enabled you should also provide usage message in the privacy/photos_library_usage_description option.

Події Apple

4 Enable to allow app to send Apple events to other apps.

Діагностика

5 You can temporarily enable this entitlement to use native debugger (GDB, LLDB) with the exported app. This entitlement should be disabled for production export.

3(1,2,3)

Allow JIT Code Execution, Allow Unsigned Executable Memory і Allow DYLD Environment Variables дозволи завжди ввімкнені для експорту Godot Mono, і не відображаються в параметрах експорту.

4(1,2,3,4)

Ці функції не підтримуються Godot з коробки, вмикайте їх, лише якщо ви використовуєте додаткові компоненти, які їх потребують.

5

Щоб засвідчити додаток, потрібно вимкнути дозвіл Debugging.

Дозвіл Пісочниці додатка

Пісочниця додатка обмежує доступ до даних користувачів, мереж і пристроїв. Програми з пісочницею не можуть отримати доступ до більшості файлових систем, не можуть використовувати власні діалогові вікна файлів і виконувати двійкові файли (за допомогою OS.execute і OS.create_process) за межами пакета .app. Докладніше про це можна дізнатися з Пісочниця додатка.

Примітка

Щоб розповсюдити додаток через App Store, потрібно ввімкнути Пісочницю додатка.

Дозволи

Опис

Увімкнено

Вмикає пісочницю додатка.

Мережевий сервер

Увімкніть, щоб дозволити програмі прослуховувати вхідні мережні підключення.

Клієнт мережі

Увімкніть, щоб дозволити програмі встановлювати вихідні мережні підключення.

USB пристрою

Увімкніть, щоб додаток міг взаємодіяти з USB-пристроями. Цей дозвіл необхідний для використання дротових контролерів.

Bluetooth пристрою

Увімкніть, щоб дозволити програмі взаємодіяти з пристроями Bluetooth. Цей дозвіл необхідний для використання бездротових контролерів.

Files Downloads 6

Надає доступ для читання, або запису, папки користувача "Завантаження".

Files Pictures 6

Дозволяє читати, або записувати, папку користувача "Зображення".

Files Music 6

Дозволяє читати, або записувати, папку користувача "Музика".

Files Movies 6

Дозволяє читати, або записувати, папку користувача "Фільми".

Files User Selected 6

Дозволяє читати, або записувати, довільну теку. Щоб отримати доступ, користувач повинен вибрати теку з рідного діалогового вікна файлів.

Допоміжний виконуваний файл

Список допоміжних виконуваних файлів, вбудованих у пакет програм. Додаток із пісочницею обмежений виконанням лише цих виконуваних файлів.

6(1,2,3,4,5)

За бажання ви можете надавати повідомлення про використання для різних папок у параметрах privacy/*_folder_usage_description.

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