文章出處

公司開發了一款應用軟件,有大量的用戶在使用該軟件,當應用程序有業務變動或者功能完善時,就面臨一個問題,怎樣高效穩定的更新客戶端的應用程序。

根據現有的升級程序的缺陷,我們做了大量的改進工作,我做了一個升級程序原型,歡迎大家的指正和拍磚。

一:更新程序的后臺管理

更新程序的后臺管理分為三個部份,包括了待更新程序的上傳,發布范圍的選定以及相關更新的配置,對更新進行不同維度的統計。

1:待更新程序的上傳

需求1:版本號可以根據前一個版本號自動生成下一個版本號,也可以人為的按版本號規則命名。

需求2:更新摘要,主要記錄每次軟件更新所完善的功能,以及解決的BUG,在客戶端展示給用戶,讓用戶選擇是否有必要更新。(與jira關聯)。

需求3:在上傳整個更新程序的時候,用一個map.xml的文件描述整個程序的目錄結構。

模型圖如下:

2:發布范圍的選定以及相關更新的配置

需求1:確定需要發布的版本后,根據對象的類型(渠道,用戶)選擇需要發布的對象。 其中如果鉤選了 “全部用戶更新”,選擇對象范圍為灰色,不起作用。

需求2:自動更新設置

      i:  是否讓用戶每次開啟應用程序都檢測更新。

      ii: 更新提示周期,就是客戶端每隔多長時間檢測一下,是否有新版本的程序需要更新。

      iii:當用戶檢測到有程序需要更新,是立刻更新,還是往后推遲更新。

模型圖如下:

3:對更新進行不同維度的統計

需求1:查詢某個用戶,正在使用的程序版本。

需求2:某個版本,有多少個用戶在使用。

需求3:某個版本,在某個時間段的更新用戶數。

需求4:查詢某個用戶更新的歷史記錄。

模型圖如下:

二:客戶端更新程序

1:客戶端更新提示及設置

需求1:顯示本次更新的摘要

需求2:用戶可以決定在何時更新

模型圖如下:

2:客戶端更新狀態

需求1:可以顯示下載更新的進度,以及詳細信息。

需求2:當下載安裝后,可以顯示更新進度和詳細信息。

目前這個更新程序就基本上能滿足我們現在的需求了。

園友,還有什么更好的建議以及我沒考慮到的需求,歡迎提出來,到時候也做一個萬能的,通用的升級程序軟件。

如果博客對你有幫助,在右下角推薦我一下。

 

 對應9樓:


文章列表


不含病毒。www.avast.com
arrow
arrow
    全站熱搜
    創作者介紹
    創作者 大師兄 的頭像
    大師兄

    IT工程師數位筆記本

    大師兄 發表在 痞客邦 留言(0) 人氣()