最近研究安卓方面的打包,因为是React Native,不能使用Android studio打包。找了半天资料,发现没有一个全面的。下面,我来讲解自己下打包时自己遇到的各种坑。

1.首先,需要在项目顶级文件夹下找到 local.properties 文件,在里面指定使用的skd ,ndk。

         ndk.dir= C:\\AndroidNdk

         sdk.dir= C:\\AndroidSdk

Ndk官方下载链接:https://developer.android.google.cn/ndk/downloads/index.html

Sdk: 下载  SDK Manager软件,下载对应的sdk

这里面我踩到的一个坑就是下载的NDK或者SDK都不可以下载到,包含空格特殊字符组成的文件夹下。

2.第二点,因为是React Native Android ,需要引入React。在项目顶级文件夹下找到build.gradle文件,在里面用maven指定react目录。(react插件是用npm安装,具体步骤,不详细叙说)

    maven { url "Q:/es-android-4.2.9/node_modules/react-native/android" }

注意:这是我的项目目录地址。

3.在项目打包中需要配置签名,在项目的build.gradle 文件中。在signingCongfigs中书写配置,key的文件位置(storeFile file),密码(storePassword),别名(keyAlias),别名密码(keyPassword )。

4.生成jks文件,这个方面网上教程好坑的。没有一个写的特别详细,对于,刚入门的小白太痛苦。下面我来详细述说

keytool -genkeypair -alias icesslkey -keyalg RSA -validity 3650 -keystore icekeystore.jks

keytool -genkeypair(生成key命令)

-alias icesslkey(icesslkey是我们第3步中取的别名)

-keyalg RSA(RSA是非对称密钥算法,也可以改为keytool支持的其他密钥算法)

-vlidity 3650(3650是证书有效期)

-keystroe  icekeystore.jks( icekeystore.jks是生成的keystore名称)

该命令后,会提示输入各种信息(都是中文提示,自己输入就好)

5.将第4步生成的文件放置到,第三步配置的文件位置中。

6.在项目顶级目录下,使用命令打包。

gradle assembleDebug

gradle assembleRelease

如有不懂,请在评论区留言。

最全的命令行(gradle)打包安卓apk的更多相关文章

  1. [编译] 7、在Linux下搭建安卓APP的开发烧写环境(makefile版-gradle版)—— 在Linux上用命令行+VIM开发安卓APP

    April 18, 2020 6:54 AM - BEAUTIFULZZZZ 目录 0 前言 1 gradle 安装配置 1.1 卸载系统默认装的gradle 1.2 下载对应版本的二进制文件 1.3 ...

  2. 使用命令行编译打包运行自己的MapReduce程序 Hadoop2.6.0

    使用命令行编译打包运行自己的MapReduce程序 Hadoop2.6.0 网上的 MapReduce WordCount 教程对于如何编译 WordCount.java 几乎是一笔带过… 而有写到的 ...

  3. iOS 用命令行进行打包

    通过命令行编译打包 第一步,打开终端,输入: cd 把项目文件拖到这里(注意:cd后面要有空格,然后再把项目文件拖进来) 回车 第二步,clean工程(默认release版本),在终端输入: xcod ...

  4. 使用ionic与cordova(phonegap)进行轻量级app开发前的环境配置与打包安卓apk过程记录

     前言 有人说:"如果你恨一个人,就让ta去接触cordova(phonegap)",这是因为这里面的水很深,坑很多,真让人不是一般地发狂.或许有幸运的人儿基本顺顺利利就配置完环境 ...

  5. UNITY 打包安卓APK

    1,安装JDK.这个直接下就行了. 2,安装android sdk相关.这个比较蛋疼,官网是被墙的.有些网站的包还是需要访问墙外下载的.关键是找对那个能用的包(对我来说就是不FQ). http://p ...

  6. IONIC 打包安卓apk详细过程

    参照以下链接: https://blog.csdn.net/qq_20264891/article/details/79319408 当 cordova 项目安装的 android 平台版本 与 系统 ...

  7. SDK,JDk,Unity打包安卓apk

    SDK:软件开发工具包(缩写:SDK.外语全称:Software Development Kit)一般都是一些软件工程师为特定的软件包.软件框架.硬件平台.操作系统等建立应用软件时的开发工具的集合. ...

  8. [编译] 5、在Linux下搭建安卓APP的开发烧写环境(makefile版)—— 在Linux上用命令行+VIM开发安卓APP

    星期三, 19. 九月 2018 02:19上午 - BEAUTIFULZZZZ 0)前言 本文不讨论用IDE和文本编辑器开发的优劣,是基于以下两点考虑去尝试用命令行编译安卓APP的: 了解安卓APP ...

  9. 基于命令行编译打包phonegap for android应用 分类: Android Phonegap 2015-05-10 10:33 73人阅读 评论(0) 收藏

    也许你习惯了使用Eclipse编译和打包Android应用.不过,对于使用html5+js开发的phonegap应用,本文建议你抛弃Eclipse,改为使用命令行模式,绝对的快速和方便. 一直以来,E ...

  10. VS使用WinRAR软件以命令行方式打包软件至一个exe

    由于项目需要,需要将一个绿色版软件(即无需在C盘写入文件)发给客户使用,要求是只有一个exe文件,双击即可执行.​ 网上说WinRAR软件创建自解压文件可以实现,链接http://blog.csdn. ...

随机推荐

  1. oracle-获取数据库中所有表的注释 comments

    公司dba提供的脚本: set serveroutput on set feedback off spool /tmp/getcomments.out select 'comment on table ...

  2. temp-mootools简单语法

    // mootools // auditFlag = $(this).getElement('>td input[id="auditFlag"]').val() // .ge ...

  3. 纯CSS写正方形自适应宽高,且左侧高与正方形高保持一致

    先上图 虽然写法有点暴力,但是效果还是可以的,哈哈哈哈哈html:<div class="box">            <div class="le ...

  4. java 面向对象 2

    一.JAVA类的定义 JAVA里面有class关键字定义一个类,后面加上自定义的类名即可.如这里定义的person类,使用class person定义了一个person类,然后在person这个类的类 ...

  5. 记录各种IE兼容问题,IE6,IE7,IE8,IE9,IE10

     记录遇到的IE BUG:  1.IE8开发者工具打不开 解决办法:IE8新增了开发人员工具,非常不错,比早期的DevToolbar好用多了.不过在我的Win7下 使用的时候偶尔会出现一个莫名其妙的问 ...

  6. Linux 启动详解之init

    1.init初探 init是Linux系统操作中不可缺少的程序之一.init进程,它是一个由内核启动的用户级进程,然后由它来启动后面的任务,包括多用户环境,网络等. 内核会在过去曾使用过init的几个 ...

  7. VC维含义的个人理解

    有关于VC维可以在很多机器学习的理论中见到,它是一个重要的概念.在读<神经网络原理>的时候对一个实例不是很明白,通过这段时间观看斯坦福的机器学习公开课及相关补充材料,又参考了一些网络上的资 ...

  8. Bayesian CTR Prediction for Bing

    Microsoft published a paper in ICML 2009 named ‘Web-Scale Bayesian Click-Through Rate Prediction for ...

  9. Select的option事件问题

    一开始看你们会觉得没问题,我也就是觉得没问题所以才找不到错误所在. 问题出在option本身是没有事件的说法的,只能在select里添加事件,再获取option的属性值 这是我的写法 select设置 ...

  10. Python统计列表中的重复项出现的次数的方法

    本文实例展示了Python统计列表中的重复项出现的次数的方法,是一个很实用的功能,适合Python初学者学习借鉴.具体方法如下:对一个列表,比如[1,2,2,2,2,3,3,3,4,4,4,4],现在 ...