83 lines
2.0 KiB
Bash
83 lines
2.0 KiB
Bash
#!/bin/bash
|
||
|
||
# 跨平台翻译应用开发启动脚本
|
||
|
||
echo "🚀 启动跨平台翻译应用开发环境..."
|
||
|
||
# 检查Node.js是否安装
|
||
if ! command -v node &> /dev/null; then
|
||
echo "❌ Node.js未安装,请先安装Node.js"
|
||
exit 1
|
||
fi
|
||
|
||
# 检查npm是否安装
|
||
if ! command -v npm &> /dev/null; then
|
||
echo "❌ npm未安装,请先安装npm"
|
||
exit 1
|
||
fi
|
||
|
||
# 检查环境变量文件
|
||
if [ ! -f .env ]; then
|
||
echo "⚠️ .env文件不存在,从.env.example复制..."
|
||
if [ -f .env.example ]; then
|
||
cp .env.example .env
|
||
echo "✅ 已创建.env文件,请配置相应的环境变量"
|
||
else
|
||
echo "❌ .env.example文件不存在"
|
||
exit 1
|
||
fi
|
||
fi
|
||
|
||
# 安装依赖
|
||
echo "📦 安装依赖包..."
|
||
npm install
|
||
|
||
# 检查React Native CLI
|
||
if ! command -v npx react-native &> /dev/null; then
|
||
echo "📱 安装React Native CLI..."
|
||
npm install -g @react-native-community/cli
|
||
fi
|
||
|
||
# 清理缓存
|
||
echo "🧹 清理缓存..."
|
||
npx react-native start --reset-cache &
|
||
|
||
# 等待Metro服务器启动
|
||
echo "⏳ 等待Metro服务器启动..."
|
||
sleep 5
|
||
|
||
# 询问用户要启动哪个平台
|
||
echo "请选择要启动的平台:"
|
||
echo "1) Android"
|
||
echo "2) iOS"
|
||
echo "3) 两个都启动"
|
||
read -p "请输入选择 (1-3): " choice
|
||
|
||
case $choice in
|
||
1)
|
||
echo "🤖 启动Android应用..."
|
||
npx react-native run-android
|
||
;;
|
||
2)
|
||
echo "🍎 启动iOS应用..."
|
||
npx react-native run-ios
|
||
;;
|
||
3)
|
||
echo "🤖 启动Android应用..."
|
||
npx react-native run-android &
|
||
echo "🍎 启动iOS应用..."
|
||
npx react-native run-ios &
|
||
;;
|
||
*)
|
||
echo "❌ 无效选择"
|
||
exit 1
|
||
;;
|
||
esac
|
||
|
||
echo "✅ 开发环境启动完成!"
|
||
echo "📱 应用正在构建和安装到设备/模拟器..."
|
||
echo "🔧 如遇到问题,请检查:"
|
||
echo " - Android Studio是否正确安装和配置"
|
||
echo " - Xcode是否正确安装和配置(仅iOS)"
|
||
echo " - 设备/模拟器是否正常运行"
|
||
echo " - 环境变量是否正确配置" |