原文:cordova打包之android应用签名

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/mate_ge/article/details/78913372

首先说一下应用签名的原因,在android系统里面,系统通过应用签名标识app,一个app有debug版本和release版本,签名打包的app就是release版本;在android系统中,不能存在两个相同appid的应用,意思差不多就是说不能存在两个相同包名的应用,但是debug版本是可以调试的,如果最终用户安装的是debug版本,其他人可以通过调试获取app的日志输出信息,极不安全,所以最终用户安装的必须是release版本,但是release版本与debug版本也是不能同时存在的,要安装其中一个必须把另一个卸载掉,不然装不上。

企业级应用开发的时候一般都会有开发环境,测试环境以及正式环境,为了能够使得三个应用都可以安装在同一台设备上,每个应用的appid都应该不一样,然后开发人员安装的是开发版的debug版本,需求以及测试人员使用的是开发版的release版本,然后客户使用的是测试版的release版本,然后最终用户使用的是正式版的release版本。

1、创建android应用签名文件(以下都是以MAC系统为例):

keytool -genkey -v -keystore XXX-release.keystore -alias YYY -keyalg RSA -validity 4000

(执行命令之后会提示你输入密码,设置一些公司名称之类的,密码要记住,其他随意)

XXX-release.keystore :签名文件的名称(左边一个空格)

YYY :签名文件的别名(左右一个空格)

4000:有效天数

(命令执行完之后,应该会在当前目录下创建一个名为XXX-release.keystore)

2、创建release-singing.properties文件,内容:

key.store=XXX-release.keystore

key.alias=YYY

key.store.password=你设置的密码

key.alias.password=你设置的密码

3、(mac系统用户关注)创建build-extras.gradle文件,内容:

android {

             lintOptions{ disable 'MissingTranslation', 'ExtraTranslation' }

}

4、创建完之后,将这三个文件拷贝到/项目根目录/platform/android目录下,执行

cordova build android –release

之后应该可以在

  /项目根目录/platform/android/build/outputs/apk/

    目录下找到android-release.apk文件,打包成功;

 

说一下其他无关的东西,通过命令

  

keytool -list -v -keystore ./xxx-release.keystore -storepass "你设置的密码"

可以查看release发布版本的信息,其中包括md5、SHA1等等字符串;

 

通过命令:

keytool -list -v -keystore ~/.android/debug.keystore -alias androiddebugkey -storepass android -keypass android

可以查看debug开发版的信息。在使用一些cordova插件比如百度地图、高德地图的时候,需要用到这种SHA1,注意的~/.android目录是mac下的,window用户请自行跑到C:\Users\[USERNAME]\.android这个目录下执行,执行这个命令好像要安装android studio,具体情况不太清楚,因为我的mac是有android studio,但是window没有,也没有在window上试过。

cordova打包之android应用签名的更多相关文章

  1. cordova 打包出错 Android SDK not found Android target: not installed

    原文:cordova 打包出错 Android SDK not found Android target: not installed 今天用cordova打包的时候报Android SDK not ...

  2. Ionic4 & Cordova 打包Android,含签名

    IOS打包必须在Mac环境,以下讲述安卓打包并签名的过程,若是不签名,那么APP不能在手机上安装. 1.添加对应的android框架 ionic cordova prepare android 1)修 ...

  3. Cordova 打包 Android release app 过程详解

    Cordova 打包 Android release app 过程详解 时间 -- :: SegmentFault 原文 https://segmentfault.com/a/119000000517 ...

  4. Ionic2 cordova angular2 打包到Android apk环境搭建

    一.前言 前段时间,公司有个APP项目需要支持不同平台,于是采用了Ionic2 + cordova + angular2,在搭建环境过程中遇到了不少问题,刚好最近有时间整理出来. 二.开发环境搭建 参 ...

  5. cordova+vue 项目打包成Android(apk)应用

    现在使用vue开发的项目越来越多,使用vue开发的移动端打包就成了最大的问题.现在前端打包方案有好多种,但是综合来说,我比较喜欢用cordova来进行Android和ios的打包,配置完成之后,每次只 ...

  6. ionic3 在windows环境下打包android 正式签名版APK

    生成签名文件keytool -genkey -alias demo.keystore -keyalg RSA -validity 40000 -keystore demo.keystore demo为 ...

  7. Cordova打包vue项目生成Apk (解决cordova build android抛出的zip问题)

    最近对vue前端框架情有独钟.但研究了一下怎么把vue项目打包成android apk来玩玩. 首先讲一下创建vue2.x项目.其实在之前的文章中都有写过,有兴趣的同学可以去看看.http://www ...

  8. cordova打包vue2(webpack)android、ios app

    使用cordova打包vue2(webpack)app for android ios1.vue项目通过vue-cli脚手架建立项目,使用webpack进行打包,下边是一整套命令. #npm 版本最好 ...

  9. Cordova 打包签名

    1.第一步 在项目根目录下运行命令cordova build --release android,会在testApp\platforms\android\build\outputs\apk目录下生成一 ...

随机推荐

  1. js课程 5-13 js事件绑定和鼠标事件注意事项有哪些

    js课程 5-13  js事件绑定和鼠标事件注意事项有哪些 一.总结 一句话总结:js代码的灵魂就是改变标签的属性和样式,就这两种. 1.js触发改的东西是哪两样? 属性和样式 2.js如何让页面用标 ...

  2. 使用MongoDb连接数据库服务器

    链接MongoDb数据库服务器的字符串格式: mongodb://[username:password@]host1[:port1][,host2[:port2],...[,hostN[:portN] ...

  3. [Nuxt] Update Vuex State with Mutations and MapMutations in Vue.js

    You commit changes to state in Vuex using defined mutations. You can easily access these state mutat ...

  4. 【Codeforces Round #185 (Div. 2) C】The Closest Pair

    [链接] 链接 [题意] 让你构造n个点,去hack一种求最近点对的算法. [题解] 让x相同. 那么那个剪枝就不会起作用了. [错的次数] 在这里输入错的次数 [反思] 在这里输入反思 [代码] # ...

  5. [AngularJS] Using an AngularJS directive to hide the keyboard on submit

    Pleasea refer to Link <form ng-submit="foo()" handle-phone-submit> <input type=&q ...

  6. 读取Webpage表中的内容 分类: H3_NUTCH 2015-02-10 14:59 418人阅读 评论(0) 收藏

    nutch将从网页中抓取到的信息放入hbase数据库中,默认情况下表名为$crawlId_webpage,但表中的内容以16进制进行表示,直接scan或者通过Java API进行读取均只能读取到16进 ...

  7. ios开发清除SDWebImage图片缓存

    一:一般在实际的项目应用中都会用到第三方框架SDWebImage去下载缓存图片,但在ios开发应用中,常常涉及对SDWebImage缓存图片的清除.本文所列出代码即是对SDWebImage缓存图片的清 ...

  8. [Angular] Pluck value from Observable

    export class MailFolderComponent implements OnInit{ title: Observable<string>; messages: Obser ...

  9. Mac下Android studio 之NDK配置教程(一)

    Mac下Android studio 之NDK配置教程(一) 1.概述 近期项目全线转移到Mac下使用使用Android studio开发. 遇到关键代码封装到 ***native***层,此时在wi ...

  10. VIM HML

    D:\skill\Apps\Vim\vim80\defaults.vim "set scrolloff=5 设置为默认值0即可