Android 数字签名
一个ApK如果要安装到手机上,必须要一个数字签名,不过你是debug也好,release也好,这个数字签名来源一个叫做证书的东西,在我们debug的时候,开发工具已经帮我们生成了一个叫做debug.keystore 的证书,默认在C:\Users\【user name】\.android之下,但是如果我们的apk要发布到应用市场上,那就得用release的证书了,这个时候我们就要去用我们自己的证书了。
在Android Studio下 建立证书的过程如下:
1. Build > Generate Signed APK. 指定一个你要为那个module生成证书,然后确定
2 如果你已经有证书了,直接选择一个就好了,如果没有就创建一个。 点击Create New
3 下面就是你new一个证书需要填写的信息:
key store path 指定存放的位置,并自己填写一个名字,password是key store的名字
Alias 名字唯一,这个才是最重要的,以为多一个项目可以指定到同一个key store这个文件中,但是每一个项目都有不同德key。 另外就是一些密码,有效期 其他的信息了,根据自己的情况随便填写


4。 填写以后点击OK,就又回到了点击create new的那个界面。 填上生成证书时所填的相应的密码,key生么的就可以了。

5 点击Next。选择release

6 点击Finish,ok。 Android studio会自动build出一个release版本。一般直接在你的项目路径下,debug版本在build的outputs 下。apk的签名就结束了
有时候 我们需要引用第三方的api的时候,通常会需要我们的包名 与fingerprint来生成一个i密钥,然后将这个密钥放在我们项目中,或者xml文件中,或者application中。包名好说,就是我们项目的包名,但是这个fingerprint呢?
fingerprint也分两种,一个是debug的一种是release的,这个fingerprint的来源也是上面所说的证书。得到这个fingerprint也不难
windows环境只要在dos下输入
keytool -list -v -keystore "%USERPROFILE%\.android\debug.keystore" -alias androiddebugkey -storepass android -keypass android 就可以得到证书指纹 SHA1: BE:F6:46:CA:05:E3:4C:CC:B1:51:50:AC:07:0C:48:55:99:5E:EC:3C SHA1后面的一大趟就是 release:
1 先列出你一个证书下的所有的key
keytool -list -keystore your_keystore_name
这里的 your_keystore_name 就是你证书的绝对路径 比如C:\Users\keystore\TestAndroid.jks 2 根据你列出的key 得到证书指纹
keytool -list -v -keystore your_keystore_name -alias your_alias_name 如果多人开发,总不能一人申请一个密钥吧,所以 可以把debug.keystore 复制一下覆盖你原来的keystore. 来自http://stackoverflow.com/questions/4361942/one-google-maps-key-for-multiple-developers-android-eclipse-custom-keystore
来源于 https://developer.android.com/studio/publish/app-signing.html#sign-auto
https://developers.google.com/maps/documentation/android-api/signup
Android 数字签名的更多相关文章
- Android数字签名
描述你对Android数字签名的理解? 数字签名就是为程序打上一个标记来作为自己的标识,是Android系统要求的,若一个Android程序没有经过数字签名,没办法安装到系统: 签名也是对apk的一种 ...
- Android 数字签名学习笔记
Android 数字签名学习笔记 在Android系统中,所有安装到系统的应用程序都必有一个数字证书,此数字证书用于标识应用程序的作者和在应用程序之间建立信任关系,如果一个permission的pro ...
- Android数字签名解析(三)
在刚才開始学习android数字签名的相关知识点的时候,被资料中出现的keystore.x509.密钥对.debug.keystore弄的晕头 转向.经过一段时间的了解,总算明确一些. 一.make_ ...
- Android数字签名解析(二)
在Android数字签名解析(一)中,介绍了android进行签名的两种方式,当中用密钥对进行签名用到了signapk.jar这个java库. 以下我们就看看signapk签名实现过程,signapk ...
- Android Application Digital Signatures - Android 数字签名
Android 数字签名 同一个开发人员的多个程序尽可能使用同一个数字证书,这能够带来下面优点. (1)有利于程序升级,当新版程序和旧版程序的数字证书同样时,Android系统才会觉得这两个程序是同一 ...
- Android数字签名解析(一)
一.数字签名概述 所谓"数字签名"就是通过某种password运算生成一系列符号及代码组成电子password进行签名,来取代书写签名或印章. 数字签名有两种功效:一是能确定消息 ...
- Android数字签名的学习(转)
转载地址:http://www.cnblogs.com/feisky/archive/2010/01/17/1650076.html 在Android系统中,所有安装到系统的应用程序都必有一个数字证书 ...
- Android签名总结
signapk.jar与eclipse export插件默认赋予程序一个DEBUG权限的签名 signapk.jar包含有系统权限(system api, permission),而eclipse e ...
- 安卓Android面试题大全
56个问题都是经常用到的,可以深入研究下,也是必须掌握的开发必备知识. 安卓Android面试题汇总 搜集了一些Android面试题目,供将要面试或者正在面试的朋友参考. 1, 谈谈你对Activit ...
随机推荐
- 谈c++ pb_ds库(二) 红黑树大法好
厉害了,没想到翻翻pb_ds库看到这么多好东西,封装好的.现成的splay.红黑树.avl... 即使不能在考场上使用也可以用来对拍哦 声明/头文件 #include <ext/pb_ds/tr ...
- redis3.0常用命令
1.服务器启动 1)快捷启动 $redis-server 2)指定配置文件启动 $redis-server redis.conf 2.客服端启动 1)快捷无密码启动 $redis-cli 2)有密码和 ...
- CSS3常用属性(边框、背景、文本效果、2D转换、3D转换、过渡、有过渡效果大图轮播、动画)
CSS3边框: 1.CSS3圆角:border-radius 属性--创建边框线的圆角 <body style="font-size:24px; color:#60F;"& ...
- python基础-面向对象进阶
一.什么是反射 反射的概念是由Smith在1982年首次提出的,主要是指程序可以访问.检测和修改它本身状态或行为的一种能力(自省).这一概念的提出很快引发了计算机科学领域关于应用反射性的研究.它首先被 ...
- C#中两个Form窗口之间的传值(父->子)(子->父)
//首先定义两个Form,一个为Form1,一个为Form2,其中Form1作为父窗口,Form2作为子窗口 //1.父窗口传值给子窗口 //Form1中代码: public Form1() { In ...
- caffe代码调试小结
RELULayer层 bottom[0]->count=n*c*w*h=50*96*56*56 count=50*96*56*56,根据bottom_data[i]访问所有的数据(多维数组都是一 ...
- win7下安装mysql后修改密码
mysql的安装教程网上很多,此处不过多介绍,个人觉得下面这篇教程是比较好的,一步到位.MySQL 5.7.9 ZIP 免安装版本配置过程_百度经验 http://jingyan.baidu.com ...
- 【BZOJ-1146】网络管理Network DFS序 + 带修主席树
1146: [CTSC2008]网络管理Network Time Limit: 50 Sec Memory Limit: 162 MBSubmit: 3495 Solved: 1032[Submi ...
- C#的接口
什么是接口?其实,接口简单理解就是一种约定,使得实现接口的类或结构在形式上保持一致.个人觉得,使用接口可以使程序更加清晰和条理化,这就是接口的好处,但并不是所有的编程语言都支持接口,C#是支持接口的. ...
- Beta阶段项目展示
1.团队简介 韩青长 前端工程师 我是韩青长,技术小白,抱着对软工的好奇和对未来工作的憧憬选了这门课.暂时选择了测试的工作,也对开发和UI有一定兴趣.从前上帝创造了我们,现在轮到我们来创造自己的软件了 ...