Customer App
Build iOS
Building for iOS requires a Mac with Xcode and a paid Apple Developer account. See the Apple Developer & Signing guide for account setup.
1. Open the project
cd customer_app
flutter pub get
cd ios && pod install && cd ..
open ios/Runner.xcworkspace
📁
Open the
.xcworkspace, not the .xcodeproj — the workspace includes the CocoaPods dependencies.2. Signing & capabilities
In Xcode → Runner target → Signing & Capabilities:
- Set your Team and Bundle Identifier (e.g.
com.yourcompany.shop). - Add capabilities: Push Notifications, Background Modes → Remote notifications, and Sign in with Apple.
- Let Xcode manage signing (Automatic) for the simplest path.
3. Add your keys
- Place your GoogleService-Info.plist in
ios/Runner/(replace the placeholder). - Set your iOS Maps key in
AppDelegate.swift(see API URL & Maps). - Set your Facebook values + reversed Google client id in
Info.plist(see Firebase & Login).
4. Tighten transport security
For development the app allows plain-HTTP (a LAN dev server). Before release, edit ios/Runner/Info.plist and remove/limit NSAllowsArbitraryLoads so the app only talks to your HTTPS API.
5. Build & archive
flutter build ipa --release --dart-define=APP_ENV=prod
Or archive from Xcode: select Any iOS Device → Product → Archive → Distribute App → App Store Connect / TestFlight. You can also upload the generated .ipa with Transporter.
6. Submit
- App Store Connect → create the app record (same bundle id).
- Upload the build, fill the listing, add screenshots and a privacy policy.
- Submit for review.
👉
Next: see what shoppers get in Features.