Blog

a great conversation starts with a great topic

This is a public Blog  publicRSS

Entry

  • 建立可自动更新的AIR应用几个技巧 |...
    Entry posted 03/23/09 by ibsol, tagged Development, Rich Internet Apps
    563 Views, 0 Comments
    Title:
    建立可自动更新的AIR应用几个技巧 | Tips on building AIR application that can be easily updated
    Entry:

        使用AIR可以使有web开发背景的人很容易的建立桌面应用,但是与传统web应用部署方式不同的地方在于,桌面应用的更新远比web应用复杂,你要考虑原有版本在用户机器上的遗留内容,幸运的是AIR runtime 和SDK提供了updating API和framework。尽管有更新框架的帮助,实际过程中还是会有写细节需要注意,该文章指出了在建立和部署AIR应用更新程序时可能遇到的潜在问 题,并提供了一些技巧和技术来避免它,这些技巧包括:

    • 首先,你要为将来可 能的更新做好准备,这些可能的更新原因包括安全补丁、bug、文字错误、丢失知识产权信息等,这些准备包括,你要决定何时检测新的版本,更新是否是强制性 的,最重要的是你必须认识到每一个版本都是产品生命周期的一小步,所以尽可能的减少对用户系统的侵入;
    • 其次,重视应 用ID(application ID),AIR应用是通过应用ID被AIR runtime和OS识别的,这个ID有三个作用:关联应用存储目录(Application Storage Directory)、关联加密的本地存储(Encrypted Local Store)、在更新过程中runtime用它来识别那个应用要被替代。所以一旦你的应用发布,你就不要轻易改变你的应用ID,除非你发布的是一个完全不 同的应用,当然应用ID不是识别一个应用的唯一标识,有相同ID但是不同签名的应用仍视为不同的应用;
    • 再次,处理好 文件依赖问题,AIR有三种文件类型:用户设置文件、SQLite数据库、特定应用的文件类型,所以对这些依赖的文件做个记录来描述他们的路径、角色、目 的地等信息,最后是能记录版本信息在文件里,这样对将来的更新非常有好处,你必须假定这些文件随时有可能在用户的机器上丢失、损坏,并提供机制来修复他们;
    • 第四,注意开发版和发布版的不同,首先应用存储目录不同,开发版是以应用ID开头的,而发布版是应用ID后面跟着随即数组合而成,其次加密的本地存储也是不同的;
    • 第 五,打包和签名应用,在打包AIR应用时,有些文件类型是不能被ADT识别,这时需要开发者来确保程序需要的文件能被最终打包到.air文件中,由于 Flexbuilder的向导缺陷,它不能浏览外部文件和目录,所以你必须手工拷贝他们到src目录或者bin目录,以保障能把这些文件打包到.air文 件中;
    • 第六,测试新版本,新版本测试要考虑两种情况,一种是从原有版本升级,一种是首次安装,对于第一种情况,可 能直接从AIR包安装更新比较好,如果是在相同的测试环境来测试全新安装的情况,要确保卸载当前的应用、删除应用存储目录和其他应用创建的文件,然后再安 装新的应用;
    • 最后,发布你的应用,典型的一些步骤包括发布你的.air包到服务器上,修改你的updater xml文件以匹配新版本,检查你的install badge以确保是最新的而且是功能齐备的,发布你的网站说明内容。

    再来两句:AIR应用的更新确实是个系统工程,其实跟我们的web应用在server端升级的道理一样,少不了一些配置和程序的更改,只不过程序员关注的目标 从服务端转到用户的机器上,AIR有他的特殊性,相信通过这篇文章的介绍,广大AIR开发者能很好的掌握更新系统的要点。

    点击查看ADC原文

    Tags:
    AIR, 技巧,更新, update
    Image: