expo 创建react native项目,如何打包apk

yarn global add eas-cli
expo login

eas build:configure
eas build --platform android

 https://expo.dev/accounts/xutongbao

 

 

 

aab包简介

Google Play商店从 2021 年 8 月起,新应用发布需要使用Android App Bundle 才能在 Google Play中发布。

Android App Bundle 是 Android 新推出的一种官方发布格式,即.aab格式,其中包含应用的所有经过编译的代码和资源,它会将 APK 生成及签名交由 Google Play 来完成。.aab格式可以更高效的开发和发布应用,以更小的应用提供优质的使用体验,从而提升安装成功率并减少卸载量,.aab格式还可以体验模块化应用开发和可自定义功能交付。

aab包对比apk包优势在于,Google Play 会使用 app bundle 针对每种设备配置生成并提供经过优化的 APK,因此只会下载特定设备所需的代码和资源来运行应用。而不必根据机型64位还是32位再构建、签署和管理多个 APK 来优化对不同设备的支持,用户也可以获得更小且更优化的下载文件包。

打包APK文件

eas build -p android --profile preview

https://docs.expo.dev/build-reference/apk/

 

 

 

 

 

打包时设置环境变量:

https://docs.expo.dev/build-reference/variables/

 

 

app.config.js:

export default {
  name: 'learn',
  version: '1.0.0',
  extra: {
    REACT_APP_MODE: 'prod',
    eas: {
      projectId: '6a51f2c5-40ab-4ef5-bbf8-530ea443696c',
    },
  },
  android: {
    package: 'com.yourcompany.learn',
    versionCode: 1,
  },
  ios: {
    bundleIdentifier: 'com.yourcompany.yourappname',
  },
}

eas.json:

{
  "cli": {
    "version": ">= 0.49.0"
  },
  "build": {
    "preview": {
      "android": {
        "buildType": "apk"
      },
      "env": {
        "REACT_APP_MODE": "prod"
      }
    },
    "preview2": {
      "android": {
        "gradleCommand": ":app:assembleRelease"
      }
    },
    "preview3": {
      "developmentClient": true
    },
    "production": {}
  },
  "submit": {
    "production": {}
  }
}

参考链接:

https://blog.csdn.net/xutongbao/article/details/124120043

https://docs.expo.dev/build/setup/

https://docs.expo.dev/build-reference/apk/

猜你喜欢

转载自blog.csdn.net/xutongbao/article/details/130789711