linux通过expo打包安卓apk(原生打包/eas云打包)
·
linux通过expo打包安卓apk(原生打包/eas云打包)
本文分别通过expo原生打包+eas云打包的方式说明如何打包expo应用。
一、linux原生打包
1.插件文件(linux):
| 插件 | 版本 | 下载地址 |
|---|---|---|
| jdk | 17.0.15 | 夸克:https://pan.quark.cn/s/b0fc36a3a4b5,提取码:gcHg |
| gradle | 8.13 | 夸克:https://pan.quark.cn/s/b0fc36a3a4b5,提取码:gcHg |
| cmdline-tools | 19.0 | 夸克:https://pan.quark.cn/s/b0fc36a3a4b5,提取码:gcHg |
| nvm | 0.39.7 | 夸克:https://pan.quark.cn/s/b0fc36a3a4b5,提取码:gcHg |
2. 最终打包运行环境:
| 插件 | 版本 |
|---|---|
| jdk | 17.0.15 |
| gradle | 8.13 |
| node | 20.18.3 |
| build-tools | 35.0.0 |
| ndk | 27.1.12297006 |
| platform-tools | 36.0.0 |
| platforms | android-35 |
3.安装
- 安装jdk:
// 1.解压jdk tar -zxvf OpenJDK17U-jdk_x64_linux_hotspot_17.0.15_6.tar.gz // 2.重命名解压后的文件名,并移动到/usr/local目录 mv jdk-17.0.15+6/ /usr/local/jdk-17.0.15 // 3.配置环境变量 vim ~/.bashrc export JAVA_HOME=/usr/local/jdk-17.0.15 export PATH=$JAVA_HOME/bin:$PATH // 4.使环境变量生效 source ~/.bashrc // 5.验证是否生效 java --version - 安装node:
// 1.执行install-nvm.sh,等待安装完成 chmod +x install-nvm.sh && ./install-nvm.sh // 2.验证是否生效 nvm --version // 3.安装nodejs nvm install 20.18.3 // 4.验证node node -v npm -v - 安装gradle:
// 1.安装解压工具 yum install unzip -y // 2.解压文件 unzip gradle-8.13-bin.zip // 3.移动解压后文件到android sdk目录下 mkdir -p /root/Android/Sdk mv gradle-8.13 /root/Android/Sdk // 4.配置环境变量 vim ~/.bashrc export GRADLE_HOME=/root/Android/Sdk/gradle-8.13 export PATH=$PATH:/root/Android/Sdk/bin // 5.使环境变量生效 source ~/.bashrc // 6.验证安装 gradle --version - 安装cmdline-tools:
// 1.安装解压工具(如未安装) yum install unzip -y // 2.解压文件 unzip cmdline-tools.zip // 3.移动解压后文件到android sdk目录下 mv cmdline-tools /root/Android/Sdk/ // 4.配置环境变量 vim ~/.bashrc export ANDROID_HOME=/root/Android/Sdk export PATH="$PATH:$ANDROID_HOME/cmdline-tools/latest/bin" // 5.使环境变量生效 source ~/.bashrc // 6.验证安装 sdkmanager --version // 输入sdkmanager --list 查看可安装列表 // 安装cmake sdkmanager "cmake;3.22.1" // 安装build-tools sdkmanager "build-tools;35.0.0" // 安装ndk sdkmanager "ndk;27.1.12297006" // 安装platform-tools sdkmanager "platform-tools" // 安装platforms sdkmanager "platforms;android-35" // 输入sdkmanager --list 查看已经安装列表 - 打包apk
// 1.使用expo创建react native项目 cd /root npx create-expo-app@latest expo-demo // 2.开始预构建 cd expo-demo npx expo prebuild --no-install --platform android // 3.绑定js npx expo export:embed --eager --platform android --dev false // 4.开始打包(首次打包需要下载依赖,依赖来自己国外仓库,故时间较长) cd android chmod +x gradlew && ./gradlew :app:assembleRelease // 5.打包后apk地址 ./app/build/outputs/apk/release/app-release.apk - 截图
环境截图

apk路径截图

打包后apk运行截图

二、eas云打包
云打包所需要的是node环境,故只需要安装nodejs,可以参考原生打包安装node20。
1.创建项目
// 创建项目
npx create-expo-app@latest
2.安装eas客户端
// 全局安装eas客户端,并且登录expo账号,账号可以登录expo官网https://expo.dev注册
npm install -g eas-cli && eas login
npx expo install expo-dev-client
3.eas云构建
// 1.初始化eas构建
eas init
// 2.修改eas.json, 在production下增加配置如下
"android": {
"buildType": "apk"
}
// 3.开始推送给eas云构建
eas build --platform android --profile development
查看构建日志
登录expo官网查看构建日志。


更多推荐
所有评论(0)