上一篇
安卓开发云服务器搭建
- 行业动态
- 2025-04-21
- 2
云服务器选择与基础配置
服务商 | 推荐配置 | 价格参考 | 适用场景 |
---|---|---|---|
阿里云 | 2核4GB/50GB SSD | 约100元/月 | 中小型项目开发 |
酷盾安全 | 2核4GB/50GB SSD | 约80元/月 | 快速部署测试 |
AWS | t3.micro实例 | 约30美元/月 | 国际化项目 |
Google Cloud | e2-medium实例 | 约45美元/月 | 深度集成GCP服务 |
基础环境初始化步骤:
- 通过SSH密钥登录(非密码登录)
ssh -i /path/to/private_key root@your_server_ip
- 更新系统包(以Ubuntu为例)
sudo apt update && sudo apt upgrade -y
- 安装基础工具集
sudo apt install -y curl wget unzip git vim
安卓开发环境搭建
Java开发环境
组件 | 安装命令 | 验证方式 |
---|---|---|
OpenJDK 17 | sudo apt install -y openjdk-17-jdk |
java -version |
Gradle | /gradle-7.6-bin.zip 解压后配置环境变量 |
gradle -v |
Android SDK安装
# 创建工具目录 mkdir -p ~/android/sdk cd ~/android/sdk # 下载指定版本SDK wget https://dl.google.com/android/repository/sdk-tools-linux-4333796.zip unzip sdk-tools-linux-.zip # 配置环境变量 echo 'export ANDROID_HOME=~/android/sdk' >> ~/.bashrc echo 'export PATH=$PATH:$ANDROID_HOME/tools' >> ~/.bashrc source ~/.bashrc # 安装特定SDK组件 sdkmanager "platforms;android-33" "build-tools;33.0.0"
构建工具配置
工具 | 配置文件路径 | 关键参数 |
---|---|---|
Gradle | ~/.gradle/gradle.properties |
org.gradle.parallel=true |
Maven | ~/.m2/settings.xml |
<localRepository>/home/ubuntu/.m2/repository</localRepository> |
持续集成(CI)环境配置
Jenkins安装示例
# 添加官方仓库 wget -q -O https://pkg.jenkins.io/debian-stable/jenkins.io.key | sudo apt-key add - sudo sh -c 'echo deb [arch=amd64] https://pkg.jenkins.io/debian-stable binary/ > /etc/apt/sources.list.d/jenkins.list' # 安装并启动服务 sudo apt update && sudo apt install -y jenkins sudo systemctl start jenkins
典型Pipeline脚本示例
pipeline { agent any environment { ANDROID_HOME = '/root/android/sdk' } stages { stage('Checkout') { steps { git url: 'https://github.com/your-repo.git' } } stage('Build') { steps { sh './gradlew assembleDebug' } } } }
常见问题解决方案
问题现象 | 解决方案 | 原理说明 |
---|---|---|
Gradle下载依赖超慢 | 修改build.gradle 为阿里云镜像repositories { maven { url "https://maven.aliyun.com/repository/public" } } |
绕过GFW限制 |
APK签名失败 | 生成上传CSR文件keytool -genkeypair -v -keystore my-release-key.jks ... |
符合Google Play要求 |
构建日志过大 | 配置Gradle日志级别org.gradle.logging.level=WARN |
减少冗余信息输出 |
性能优化建议
构建加速:
- 使用Gradle Daemon:
GRADLE_OPTS="-Dorg.gradle.daemon=true"
- 启用并行编译:
org.gradle.parallel=true
- 配置缓存目录:
GRADLE_USER_HOME=/mnt/cache/gradle
- 使用Gradle Daemon:
存储优化:
# 挂载大容量数据盘 sudo mkfs.ext4 /dev/xvdb sudo mount /dev/xvdb /mnt/data # 配置SDK缓存到数据盘 echo 'export ANDROID_SDK_CACHE=/mnt/data/sdk_cache' >> ~/.bashrc
安全加固措施
风险类型 | 防护方案 | 实施命令 |
---|---|---|
SSH暴力破解 | 禁用root登录 配置Fail2Ban |
PermitRootLogin no sudo apt install fail2ban |
端口暴露 | 限制SSH端口 | 修改/etc/ssh/sshd_config 中Port 2222 |
密钥泄露 | 设置权限掩码 | chmod 600 ~/.ssh/authorized_keys |
相关问题与解答
Q1:如何提升云服务器的构建效率?
A1:可通过以下方式优化:
- 使用SSD云盘提升IO性能
- 配置Gradle并行构建(
-Pparallel=true
) - 启用构建缓存(
./gradlew build --max-workers 4 --build-cache
) - 将Maven/Gradle本地仓库映射到独立数据盘
Q2:在云服务器上如何实现多模块项目的自动化测试?
A2:推荐配置方案:
- 安装Android Emulator(如Genymotion)或使用云端真机服务
- 配置Jenkins Pipeline增加测试阶段:
stage('Test') { steps { sh './gradlew connectedAndroidTest' // 解析测试报告 step([$class: 'JUnitParser', testResultsPattern: '/test-results//.xml']) } }
- 配置SonarQube进行代码质量分析(需安装Java分析插件)