Windows下Android打包教程:将Android 源码打包成.APK可执行文件

标签: 高级测试  测试基础部分  手机专项测试

最基出的环境:

           Node.js,Android SDK ,Java JDK(1.8)

          nodejs安装包中文下载地址:http://nodejs.cn/download/

          Android SDK下载地址:https://www.androiddevtools.cn/

          Java JDK下载地址:

打包环境搭建:

1.首先安装Java JDK,配置Java JDK环境变量。

      为什么安装java:android sdk是依赖java的,只有安装了java环境,才能保证android sdk的正常运行

2.安装Android SDK,配置Android SDK的环境变量。

         

3.安装Node.js,Node.js在安装时,自动配置好环境变量,但是存在没有配置的情况,需要自己确认一下。

         例如:这是我自己电脑上的配置环境,环境变量path下必须有java,node.js,Android的环境变量,为了防止环境变量路径输入错误,需要进入到cmd中查看,不要嫌弃繁琐,认为确认是没有必要的,但是请明白,环境如果搭建不好,一切都是镜花水月。(现身说法:刚开始学习java的时候,那时候使用的windo 7系统,配置环境变量时,拉掉了一个;导致最基出的HelloWorld都实现不了。)

基础环境已经搭建好。你认为这样就结束了吗,然而并没有,

下面是硬菜了:

说明:打包分为两种,第一张秘钥打包,另外一种非秘钥打包,本次介绍的是秘钥打包,其实秘钥打包和非秘钥打包基本上相似,知识秘钥打包多了几个小步骤而已。

1.没有秘钥生成秘钥,若是已经有秘钥,则将秘钥放在android\app目录下。

生成秘钥的命令:

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

解释秘钥生成命令:

            1.在 Windows ,keytool命令在Java JDK 的 bin 目录中。

            2.alias后面跟着的是秘钥的别名,my-key-alias,可以是任意字符,只要不提示错误即可。因一个证书库中可以存放多个证书,通过别名标识证书

            3.keyalg后跟的是加密的算法:RSA ,秘钥算法有三种:RSA、DSA、EC

            4.keysize 后跟的是**长度,2048。(keyalg要注意与keysize 相对应)

                     RSA、DSA、EC    分别对应  2048、1024、256

           5.validity :证书保质期,在多少天内有效

2.设置gradle环境:

         将生成的秘钥放置到android\app目录下,之后修改android/gradle.properties文件。 

MYAPP_RELEASE_STORE_FILE=my-release-key.keystore
MYAPP_RELEASE_KEY_ALIAS=my-key-alias
MYAPP_RELEASE_STORE_PASSWORD=*****
MYAPP_RELEASE_KEY_PASSWORD=*****

3.将签名配置加到gradle配置中。

android/app/build.gradle中添加。

android {
    ...
    defaultConfig { ... }
    signingConfigs {
        release {
            if (project.hasProperty('MYAPP_RELEASE_STORE_FILE')) {
                storeFile file(MYAPP_RELEASE_STORE_FILE)
                storePassword MYAPP_RELEASE_STORE_PASSWORD
                keyAlias MYAPP_RELEASE_KEY_ALIAS
                keyPassword MYAPP_RELEASE_KEY_PASSWORD
            }
        }
    }
    buildTypes {
        release {
            ...
            signingConfig signingConfigs.release
        }
    }
}

4.生成apk包。

进入android目录下,执行:

gradlew assembleRelease

成功后就可以在目录android/app/build/outputs/apk/release/下找到app-release.apk包了。

版权声明:本文为pingsha_luoyan原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/pingsha_luoyan/article/details/104051411

智能推荐

Thread.join()方法的使用

如果一个线程A执行了thread.join()语句,代表当前线程A等待thread线程终止后才从thread.join()方法返回 并且这个方法具有超时特性,可以添加参数设置 输出结果: jdk中Thread.join()方法的源码(进行了部门调整)   每个线程终止的条件是前驱线程的终止,每个线程等待前驱线程终止后,才从join()方法返回,  当线程终止时,会调用自身的no...

linux服务器部署jenkins笔记

安装jenkins参考文档:https://blog.csdn.net/tomatocc/article/details/83930714 1. 打开jenkins官网:https://jenkins.io/download/ 将war包下载到本地 **ps:**这里要注意的是要下载左边下方的war包,不要下载右边下面的war包。左边是稳定版本,右边是最新版本,建议大家使用稳定版本(我刚开始下载的...

k8s部署elasticsearch集群

百度营销大学     环境准备 我们使用的k8s和ceph环境见: https://blog.51cto.com/leejia/2495558 https://blog.51cto.com/leejia/2499684 ECK简介 Elastic Cloud on Kubernetes,这是一款基于 Kubernetes Operator 模式的新型编排产品,用户可使用该产品在...

saas-export项目-AdminLTE介绍与入门

AdminLTE介绍 (1)AdminLTE是什么? AdminLTE是一款建立在bootstrap和jquery之上的开源的模板主题工具 (2)AdminLTE有什么特点? 提供一系列响应的、可重复使用的组件, 并内置了多个模板页面 自适应多种屏幕分辨率,兼容PC和移动端 快速的创建一个响应式的Html5网站 AdminLTE 不但美观, 而且可以免去写很大CSS与JS的工作量 AdminLTE...

MyBatis中ResultMap结果集映射

用于解决属性名和字段名不一致的情况: resultMap 元素是 MyBatis 中最重要最强大的元素。...

猜你喜欢

编写一个shell

编写shell的过程: 1.从标准输入中读入一个字符串。 2.解析字符串 3.创建一个子进程的执行程序。 4.子进程程序替换。 5.父进程等待子进程退出。...

WEB自动化测试中Xpath定位方法

前言: Xpath是在XML文档中查找信息的一种语言,使用路径表达式来选取XML文档中的节点或节点集,由于XML与HTML结构类似(前者用于传输数据,后者用于显示数据),所以Xpath也常用于查找HTML文档中的节点或节点集。 一  路径表达式: 路径以“/”开始     表示找到满足该绝对路径的元素; 路径以//”开始  ...

力扣困难难度 第4题 寻找两个正序数组的中位数

先看一眼题 我的思路: 设置下标i,j分别用于遍历两个数组,初始值均为0,直到找到两个数组中从小到大的第第length/2个数为止结束循环,length为两个数组长度之和。 ·每次比较nums[i]nums[j],如果前者小则i++,否则j++ ·循环结束时,如果count已经达到length/2,则说明已经找到了中位数,[注意:此时有可能正好其中一个数组遍历完了!所以...

[国家集训队]小Z的袜子(莫队)

[国家集训队]小Z的袜子 题目描述 作为一个生活散漫的人,小Z每天早上都要耗费很久从一堆五颜六色的袜子中找出一双来穿。终于有一天,小Z再也无法忍受这恼人的找袜子过程,于是他决定听天由命…… 具体来说,小Z把这NN只袜子从1到NN编号,然后从编号LL到RR(LL 尽管小Z并不在意两只袜子是不是完整的一双,甚至不在意两只袜子是否一左一右,他却很在意袜子的颜色,毕竟穿两只不同...

服务器配置(五) 服务器使用tomcat配置https全过程

一.了解服务器配置https协议 HTTPS,是以安全为目标的HTTP通道,简单讲是HTTP的安全版。即HTTP下加入SSL层,HTTPS的安全基础是SSL,因此加密的详细内容就需要SSL。 配置HTTPS就需要证书,证书通过权威的CA机构付费获得的证书才能被互联网承认,我们将其放在服务器上面,配置好后,就可以进行https通信了。 通过https访问的网站,在地址前可以看到安全两个字,点击可以查...