Android OTA功能的實現和修改

Peter盼發表於2012-06-19
Android OTA空中升級的文件不少。但是多是介紹原理的和分析程式碼的。原理我就不說了。這裡記錄一下我在專案中實現的工作,和問題總結。

工作流程:見附件圖片

 

 

 

update.xml檔案放在伺服器上,當客戶端請求的引數正確時,返回相應的資訊。

update.xml的內容,根據需要可以新增;Md5需要校驗下載後包的完整性。updatepath為實際的下載地址

至少需要如下欄位:

<ver>Android 3.2</ver>

<md5>xxx</md5>

<updatepath>http://xxxx/update.zip</updatepath>

下面是我們工作用到的一個配置檔案。

<firmwareupdate xsi:noNamespaceSchemaLocation="firmware.xsd">
    <firmware>
        <num>1</num>
        <name>firmware name </name>
        <desc_cn>簡體中文描述</desc_cn>
        <desc_tw>繁體中文描述</desc_tw>
        <desc_en>firmware release Description</desc_en>
        <md5>c61ce360a734c018685fbf5e1662c0fd</md5>
        <size>16787</size>
        <level>3</level>
        <needbackup>1</needbackup>
        <downloadurl>http://123.123.123.123/firmware/update.zip</downloadurl>
    </firmware>
</firmwareupdate>

下載方法可以自己用socket,3.2版本後也可以用downloadmanager,用downloadmanager支援斷點續傳。

下載後一定要放在/sdcard/update.zip 檔案。

O他的功能實現可以單獨做一個APK,也可以作為一個service放入系統中。

相關文章