iOS

Exporting to iOS

Requirements

  • A Mac is required, one with access to XCode.

Alternatives
  • Access to a Mac via Cloud:

  • VM:

  • DockerOSX .

    • Instead of virtualizing full hardware like a VM, Docker shares the host OS kernel (in this case Linux) and runs macOS in an isolated environment.

    • Docker-OSX uses Docker container technology to run an instance of macOS.

    • Docker-OSX uses QEMU (an emulator and virtualizer) to emulate the architecture required to run macOS. QEMU runs inside a Docker container, which differentiates it from a traditional VM.

    • .

    • Video of usage on Linux .

    • *Requirements:

      • 20GB+++ disk space for bare minimum installation (50GB if using Xcode).

      • Virtualization should be enabled in your BIOS settings.

      • Linux:

        • Made for Linux.

      • Windows:

        • Using WSL2 (Windows 11 + Windows Subsystem for Linux).

        • You must have Windows 11 installed with build 22000+ (21H2 or higher).

  • Hackintosh :

    • "A Hackintosh is a non-Apple computer running macOS. The idea is to use hardware that is not part of Apple's official line (like MacBook, iMac and Mac Pro) and still manage to install and run macOS functionally."

    • Installing macOS on non-Apple hardware violates Apple's Terms of Use. That means there is no official support and legal issues may arise, although in practice this is rarely pursued.

Xcode

  • Xcode is free to download and use.

  • The export process requires creating an Xcode project file (.xcodeproj) , which is necessary to build the app on macOS.

  • Through Xcode you can generate the final (.ipa)  file that will be submitted to the App Store or installed on an iOS device.

Apple Developer Account

  • To distribute your app on the App Store you need to enroll in the Apple Developer Program , which costs US$ 99 per year .

  • This gives access to the digital signing process required by Apple, such as a developer certificate  and a provisioning profile . This is normally handled via Xcode.

    • Signing Certificate:

      • The digital signing certificate.

    • Provisioning Profile:

      • Includes information about which devices can run the app.

      • This is configured within your developer account and generated in Xcode.

  • This account provides access to tools like TestFlight , a platform for testing apps with other users.

  • The account allows publishing apps across Apple platforms (iOS, iPadOS, macOS, watchOS and tvOS).

  • It is possible to test the app without an Apple Developer Account:

    • You can use your personal Apple ID  to test the app on real devices, but this limits the number of devices and the duration of the test (usually only 7 days before the app must be reinstalled).

    • You will not be able to distribute the app on the App Store or use features like TestFlight.

Fees

  • If your app is paid or has in-app purchases, Apple takes a percentage of each sale.

  • The standard commission is:

    • 15% for the first US$ 1 million in annual revenue per developer.

      • To receive this "discount" you must enroll in the App Store Small Business Program .

    • 30% for annual revenue over US$ 1 million.

  • This applies to paid apps and purchases inside free apps (such as subscriptions or virtual items).

  • For Subscriptions:

    • 30% in the first year.

    • If the user keeps the subscription for more than one year, Apple's commission for that subscription drops to 15% on subsequent revenue.

  • Depending on the buyer's country, there may be sales taxes (like VAT in Europe) added to the app price. Apple handles tax collection in many markets and adjusts pricing automatically based on local tax regulations. These taxes are separate from Apple's commission.

Exporting Godot to iOS