Symptoms:
- I’m unsure whether I need direct access to a Mac or Xcode to release my iOS game.
- I’ve completed my Unity project and am ready to release it on the App Store but I don't have access to a Mac
Cause:
While Unity Build Automation (UBA), streamlines the creation of iOS builds by automating many aspects of the process—including generating and managing the Xcode project—it does not eliminate the need for certain Apple-specific requirements.
Resolution:
No, you don’t need direct access to a Mac or Xcode for building with Unity Build Automation. However, some Apple-specific steps are required to release your game:
-
Apple Developer Account Setup:
- Register for an Apple Developer account at Apple Developer.
- Generate your distribution certificate and provisioning profile through the Apple Developer portal.
-
Unity Build Configuration:
- Upload your Apple Developer credentials (certificate and provisioning profile) to Unity Build Automation. This enables Unity to sign your builds correctly.
Ensure your certificates and provisioning profiles are always up to date to avoid build errors.
- Upload your Apple Developer credentials (certificate and provisioning profile) to Unity Build Automation. This enables Unity to sign your builds correctly.
-
Build Download:
- Once the build is complete, UBA provides an IPA file, which is the packaged app ready for distribution.
-
App Store Connect Upload:
- Log in to App Store Connect.
- Use the App Store Connect interface to upload your IPA file.
-
Prepare for App Store Submission:
- Complete your store listing details:
- App metadata (name, description, keywords).
- Screenshots for all device sizes.
- Pricing and availability information.
- Submit your app for Apple’s review process.
- Complete your store listing details:
Unity Build Automation provides a way to build iOS applications for users who do not have access to a Mac. However, it is strongly recommended to build the Unity project in batch mode locally first. This approach allows you to troubleshoot any potential issues and ensures a successful build when using Unity Build Automation.
More information: