App Deployment
Android Studio
Device Debugging & Deployment
-
QR Code Debugging (Wireless ADB):
- Enable Developer Options on the device.
- In Android Studio:
adb pair <IP:Port> # Scan QR code from device's "Pair using Wi-Fi" option
adb connect <IP:Port> - Deploy directly to the device without USB.
-
Build & Sign APK/AAB
./gradlew assembleRelease # Generate APK
./gradlew bundleRelease # Generate App Bundle (AAB)- Sign with a keystore:
android {
signingConfigs {
release {
storeFile file("my-release-key.jks")
storePassword "password"
keyAlias "alias"
keyPassword "password"
}
}
}
- Sign with a keystore:
-
Deployment Tools
- Firebase App Distribution: Beta testing for Android/iOS.
- Play Store: Use
Internal Testing
track for staged rollouts.
Apple System (iOS/macOS)
Xcode Setup & Debugging
-
Device Pairing
- Connect via USB or Wireless Debugging (Settings > Developer > Wireless Debugging).
- Use Quick Look in Xcode’s debugger to inspect UI elements.
-
Code Signing
- Automatically manage certificates/profiles in Xcode:
// Xcode -> Signing & Capabilities -> Automatically manage signing
- Manual signing for enterprise apps:
Upload.ipa
via Apple Configurator 2.
- Automatically manage certificates/profiles in Xcode:
-
App Store Deployment
- Archive the app in Xcode (
Product > Archive
). - Submit via App Store Connect or automate with:
xcodebuild -exportArchive -archivePath <path> -exportOptionsPlist ExportOptions.plist
- Archive the app in Xcode (
-
TestFlight
- Distribute beta builds to testers via Apple’s TestFlight platform.
Cross-Platform Deployment Tools
Hybrid Frameworks
- Flutter:
flutter build apk # Android
flutter build ios # iOS (requires Xcode) - React Native:
npx react-native run-android
npx react-native run-ios
CI/CD Automation
- Android:
- GitHub Actions with
android-build
workflow. - Bitrise for Play Store uploads.
- GitHub Actions with
- iOS:
- Fastlane for automated screenshots and App Store submissions:
lane :beta do
build_app(scheme: "MyApp")
upload_to_testflight
end - Xcode Cloud (Apple’s native CI/CD).
- Fastlane for automated screenshots and App Store submissions:
Monitoring & Analytics
Tool | Purpose |
---|---|
Firebase Crashlytics | Real-time crash reporting |
Sentry | Cross-platform error tracking |
New Relic | Performance monitoring |
Pro Tips
- Use environment variables for API keys (e.g.,
.env
files). - Test on emulators (Android Studio) and simulators (Xcode) before physical devices.
- For Apple deployments, renew APNs certificates annually.
Learning Resources