给你的程序签名
概述
注意事项:
所有提交到Market的程序必须经过签名。未经签名的程序不能安装。
你可以使用个人证书去签名程序,不一定要经证书机构授权。
用Debug版本证书签名的程序将不能发布。
在安装程序时会检测签名证书是否过期。如果程序在安装后证书过期,程序也能正常使用。
你可以使用keytool和Jarsigner产生密钥并签名你的程序。
l你的程序在签名后还需要使用zipalign去优化。
建议:
用同一密钥签名所有程序,以保证程序的无缝升级。
证书的有效期最好在25年以上。发布到Market的程序中证书有效期必须在2033年10月22日以后。
如何签名
除了下面提到的方法,还有一种利用GUI来编译的方法。
在Eclipse中Package Explorer里选择要编译的工程,File->Export, 打开Android文件夹,选择Export Android Application,一步一步完成向导即可。这样程序就会编译,签名,优化,可以直接发布到Market了。
获取合适的私有密钥
通过Keytool去产生私有密钥。Keytool在JDK/bin目录里(比如C:\Program Files\Java\jdk1.6.0_20\bin)。 Keytool参数
描述
-genkey
生成公钥和私钥
-v
输出详细信息
-keystore <keystore-name>.keystore
生成的keystore文件名
-alias <alias name>
此密钥的别名。只保留前8位字符
-keyalg <alg>
加密算法。支持DSA和RSA
-dname <name>
用于描述此密钥的创建者信息。如果没有提供,Jarsigner会提示你输入这些信息
-validity <valdays>
密钥有效期,按天数。最好>10000
例如:keytool -genkey -v -keystore my-release-key.keystore -alias alias_name -keyalg RSA -validity 10000
更多关于keytool的信息:http://java.sun.com/j2se/1.5.0/docs/tooldocs/#security
编译Release版本程序
在release状态下程序是未经签名的。在Eclipse中导出未经签名的release版本apk文件。在Package Explorer中找到要编译的工程,右击选择Android Tools->Export Unsigned Application Package
用私有密钥签名
通过Jarsigner来使用私有密钥签名。
例如:jarsigner -verbose -keystore my-release-key.keystore my_application.apk alias_name
验证已签名程序:jarsigner -verify my_signed.apk
优化APK文件
通过zipalign来优化apk文件。Zipalign可以在Andorid SDK/tools目录下找到。
例如:zipalign -v 4 your_project_name-unaligned.apk your_project_name.apk
your_project_name-unaligned.apk是输入,your_project_name.apk是输出。如果要覆盖已有文件,需要加上-f参数
添加版本信息
主要有两方面,一个是程序的版本号,另外一个是程序中要求的系统API版本号。二者都需要在AndroidManifest.xml中设定。
程序版本号
Android:versionCode: int类型,只能是整数。别的程序在调用时要用到,最终用户无法看到。
Android:versionName: 字符串类型。就是给最终用户看的。
程序要求的系统API版本号
Android:minSdkVersion: 要执行此程序需要的最低的系统API版本
Android:targetSdkVersion: 此程序设计时的目标系统API版本
Android:maxSdkVersion: 此程序设计时支持的最高的系统API版本
准备发布
发布前的检查列表:
在考虑发布程序之前
1. 在真实设备上进行完整的测试
2. 考虑在程序中添加最终用户许可协议
3. 在程序中添加图标和标题
4. 关闭并清理log和debug信息
在进行最后的编译之前
5. 添加版本号
6. 获取合适的密钥
7. 如果用到了Mapview元素,请注册Maps API key
在程序编译完成后
8. 对程序进行签名
9. 测试编译好的程序
发布程序到Android Market
1. 注册账号:http://market.android.com/publish
2. 在提交程序之前,必须确保程序符合Android Market 服务器的要求:
(1) 对程序签名的私有密钥有效期必须在2033年10月22日之后。
(2) 程序中必须设定了android:versionCode和android:versionName。前者用于程序的更新,后者会展示给最终用户。
(3) 在程序的manifest中必须定义了android:icon和android:label。
分享到:
相关推荐
2. **Google Play服务**:作为官方市场,Android Market(后更名为Google Play)不仅提供应用程序下载,还包含了一系列的服务,如应用更新、购买管理、评论与评分、开发者工具等。这个版本可能已经集成了支付功能,...
### Android Market及应用发布 #### 一、Android Market简介 Android Market,现在称为Google Play Store,是谷歌为Android操作系统提供的一款官方应用商店。它不仅包含了各种应用程序、游戏、电子书等资源,还...
对比苹果的App Store,Android Market在开放性上具有优势,开发者可以更容易地提交应用,且对设备的兼容性更强。然而,App Store在应用审核和质量控制上更为严格,这使得其应用品质相对较高。 **三、商业模式解读**...
【上传Android应用到Google Market步骤】 在Android平台上,开发者对Android Market(现称为Google Play)的支持至关重要,因为应用的数量和质量直接影响着平台的吸引力。为了让更多优质应用进入市场,谷歌为开发者...
随着移动互联网的发展,Android Market已经成为了一个不可或缺的应用生态组成部分,对推动移动应用产业发展起到了重要作用。 尽管Android Market已经随着谷歌play商店的崛起逐渐淡出历史舞台,但它曾经为Android...
"androidMarket01"项目就是这样一个实例,它展示了如何从零开始搭建一个小型的安卓市场框架。在这个项目中,我们将深入探讨以下几个关键知识点: 1. **基本架构设计**:在创建任何应用程序之前,首先要规划其架构。...
标题中的“Android Market API for PHP”指的是一个PHP库或服务,它允许开发者通过编程方式与Google Play(原Android Market)进行交互,获取有关应用商店中应用程序的信息,如排名、评分、评论等。这个API通常对...
Android Market并不仅仅是Google的一个应用程序商店。虽然应用程序也很重要,但是在谷歌的Android Market中,它们却仅仅是微不足道的变量。这一平台最大的特点就在于,所有的开发者注册后都可以上传内容,而所有上传...
Vending_2_2_11.apk文件很可能是该版本Market应用的内部名称,"Vending"是Android系统中用于处理应用安装和更新的组件,这个APK文件可能是实际安装到设备上的程序包。 总结来说,Android Market 2.2.11.apk代表了一...
NobileStyle电子市场,终生免费,永不收取任何...Nobilestyle旨在为全球用户提供多国语言的Android相关服务,包括:Android系统及其相关行业的最新动态,Adnroid第三方应用程序下载,关于Android系统的门户型网站等。
讲述如何在android market发布自己的应用程序
Android Market并不仅仅是Google的一个应用程序商店。虽然应用程序也很重要,但是在谷歌的Android Market中,它们却仅仅是微不足道的变量。这一平台最大的特点就在于,所有的开发者注册后都可以上传内容,而所有...
谷歌Android Market,现称为Google Play商店,是全球最大的Android应用分发平台,为数亿用户提供海量的应用程序、游戏、音乐、电影和其他数字内容。本文将深入探讨其五大核心优势,帮助用户更好地理解其价值和影响力...
在Android系统中,Google Market(现称为Google Play商店)是官方的应用程序分发平台,用户可以在这里下载各种应用程序、游戏、音乐、电影等。对于开发者和用户来说,它都是一个至关重要的组成部分。在本主题中,...
* 可以将应用程序发布到Google的Android Market上,以便更好地推广和销售 安装Eclipse和Android SDK: * 下载Android SDK并解压到硬盘上 * 下载并安装Eclipse JAVA集成开发环境包 * 运行Eclipse并选择Help->...
【Android Market及应用发布】是Android开发者关注的重要主题,它涉及到如何将开发完成的应用程序推向市场,让全球的用户能够下载和使用。Android Market,现在称为Google Play Store,是Google提供的官方应用程序...
在Android模拟器上访问Market(现在的Google Play商店)是一个对开发者和用户都很有用的功能,它允许你在电脑上测试和体验Android应用。以下是如何在Google Android模拟器中启用并访问Market的详细步骤: 1. **安装...