`
cndemoz
  • 浏览: 8654 次
最近访客 更多访客>>
社区版块
存档分类
最新评论

android应用从零开始到发布

阅读更多

android应用从零开始到发布要经历几个过程:

1.搭建android开发环境。

2.开发应用(中间很多步省略)。

3.发布。

1步我们这里不谈,可以到我的博客里面找找,2步的话这里也说不清楚,我们主要谈谈第三步,怎么发布我们的应用。

假设程序开发好了,只等发布了,你还要做几件事:

1.准备好程序的截图:

截图可以使用豌豆夹,或者直接使用eclipse截图,在androd市场只能上传两张图片,所以一定要选择两张有代表性的,可以吸引用户的图片,android市场只接受320*480和480*854像素的图片。

2.写好程序简介:

android市场最多只许325个字符,所以在写简介的时候要字字斟酌,最好在后面加上你应用的网址,有更加详细的介绍。

3.做数字签名导出程序:

做数字签名是这篇文章主要介绍的,在Android系统中,所有安装到系统的应用程序都必有一个数字证书,此数字证书用于标识应用程序的作者和在应用程序之间建立信任关系,如果一个permission的protectionLevel为signature,那么就只有那些跟该permission所在的程序拥有同一个数字证书的应用程序才能取得该权限。Android使用Java的数字证书相关的机制来给apk加盖数字证书,要理解android的数字证书,需要先了解以下数字证书的概念和java的数字证书机制。Android系统要求每一个安装进系统的应用程序都是经过数字证书签名的,数字证书的私钥则保存在程序开发者的手中。Android将数字证书用来标识应用程序的作者和在应用程序之间建立信任关系,不是用来决定最终用户可以安装哪些应用程序。这个数字证书并不需要权威的数字证书签名机构认证,它只是用来让应用程序包自我认证的。

同一个开发者的多个程序尽可能使用同一个数字证书,这可以带来以下好处。

(1)有利于程序升级,当新版程序和旧版程序的数字证书相同时,Android系统才会认为这两个程序是同一个程序的不同版本。如果新版程序和旧版程序的数字证书不相同,则Android系统认为他们是不同的程序,并产生冲突,会要求新程序更改包名。

(2)有利于程序的模块化设计和开发。Android系统允许拥有同一个数字签名的程序运行在一个进程中,Android程序会将他们视为同一个程序。所以开发者可以将自己的程序分模块开发,而用户只需要在需要的时候下载适当的模块。

(3)可以通过权限(permission)的方式在多个程序间共享数据和代码。Android提供了基于数字证书的权限赋予机制,应用程序可以和其他的程序共享概功能或者数据给那那些与自己拥有相同数字证书的程序。如果某个权限(permission)的protectionLevel是signature,则这个权限就只能授予那些跟该权限所在的包拥有同一个数字证书的程序。

在签名时,需要考虑数字证书的有效期:

(1)数字证书的有效期要包含程序的预计生命周期,一旦数字证书失效,持有改数字证书的程序将不能正常升级。

(2)如果多个程序使用同一个数字证书,则该数字证书的有效期要包含所有程序的预计生命周期。

(3)Android Market强制要求所有应用程序数字证书的有效期要持续到2033年10月22日以后。

Android数字证书包含以下几个要点:

(1)所有的应用程序都必须有数字证书,Android系统不会安装一个没有数字证书的应用程序

(2)Android程序包使用的数字证书可以是自签名的,不需要一个权威的数字证书机构签名认证

(3)如果要正式发布一个Android ,必须使用一个合适的私钥生成的数字证书来给程序签名,而不能使用adt插件或者ant工具生成的调试证书来发布。

(4)数字证书都是有有效期的,Android只是在应用程序安装的时候才会检查证书的有效期。如果程序已经安装在系统中,即使证书过期也不会影响程序的正常功能。

(5)Android使用标准的java工具 Keytool and Jarsigner 来生成数字证书,并给应用程序包签名。

(6)使用zipalign优化程序。

Android系统不会安装运行任何一款未经数字签名的apk程序,无论是在模拟器上还是在实际的物理设备上。Android的开发工具(ADT插件和Ant)都可以协助开发者给apk程序签名,它们都有两种模式:调试模式(debug mode)和发布模式(release mode)。

在调试模式下,android的开发工具会在每次编译时使用调试用的数字证书给程序签名,开发者无须关心。

当要发布程序时,开发者就需要使用自己的数字证书给apk包签名,可以有两种方法。

(1)在命令行下使用JDK中的和Keytool(用于生成数字证书)和Jarsigner(用于使用数字证书签名)来给apk包签名。

(2)使用ADT Export Wizard进行签名(如果没有数字证书可能需要生成数字证书)。

使用Keytool和Jarsigner给程序签名

我们主要是使用第二中,第一种麻烦,第二种只要你在eclipse里装好了android的开发环境,就可以使用啦!

一、鼠标右击项目->Android Tools->Export Signed Application Package


二、选择下一步


三、填写保存地址,密码,重复密码,选择下一步


四、填写别名,密码,重复密码,有效期,组织单位,单位(我也不知道怎么区分,我的英语烂),城市,省份,国家代码


五、选择保存的地方,单击完成;

Ok了,apk出来了,签名也好了,下面可以正式发布啦!

4.正式发布

真正的发布就是很简单了,看看就可以!我也不多说,如果有问题,留言!

不知道为什么,字体不能设置大的,我生成了pdf文档,可以下载来看!

 

  • 大小: 83.2 KB
  • 大小: 39.7 KB
  • 大小: 45.9 KB
  • 大小: 63.1 KB
  • 大小: 38.1 KB
分享到:
评论

相关推荐

    Android作业.zip

    Android作业。zip是一个压缩文件,其中包含了与Android开发相关的资源。这些资源可能包括代码示例...zip是一个全面的Android开发资源包,它可以帮助开发者从零开始学习Android开发,也可以帮助他们提升现有的开发技能。

    Google Android SDK开发范例大全(完整版)

    G1 问世几个月之后,随后就发布了 Android Market,它使用户可以浏览应用程序,并且可以将应用程序直接下载到他们的手机上。经过大约 18 个月,一个新的移动平台进入公众领域。 ---------------------------------...

    Android SDK开发包国内官网下载地址.pdf

    唯一的缺点是体积比较大,如果你是从零开始配Android开发环境就下载吧。(可惜官方提供的windows版是64位的eclipse,暂时没有32位版本,等有时间了我自己压一个。 Update2012/12/3: 官网已放出了32位版本) 文件名 ...

    Android-Programming-for-Beginners:Packt发布的Android初学者编程

    从零编程经验开始构建深入的全功能Android 9 Pie应用 这本书是关于什么的? Android是世界上最受欢迎的操作系统。 有数以百万计的设备正在访问数以万计的应用程序。 它是许多人进入技术世界的切入点。 它是适合...

    工程硕士学位论文 基于Android+HTML5的移动Web项目高效开发探究

    NativeApp 使用传统原生态Android SDK来实现的应用 WebApp 基于浏览器来实现的一种应用 HybridApp 一种可以下载的Native App,其用户界面的全部或者部分元素在嵌入式浏览器组件(WebView之类的)里面运行 优雅降级...

    Android-Programming-with-Kotlin-for-Beginners:Packt发行的《面向Kotlin的Android初学者编程》

    使用新的Kotlin编程语言从零编程经验开始构建Android应用程序这本书是关于什么的? Android是世界上最流行的移动操作系统,而Kotlin已被Google宣布为构建Android应用程序的一流编程语言。 随着最受期待的Android...

    Learning-Java-by-Building-Android-Games-Second-Edition:Packt发行,《通过构建Android游戏学习Java,第二版》

    通过构建六个令人兴奋的游戏从零开始学习Java和Android 这本书是关于什么的? Android是目前最流行的移动操作系统之一。 它使用最流行的编程语言Java作为构建各种类型应用程序的主要语言。 但是,这本书与其他...

    exp3d:太空射击游戏。 Android桌面版WebGL

    它最初是一款仅限Android的游戏,我从2011年开始在业余时间从零开始编写游戏。 在开发过程中,添加了桌面支持( Windows / Linux / Mac ),然后通过转编译为纯Javascript来添加WebGL端口。 这是游戏的完整源代码,...

    AnimexxApp:适用于ICS的Animexx App的新版本

    AnimexxApp 新的Animexx Android应用程序是从零开始编写的,具有内置的Messenger支持。 ToDo公开发布: -List Filter -File upload -Dash(Karotaler) -SingleENS Layout/Form update

    uni-app-video:一个优秀的uni-app影视视频原始项目案例分享,旨在帮助大家重新启动上手uniapp视频类项目,个人网站

    一套代码,可发布到iOS,Android,H5,以及各种小程序(微信/支付宝/百度/头条/ QQ /钉钉/淘宝),快应用等多个平台。项目从零开始建造到开发解读:扫码体验使用手册本仓库为了帮助更多初学者或爱好者,寻求学习交流...

    java开源包1

    BlueLeech是一个开源程序,它从指定的URL开始,搜索所有可用的链接,以及链接之上的链接。它在搜索的同时可以下载遇到的链接所指向的所有的或预定义的范围的内容。 WebSocket协议的Java实现 WebSocket4J WebSocket4...

    java开源包11

    BlueLeech是一个开源程序,它从指定的URL开始,搜索所有可用的链接,以及链接之上的链接。它在搜索的同时可以下载遇到的链接所指向的所有的或预定义的范围的内容。 WebSocket协议的Java实现 WebSocket4J WebSocket4...

    java开源包2

    BlueLeech是一个开源程序,它从指定的URL开始,搜索所有可用的链接,以及链接之上的链接。它在搜索的同时可以下载遇到的链接所指向的所有的或预定义的范围的内容。 WebSocket协议的Java实现 WebSocket4J WebSocket4...

    java开源包3

    BlueLeech是一个开源程序,它从指定的URL开始,搜索所有可用的链接,以及链接之上的链接。它在搜索的同时可以下载遇到的链接所指向的所有的或预定义的范围的内容。 WebSocket协议的Java实现 WebSocket4J WebSocket4...

    java开源包6

    BlueLeech是一个开源程序,它从指定的URL开始,搜索所有可用的链接,以及链接之上的链接。它在搜索的同时可以下载遇到的链接所指向的所有的或预定义的范围的内容。 WebSocket协议的Java实现 WebSocket4J WebSocket4...

    java开源包5

    BlueLeech是一个开源程序,它从指定的URL开始,搜索所有可用的链接,以及链接之上的链接。它在搜索的同时可以下载遇到的链接所指向的所有的或预定义的范围的内容。 WebSocket协议的Java实现 WebSocket4J WebSocket4...

    java开源包10

    BlueLeech是一个开源程序,它从指定的URL开始,搜索所有可用的链接,以及链接之上的链接。它在搜索的同时可以下载遇到的链接所指向的所有的或预定义的范围的内容。 WebSocket协议的Java实现 WebSocket4J WebSocket4...

    java开源包4

    BlueLeech是一个开源程序,它从指定的URL开始,搜索所有可用的链接,以及链接之上的链接。它在搜索的同时可以下载遇到的链接所指向的所有的或预定义的范围的内容。 WebSocket协议的Java实现 WebSocket4J WebSocket4...

    java开源包8

    BlueLeech是一个开源程序,它从指定的URL开始,搜索所有可用的链接,以及链接之上的链接。它在搜索的同时可以下载遇到的链接所指向的所有的或预定义的范围的内容。 WebSocket协议的Java实现 WebSocket4J WebSocket4...

Global site tag (gtag.js) - Google Analytics