uni-app, as a cross-platform development framework, has become the first choice for many teams and individual developers due to its "write once, run everywhere" feature.
However, many developers often encounter complex processes, scattered tools, and tedious reviews during the iOS app submission phase.
This article will focus on the iOS submission process for uni-app, combining practical experience to detail the entire process from certificate preparation to TestFlight distribution and App Store release, and provide tool combination solutions for different stages.
1. Preparation Phase: iOS Certificates and Provisioning Profiles
In a uni-app project, to successfully package and submit an iOS app, you must first apply for iOS development certificates and distribution certificates.
- Mac users: Can generate a CSR file via Xcode or Keychain Access, then apply for certificates in the Apple Developer Center.
- Cross-platform users (Windows/Linux): Can use Appuploader to directly generate p12 certificates and provisioning profiles without a Mac.
Team practical experience:
- It is recommended to uniformly export as
.p12files and set certificate naming conventions (e.g.,UniApp_Project_Dist_2025.p12). - Store certificates and provisioning profiles centrally in a team repository to avoid packaging failures due to loss of personal computers.
2. Packaging Phase: Generating ipa from HBuilderX
uni-app packaging has two main methods:
1. Cloud Packaging (Recommended for small teams/without Mac environment)
- In HBuilderX → Distribution → Native App - Cloud Packaging, upload certificates and provisioning profiles.
- The cloud directly generates the ipa file.
- Suitable for teams without Macs to quickly deliver.
2. Local Packaging (Requires Mac environment)
- Use HBuilderX to export the Xcode project.
- Open the project in Xcode on a Mac, perform Archive packaging, and export the ipa file.
- More flexible, suitable for teams requiring customized configurations.
3. Upload Phase: Choices for Multi-Tool Combinations
After generating the ipa, it needs to be uploaded to Apple's servers to enter TestFlight or the App Store.
Common solutions:
- Xcode upload: Intuitive, but limited to Mac users.
- Transporter: Apple's official standalone upload tool, suitable for stable scenarios.
- Appuploader: Supports Windows/Linux/Mac, cross-platform upload without Mac.
- Fastlane: Command-line tool, suitable for CI/CD automated workflows.
In practice:
- Small teams tend to use Appuploader for convenient cross-platform uploads.
- Medium to large teams often use Fastlane + Jenkins for automation.
4. Distribution Phase: Internal and External Testing
1. Internal Testing (TestFlight Internal Testing)
- Supports up to 25 accounts, with immediate installation.
- Suitable for internal team validation.
2. External Testing (TestFlight External Testing)
- Supports up to 10,000 users.
- Requires Apple review after upload (approximately 24 hours).
3. Alternative Solutions
- For small-scale testing, Ad Hoc packages can be used for direct distribution.
- Appuploader supports generating QR codes for installation, facilitating temporary experiences.
5. App Store Review and Release
Review is the final step in iOS submission and a common challenge for many uni-app developers.
Preparation required:
- App name, subtitle, keywords.
- Screenshots and videos (can be batch uploaded via Appuploader).
- Privacy policy and permission descriptions.
Important notes:
- uni-app projects are easily misjudged as "shell apps"; ensure complete functionality and reasonable interactions.
- Avoid scenarios where only H5 web pages are loaded, as this may lead to rejection.
6. Team Practical Case: Submission Process for a uni-app E-commerce App
We once assisted a 5-person team in submitting a uni-app-based e-commerce app, with the process as follows:
- Operations (Windows): Used Appuploader to apply for certificates and manage them uniformly.
- Development (Windows + Mac): Used HBuilderX cloud packaging to generate the ipa.
- Testing (Windows): Used Appuploader to upload the ipa to TestFlight.
- Product Manager (Mac): Configured information and screenshots in App Store Connect.
- Final Step: After collecting feedback via TestFlight external testing, submitted for App Store review.
Ultimately, the team completed the entire process relying on only one Mac.
7. Experience Summary
- Centralized certificate management: Avoid packaging failures due to certificate expiration or loss.
- Flexible packaging method selection: Cloud packaging suits small teams, local packaging suits customization needs.
- Multi-tool upload combinations: Appuploader, Xcode, Transporter, Fastlane each have their scenarios.
- Compliant review: uni-app projects must avoid being misjudged as shell apps.
The process of submitting a uni-app app to iOS, though complex, can be significantly simplified by rationally utilizing tools.
Through the combination of HBuilderX, Appuploader, Xcode, Fastlane, TestFlight, both independent developers and cross-platform teams can successfully complete the entire process from development to App Store release.
Top comments (0)