apk签名发布及其原理

如果我们在ADT中开发完了一个android项目,如何将它打包呢?方法如下:

1、unsigned APP(无签名的APP)

最懒惰的方法,可以直接在项目的bin目录下直接将apk拷贝出来,就ok了。

2、signed APP(唯一签名的APP)

有必要说一下为什么要使用签名的APP。试想你开发了一个名为robot.apk的项目,将它发布到了android应用商店供用户下载使用。第二天,一个你不认识的开发人员也开发了一个名为robot.apk的项目,将它发布到了应用商店。此时问题就出现了,因为你们的APP名称相同,所以他的APP将你发布的APP给覆盖掉了,从今以后用户在应用商店下载的名为robot的APP都不是你开发的,而是他后开发的那个。

所谓签名,就是给APP加了一个唯一的密码。这样的情况下,第二天那个人发布他的robot.apk的时候,应用商店发现当前已经有一个同名的apk存在,就要求他输入这个唯一的签名,只有输对了这个密码,才会让他继续发布这个APP并覆盖掉之前你发布的APP,否则,他只有将他的APP改名称再发布。签名保证了你的APP的安全性!

签名操作其实很简单,在ADT下选中需要打包的项目,右键-》Android Tools-》Export Signed APP-》跳出Project checks界面,确认要打包的项目,直接next-》跳出keystore selection界面(keystore其实是一个文件,是用来存放你的签名的,但这个文件也是加密的,保护你的签名不被别人看到),选择create new keystore,选择存放目录并输入密码对keystore加密,点击next-》key creation界面,这个就是为你的apk添加签名的界面了!!!输入你的Alias,password,valid years,以及其他信息,next-》设置apk存放目录-》finish,完成签名!

请大家多多指正!共同进步!!!

时间: 2024-10-23 06:50:21

apk签名发布及其原理的相关文章

Android 发布Apk签名

1.签名的意义 为了保证每个应用程序开发商合法ID,防止部分开放商可能通过使用相同的Package Name来混淆替换已经安装的程序,我们需要对我们发布的APK文件进行唯一签名,保证我们每次发布的版本的一致性(如自动更新不会因为版本不一致而无法安装). 2.签名的步骤 a.创建key b.使用步骤a中产生的key对apk签名 3.具体操作 方法一: 命令行下对apk签名(原理) 创建key,需要用到keytool.exe (位于jdk1.6.0_24\jre\bin目录下),使用产生的key对a

apk签名原理

apk签名原理 APK签名机制原理详解https://blog.csdn.net/zwjemperor/article/details/80877203 apk签名原理及实现https://blog.csdn.net/jcgu/article/details/12745363 Apk去掉签名以及重新签名的方法https://blog.csdn.net/s13383754499/article/details/84108475 原文地址:https://www.cnblogs.com/111tes

在eclipse中将android项目生成apk并且给apk签名

生成apk最懒惰的方法是:只要你运行过android项目,到工作目录的bin文件夹下就能找到与项目同名的apk文件,这种apk默认是已经使用debug用户签名的. 如果想要自己给apk签名: 1.签名的意义 为了保证每个应用程序开发商合法ID,防止部分开放商可能通过使用相同的Package Name来混淆替换已经安装的程序,我们需要对我们发布的APK文件进行唯一签名,保证我们每次发布的版本的一致性(如自动更新不会因为版本不一致而无法安装).2.签名的步骤 a.创建key b.使用步骤a中产生的k

【转】Android学习系列(1)--为App签名(为apk签名)

原文网址:http://www.cnblogs.com/qianxudetianxia/archive/2011/04/09/2010468.html Android学习系列(1)--为App签名(为apk签名) 写博客是一种快乐,前提是你有所写,与人分享,是另一种快乐,前提是你有舞台展示,博客园就是这样的舞台.这篇文章是android开发人员的必备知识,是我特别为大家整理和总结的,不求完美,但是有用. 1.签名的意义 为了保证每个应用程序开发商合法ID,防止部分开放商可能通过使用相同的Pack

Android APK 签名比对详解

发布过Android应用的朋友们应该都知道,Android APK的发布是需要签名的.签名机制在Android应用和框架中有着十分重要的作用. 例如,Android系统禁止更新安装签名不一致的APK:如果应用需要使用system权限,必须保证APK签名与Framework签名一致,等等.在<APK Crack>一文中,我们了解到,要破解一个APK,必然需要重新对APK进行签名.而这个签名,一般情况无法再与APK原先的签名保持一致.(除非APK原作者的私钥泄漏,那已经是另一个层次的软件安全问题了

Android APK 签名比对

发布过Android应用的朋友们应该都知道,Android APK的发布是需要签名的.签名机制在Android应用和框架中有着十分重要的作用. 例如,Android系统禁止更新安装签名不一致的APK:如果应用需要使用system权限,必须保证APK签名与Framework签名一致,等等.在<APK Crack>一文中,我们了解到,要破解一个APK,必然需要重新对APK进行签名.而这个签名,一般情况无法再与APK原先的签名保持一致.(除非APK原作者的私钥泄漏,那已经是另一个层次的软件安全问题了

Android学习系列(1)--为App签名(为apk签名)

写博客是一种快乐,前提是你有所写,与人分享,是另一种快乐,前提是你有舞台展示,博客园就是这样的舞台.这篇文章是android开发人员的必备知识,是我特别为大家整理和总结的,不求完美,但是有用. 1.签名的意义 为了保证每个应用程序开发商合法ID,防止部分开放商可能通过使用相同的Package Name来混淆替换已经安装的程序,我们需要对我们发布的APK文件进行唯一签名,保证我们每次发布的版本的一致性(如自动更新不会因为版本不一致而无法安装). 2.签名的步骤 a.创建key b.使用步骤a中产生

[转]通过apk签名使应用程序有系统权限

[转]通过apk签名使应用程序有系统权限 (2013-01-08 13:40:50) 转载▼ it 分类: Android 出处:http://blog.csdn.net/doom66151/article/details/7085464 问题: 系统预装软件,需要访问一些配置文件,配置文件的owner都是设置为system.所以应用程序需要有授权才可以读写. google搜索找到以下文章,解决了这个问题. 以下内容解释了: android系统权限规则? 如何使应用程序获取系统权限? apk签名

关于APK签名的一些东西

什么是APK 了解APK签名之前,首先要知道什么是apk文件:APK是AndroidPackage的缩写,即Android安装包(apk),APK文件其实就是zip格式的文件,只是后缀被改为了apk,所以用任何能解压zip的软件都可以直接把一个APK文件解压出来,解压出来的东西如图(已签名的APK): APK签名 APK签名的意义 安全,每个发布的Android应用在升级的时候都需要保证签名和包名必须相同,这样如果有人使用了不一致的签名或篡改了我们的发布的apk包,系统将拒绝进行升级 权限管理,