如何不借助Expo本地构建React Native项目的Android APK?
本地构建Expo项目Android APK(无需依赖第三方工具)
既然你已经通过npx expo run:android生成了android文件夹,完全可以直接用Gradle本地构建APK,不需要依赖Expo服务或其他第三方工具,也不用执行eject,步骤如下:
1. 生成签名密钥(仅Release版本需要)
如果要构建正式的Release APK,需要自己生成签名密钥(测试用的Debug APK可跳过此步骤):
keytool -genkey -v -keystore my-release-key.keystore -alias my-key-alias -keyalg RSA -keysize 2048 -validity 10000
执行命令后按提示输入密码、信息,将生成的my-release-key.keystore文件放到android/app目录下。
2. 配置Gradle签名信息
打开android/app/build.gradle文件,找到signingConfigs代码块,添加Release签名配置:
signingConfigs { debug { storeFile file('debug.keystore') storePassword 'android' keyAlias 'androiddebugkey' keyPassword 'android' } release { storeFile file('my-release-key.keystore') // 对应刚才生成的密钥文件 storePassword '你的密钥库密码' keyAlias 'my-key-alias' // 你设置的密钥别名 keyPassword '你的密钥密码' } }
接着在buildTypes的release块里指定使用该签名配置:
buildTypes { release { signingConfig signingConfigs.release // 其他默认配置保持不变即可 } }
3. 执行本地构建
- 先进入项目的
android目录:cd android - 执行构建命令:
- macOS/Linux:
./gradlew assembleRelease - Windows:
gradlew.bat assembleRelease
- macOS/Linux:
构建完成后,APK文件会生成在android/app/build/outputs/apk/release/app-release.apk路径下。
测试用Debug APK快速获取
如果只是临时给同事测试,也可以直接构建Debug版本,无需签名配置:
cd android # macOS/Linux ./gradlew assembleDebug # Windows gradlew.bat assembleDebug
生成的Debug APK在android/app/build/outputs/apk/debug/app-debug.apk,直接发给同事安装即可(注意设备要开启“允许安装未知来源应用”)。
注意:你通过
expo run:android生成的android文件夹属于Expo的**预构建(Prebuild)**模式,不是传统的eject,后续依然可以正常使用Expo的CLI命令和服务,不会影响项目的Expo特性。
内容的提问来源于stack exchange,提问作者Cooty
相关产品推荐
相关产品推荐

