Expo打Android包(.apk)

Expo打Android包(.apk)

一、开发环境

操作系统:Win11
开发工具:Cursor
实现目标:将Expo的Demo打包成.apk文件

二、操作步骤

英文版官网-打包指南

  1. 准备一个Expo工程
  2. 控制台输入下面指令,生成平台文件:
npx expo prebuild

在这里插入图片描述

在这里插入图片描述

  1. 控制台输入下面指令,生成签名文件(.keystore)
keytool -genkey -v -keystore test.keystore -alias a -keyalg RSA -keysize 2048 -validity 10000

注意:英文的官网上给出的是:

sudo keytool -genkey -v -keystore my-upload-key.keystore -alias my-key-alias -keyalg RSA -keysize 2048 -validity 10000

windows平台需要去掉sudo命令,然后my-upload-key.keystore、my-key-alias换成自己定义的名称,我设置的是test、a,即.keystore的文件名为test、图库名为a。

接下来,按照控制台提示输入密码与相关信息即可,最后问是否正确,输入【是】:
在这里插入图片描述
成功后会出现:

在这里插入图片描述
这里需要记一下上述的文件名、图库名与相关密码

  1. 将生成的.keystore文件移动到【android/app】目录下(直接拖拽过去)
    在这里插入图片描述
    在这里插入图片描述
  2. 打开 android/gradle.properties 文件,在后面加上:
      MYAPP_UPLOAD_STORE_FILE=test.keystore  --这里填生成的.keystore文件名
      MYAPP_UPLOAD_KEY_ALIAS=a               --这里填图库名
      MYAPP_UPLOAD_STORE_PASSWORD=12345678   --.keystore的密码         
      MYAPP_UPLOAD_KEY_PASSWORD=12345678     --图库的密码

在这里插入图片描述注意:我当前遇到一个问题,打包时,默认的ndk版本为27.1.12297006,ndk发布的官网上找不着,故而换了一个能找到的版本。在文件中添上声明:

	android.ndkVersion=27.3.13750724

同时在android/app/build.gradle中修改ndk的配置:

	    ndkVersion project.findProperty("android.ndkVersion") ?: rootProject.ext.ndkVersion

在这里插入图片描述

  1. 修改 android/app/build.gradle 中的声明配置
	release {
           if (project.hasProperty('MYAPP_UPLOAD_STORE_FILE')) {
               storeFile file(MYAPP_UPLOAD_STORE_FILE)
               storePassword MYAPP_UPLOAD_STORE_PASSWORD
               keyAlias MYAPP_UPLOAD_KEY_ALIAS
               keyPassword MYAPP_UPLOAD_KEY_PASSWORD
           }
       }
	signingConfig signingConfigs.release

在这里插入图片描述

  1. 生成应用包(.apk)
	cd android
    ./gradlew app:bundleRelease --按需生成.aab
    ./gradlew assembleRelease   --按需生成.apk

我这里选择生成apk(注:需要jdk 1.11,我用1.8就会报错)
在这里插入图片描述

文件路径在 android/app/build/outputs/apk\release
在这里插入图片描述

  1. 将apk文件拖拽到模拟器中安装,运行即可。到此,大功告成。恭喜你完成了安卓出包!
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值