• 生成签名密钥
$ keytool -genkeypair -v -storetype PKCS12 -keystore my-release-key.keystore -alias my-key-alias -keyalg RSA -keysize 2048 -validity 10000

推荐使用androidStudio创建,方便快捷

  • 设置 gradle 变量

MYAPP_RELEASE_STORE_FILE=freeread.jks
MYAPP_RELEASE_KEY_ALIAS=huangxiaoguo
MYAPP_RELEASE_STORE_PASSWORD=123456%
MYAPP_RELEASE_KEY_PASSWORD=123456%
注意最好修改jvm内存,防止打包失败
org.gradle.jvmargs=-Xmx2048m -XX:MaxPermSize=512m -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8
# Project-wide Gradle settings.# IDE (e.g. Android Studio) users:
# Gradle settings configured through the IDE *will override*
# any settings specified in this file.# For more details on how to configure your build environment visit
# http://www.gradle.org/docs/current/userguide/build_environment.html# Specifies the JVM arguments used for the daemon process.
# The setting is particularly useful for tweaking memory settings.
# Default value: -Xmx1024m -XX:MaxPermSize=256m
org.gradle.jvmargs=-Xmx2048m -XX:MaxPermSize=512m -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8# When configured, Gradle will run in incubating parallel mode.
# This option should only be used with decoupled projects. More details, visit
# http://www.gradle.org/docs/current/userguide/multi_project_builds.html#sec:decoupled_projects
# org.gradle.parallel=true# AndroidX package structure to make it clearer which packages are bundled with the
# Android operating system, and which are packaged with your app's APK
# https://developer.android.com/topic/libraries/support-library/androidx-rn
android.useAndroidX=true
# Automatically convert third-party libraries to use AndroidX
android.enableJetifier=true# Version of flipper SDK to use with React Native
FLIPPER_VERSION=0.99.0MYAPP_RELEASE_STORE_FILE=freeread.jks
MYAPP_RELEASE_KEY_ALIAS=huangxiaoguo
MYAPP_RELEASE_STORE_PASSWORD=123456%
MYAPP_RELEASE_KEY_PASSWORD=123456%
  • 把签名配置加入到项目的 gradle 配置中

...
android {...defaultConfig { ... }signingConfigs {release {if (project.hasProperty('MYAPP_RELEASE_STORE_FILE')) {storeFile file(MYAPP_RELEASE_STORE_FILE)storePassword MYAPP_RELEASE_STORE_PASSWORDkeyAlias MYAPP_RELEASE_KEY_ALIASkeyPassword MYAPP_RELEASE_KEY_PASSWORD}}}buildTypes {release {...signingConfig signingConfigs.release}}
}
...
  • 针对不同的 CPU 架构生成 APK 以减小 APK 文件的大小

- def enableSeparateBuildPerCPUArchitecture = false- def enableSeparateBuildPerCPUArchitecture = true //修改
  • 打包
$ cd android
$ ./gradlew assembleRelease译注:
cd android表示进入 android 目录(如果你已经在 android 目录中了那就不用输入了)。
./gradlew assembleRelease在 macOS、Linux 或是 windows 的 PowerShell 环境中表示执行当前目录下的名为 gradlew 的脚本文件,且其运行参数为 assembleRelease,注意这个
./不可省略;而在 windows 的传统 CMD 命令行下则需要去掉
./。
  • 生成的 APK 文件位于android/app/build/outputs/apk/release/app-release.apk,

024.RN项目android打包相关推荐

  1. React Native项目自动化打包发布

    今天这篇文章的目的是在rn项目的构建,并不会涉及到rn框架或者使用的讲解,说起构建,特别是前端构建大家应该很快会想到webpack.Grunt. Gulp等.而这些工具在rn项目中就显得有些鸡肋.所以 ...

  2. android 打包版本号,Android打包版本号设置

    之前没有设置过打包的命名,每次打包都是默认的"app-realease.apk",之后手动修改名字来显示出它是一个新版本. 晚上学习了如何配置打包名称,很简单,修改build.gr ...

  3. rn项目 假如cocoapods_RN在mac os上面的项目创建以及Android/IOS模拟运行

    最近捯饬了RN. 第一步,创建项目 react-native init demo 第二步,如果遇到Installing required CocoaPods dependencies卡顿,停下当面执行 ...

  4. rn ios Android适配,RN离线打包ios和android

    首先我是用 react-native-cli 手脚架进行生成项目的并mpx进行生成项目,用的版本为0.62.2 前面新建项目的时候就不说了 1.ios打包: react-native bundle - ...

  5. Mac打包Android的apk,[Mac][React Native][Android] 打包成apk

    一旦把app写好之后,最后一个步骤就是打包成apk啰 文档中会提到keytool,gradlew assembleRelease. Android打包APK Android 把包成一个APK主要需要几 ...

  6. react native android 打包

    为什么80%的码农都做不了架构师?>>>    1.生成离线bundle包 开发中了会知道RN项目的资源文件js css 字体图标 image是不在android or ios文件里 ...

  7. RN学习笔记02:利用WebStorm创建RN项目

    RN学习笔记02:利用WebStorm创建RN项目 在RN学习笔记01里,安装了node.js与react-native-cli,而且配置了环境变量. 在命令行环境,利用react-native in ...

  8. 我的第一个 RN 项目-趣闻

    代码地址如下: http://www.demodashi.com/demo/13486.html 项目预览 IOS: Android: 扫描体验: 或者点我 整体功能跟之前小程序和 Android 项 ...

  9. ReactNative入门(一)——环境搭建及第一个RN项目—HelloWorld

    ReactNative入门--本篇以及接下来的几篇有关RN的文章,是默认你对前端相关知识如Node,React,以及原生移动端Android可以熟练使用的情况下(最起码达到了解会用的程度)为前提的!不 ...

  10. 关于Taro3.0如何使用React-Native的Pushy以及android打包

    本次问题点 关于Taro3.0如何Android打包? 如何使用pushy? Taro3.0如何Android打包? -将 Taro 代码编译成相应平台的 jsbundle 文件 taro build ...

最新文章

  1. Python参考书籍
  2. FastReport.Net使用:[36]续表
  3. java 7zip解压_Apache Commons Compress介绍-JAVA压缩解压7z文件
  4. win10内核linux,windows 10中发布完整的Linux内核
  5. MapReduce其他功能
  6. Java: IE Firefox下载文件中文乱码的兼容代码
  7. Rider找不到指定的 SDK Microsoft.NET.Sdk
  8. 数组转集合集合转数组 split方法
  9. 停车场管理系统 java_使用java编写一个停车场管理系统
  10. 20个令程序员泪流满面的瞬间
  11. BZOJ1079 [SCOI2008]着色方案 【dp记忆化搜索】
  12. c语言快速学习,怎么才能正确快速的学习c语言
  13. Origin怎么画圆形而非椭圆形?
  14. 访客定位系统,室内定位技术的应用
  15. hashMap1.7头插法及扩容
  16. 【mac】nvm 的安装和使用,解决mac重启node not found,每次都得source ~/.bash_profile
  17. 单元测试与E2E测试
  18. BannerStudio---2021年旗帜软件工作室年会总结
  19. 算法竞赛进阶指南——队列学习笔记
  20. 计算机网络虚电路数据报,虚电路服务和数据报服务

热门文章

  1. springcloudfeign Required request body is missing
  2. 怎么用真机测试android,andriod studio如何使用真机测试 andriod studio真机测试教程
  3. 陈式太极拳式名考释、动作、着法要领说明
  4. excel公式编辑器_用Excel制作 “抽奖”小软件,很简单!
  5. Replace Autoprefixer browsers option to Browserslist config,VUECLI3报错
  6. linux系统修改etc,Linux系统中修改/etc/profile文件的方法
  7. anconda各个版本下载
  8. 仿牛客网论坛项目资料整理
  9. 计算机使用的dns错误,dns错误,教您dns错误怎么修复
  10. MDCC 2014移动开发人员大会參会实录