react native 生成APK

参考地址:React native Android 命令 打包apk

首先:尝试使用模拟器测试

这里是因为需要确认目前在电脑上的模拟器是可以正常运行的,并且,开发React native的应用程序,肯定是需要做一些本地测试的

第一:生成签名密钥

这一步的操作主要是生成需要的签名密钥,供android调用,生成的文件待用

在项目根目录运行以下命令,输入的密码是比较简单的1234567890

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

第二:设置gradle

分两步:

第一步:配置全局的gradle变量

打开C:\Users\chenwes\应该是可以看到一个文件夹.gradle,打开后,应该也有一个文件gradle.properties,如果不存在该文件,可以手动创建,并在该文件中输入以下内容

TEST_RELEASE_STORE_FILE=my-release-key.keystore
TEST_RELEASE_KEY_ALIAS=my-key-alias
TEST_RELEASE_STORE_PASSWORD=1234567890
TEST_RELEASE_KEY_PASSWORD=1234567890

第二步:给项目添加签名

将刚才生成的签名文件my-release-key.keystore复制至react native项目中的android\app文件夹中

并手动编辑android\app文件夹下的build.gradle文件,

...
android {
    ...
    defaultConfig { ... }
    signingConfigs {
        release {
            storeFile file (TEST_RELEASE_STORE_FILE)
            storePassword TEST_RELEASE_STORE_PASSWORD
            keyAlias TEST_RELEASE_KEY_ALIAS
            keyPassword TEST_RELEASE_KEY_PASSWORD
        }
    }
    buildTypes {
        release {
            ...
            signingConfig signingConfigs.release
        }
    }
}
...

以下是我本地修改过的build.gradle的文件

第三步:生成APK

第一次没有成功,

在项目的根目录,运行命令

cd android #如果你已经在anroid目录,则不需要该命令

gradlew assembleRelease 

以下这种方法适合对于,在项目的android/app下有一个react.gradle文件的情况,但我的没有,马上进行第二次尝试

第二次尝试:

因为在我的电脑中,在项目的android/app下没有react.gradle文件,需要按以下流程来处理

  1:到D:\test\TestAndroidApk\android\app\src\main,创建一个assets的空文件夹

  2:打开命令窗口,定位到项目的根目录,运行命令,运行完成后,应该可以在项目目录下的D:\test\TestAndroidApk\android\app\src\main\assets看到两个文件,即index.bundle和index.bundle.meta两个文件,生成的这两个文件,会打包至APK中。

react-native bundle --platform android --dev false --entry-file index.js \ --bundle-output android/app/src/main/assets/index.bundle \ --assets-dest android/app/src/main/res/#这里注意一下参数--entry-file index.js 因为React Native以前的版本会生成两个文件,现在的版本0.52.0已经变成只有一个文件,这里需要注意,参考别人的文章时需要注意。

  3:命令窗口进入至android目录,运行命令

gradlew assembleRelease

  4:最后需要清理,运行命令

gradlew clen



在生成APK时,如果遇到错误,不要慌,先仔细对一下各项参数是否都可以对应到

1:在生成签名文件时,四个参数是否与C:\Users\chenwes\.gradle文件夹中的gradle.properties设置的四个参数是不是一致。

2:C:\Users\chenwes\.gradle文件夹中的gradle.properties设置的四个参数要与 D:\test\TestAndroidApk\android\app文件夹中的build.gradle中的signingConfigs  =》 release节点中的一致(gradle.properties设置的真实的值,且是全局的,build.gradle的是一个引用值)

3:D:\test\TestAndroidApk\android\app文件夹中的build.gradle中的buildTypes =》 release是不是加入了signingConfig signingConfigs.release

原文地址:https://www.cnblogs.com/weschen/p/8358952.html

时间: 2024-09-30 21:33:35

react native 生成APK的相关文章

React Native Build Apk

1 React Native安卓项目打包APK 1.1 产生签名的key 先通过keytool生成key 1 keytool -genkey -v -keystore demo-release-key.keystore -alias my-key-alias -keyalg RSA -keysize 2048 -validity 20000 将生成的key启动到项目android/app目录下面 1 mv demo-release-key.keystore android/app/ 1.2 修改

Android React Native在Android Studio中执行bundleReleaseJsAndAssets 打包失败的解决方法

这个坑在文章记一次在Windows上搭建React Native Android环境踩过的坑中我已经提到过,当时找不到解决方法,只能开一个命令提示符终端独立执行打包.就像这样子 react-native bundle --platform android --dev false --entry-file index.android.js --bundle-output C:\Users\Administrator\Desktop\AwesomeProject\android\app\build\

【React Native开发】React Native进行签名打包成Apk

转载请标明出处: http://blog.csdn.net/developer_jiangqq/article/details/50525976 本文出自:[江清清的博客] (一)前言 [好消息]个人网站已经上线运行,后面博客以及技术干货等精彩文章会同步更新,请大家关注收藏:http://www.lcode.org 前几节课程我们对于React Native的一些基础配置,开发工具以及调试,Android项目移植做了相关讲解,今天一起来学习一下另外一个比较重要的知识点,就是React Nativ

[RN] React Native 打包时 减少 Apk 的大小

React Native 打包时 减少 Apk 的大小 主要有两个方法: 在打包前设置 android\app\build.gradle 文件中 1) def enableProguardInReleaseBuilds = true 经测试,大概能减少 1M 之内的大小 2) def enableSeparateBuildPerCPUArchitecture = true 这个测试后就牛了,打包后的文件为大概 7~8M左右 不过需要注意的是,这里会分成多个平台 命名来分别拆分输出 就是了! 但挺

React Native Android Gradle 编译流程浅析

[工匠若水 http://blog.csdn.net/yanbober 未经允许严禁转载,请尊重作者劳动成果.私信联系我] 1 背景 前面已经发车了一篇<React Native Android 从学车到补胎和成功发车经历>,接着就该好好琢磨一下 React Native 周边了,没看第一篇的可以先去看看:这里我们先从 React Native 的 Android 编译来简单揭晓一下 React Native 在集成的过程中到底干了哪些不可告人的坏事:由于我们项目准备以 Gradle 形式接入

记一次在Windows上搭建React Native Android环境踩过的坑

要说最近技术圈什么比较活跃,我想除了动态加载框架和热修复技术之外,非Facebook的React Native莫属了吧,其实RN对IOS的支持比较早,但是Android似乎难产了,直到9月份才刚开源.距离RN开源也有一段时间了,一直没有去学习,今天兴趣来潮,索性学一把吧. 本文假设你的Windows上安装了Android SDK,并配置好了环境变量. 安装Node.js 从官网https://nodejs.org/en/下载Node.js的windows版,也不知道为什么版本迭代这么快,之前安装

ReactJs和React Native的那些事

介绍 1,React Js的目的 是为了使前端的V层更具组件化,能更好的复用,它能够使用简单的html标签创建更多的自定义组件标签,内部绑定事件,同时可以让你从操作dom中解脱出来,只需要操作数据就会改变相应的dom. 2,React Native的目的 是希望我们能够使用前端的技术栈就可以创建出能够在不同平台运行的一个框架.可以创建出在移动端运行的app,但是性能可能比原声app差一点. 3,ReactJs和React Native的原理是相同的,都是由js实现的虚拟dom来驱动界面view层

react native 安卓APP打包

1,生成一个签名密钥 方法1: [java] view plain copy keytool -genkey -v -keystore my-release-key.keystore -alias my-key-alias -keyalg RSA -keysize 2048 -validity 10000 方法2: 首先打开AndroidStudio菜单选择build->Generate Signed APK 在打开的界面点击Next,会弹出下面的界面 然后点击create new在弹出的界面中

React Native嵌入Android原生应用中

开发环境准备 首先你要搭建好React Native for Android开发环境, 没有搭建好的可以参考:React Native for Android Windows环境搭建 用Android Studio新建Android原生项目 我创建了一个名叫ReactNativeDemo的原生项目. 把React Native集成到原生项目当中 利用Windows命令行在项目根目录(ReactNativeDemo文件夹)下执行下面三行命令: npm init npm install –save