今天app开发屋和朋友们分享的主题是Android安卓应用程序发布的签名策略是怎样的,通常情况下,Android 为所有的应用程序开发者推荐的签名策略是,所有的应用程序都应该使用同一个证书进行签名,并且证书的有效期应该长于应用程序的生命周期。这样做的原因有以下三点:
1)应用程序升级。
若开发者希望某应用程序可以无缝升级到新版本,则新旧版本应用程序必须使用同一个证书进行签名,否则不能升级。
如果使用的不是同一个证书签名,则新的应用程序会被安装到一个完全不同的目录下,相当于安装了一个新的应用程序,而旧的应用程序不能升级。
2)应用程序模块化。
Android 系统允许多个以同一个证书签名的应用程序运行在同一个进程中,并将其看作一个应用程序。每个应用程序可以以模块化部署,在升级时可以独立地升级其中的某一个模块。
3)允许代码或者数据共享。
Android 提供了以签名为基础的权限机制,应用程序可以为以相同证书签名的其他应用程序公开自己的功能,这样就可以在相同签名的应用程序之间共享代码和数据。
另一个决定签名策略的重要因素是如何设置签名密钥的有效期。
如果开发者计划升级应用程序,那么应该确保签名密钥的有效期超过应用程序的生命周期。Android 建议密钥的有效期长于 25 年。一旦密钥过期,其签名的应用程序将再也无法升级。
如果使用同一个密钥为多个应用程序签名,那么密钥的有效期应该长于其中任何一个应用程序的生命周期。
如果开发者计划将应用程序发布到 Android Market 上,那么密钥的有效期应该超过 2033 年 10 月 22 日,以便保证应用程序可以无缝升级。