| name | react-native-deployment |
| description | Master deployment - EAS Build, Fastlane, App Store, Play Store, and OTA updates |
| sasmp_version | 1.3.0 |
| bonded_agent | 07-react-native-deploy |
| bond_type | PRIMARY_BOND |
| version | 2.0.0 |
| updated | 2025-01 |
React Native Deployment Skill
Learn to build, sign, and deploy React Native apps to iOS App Store, Google Play Store, and OTA update systems.
Prerequisites
- React Native app ready for production
- Apple Developer Account (iOS)
- Google Play Developer Account (Android)
- Basic understanding of CI/CD
Learning Objectives
After completing this skill, you will be able to:
Topics Covered
1. EAS Build Setup
npm install -g eas-cli
eas login
eas build:configure
eas build --platform all --profile production
2. EAS Configuration
{
"build": {
"development": {
"developmentClient": true,
"distribution": "internal"
},
"production": {
"autoIncrement": true
}
},
"submit": {
"production": {
"ios": { "appleId": "your@email.com" },
"android": { "track": "production" }
}
}
}
3. iOS Code Signing
fastlane match appstore
4. Android Keystore
keytool -genkeypair -v -storetype PKCS12 \
-keystore release.keystore \
-alias my-key-alias \
-keyalg RSA -keysize 2048 -validity 10000
5. OTA Updates
import * as Updates from 'expo-updates';
async function checkUpdates() {
const update = await Updates.checkForUpdateAsync();
if (update.isAvailable) {
await Updates.fetchUpdateAsync();
await Updates.reloadAsync();
}
}
6. Submission Commands
eas build --platform all --profile production --auto-submit
eas submit --platform ios --latest
eas submit --platform android --latest
Quick Start Example
eas build:configure
eas build --platform all --profile production
eas submit --platform all --latest
eas update --branch production --message "Bug fixes"
Pre-Submission Checklist
iOS App Store
Google Play Store
Common Errors & Solutions
| Error | Cause | Solution |
|---|
| Code signing failed | Certificate mismatch | Regenerate certs |
| Build number conflict | Not incremented | Use autoIncrement |
| Upload rejected | Missing metadata | Complete all fields |
Validation Checklist
Usage
Skill("react-native-deployment")
Bonded Agent: 07-react-native-deploy