Android應用的自動公升級 更新模組的實現

2021-06-28 19:09:04 字數 1907 閱讀 3942

(出處:

我們看到很多android應用都具有自動更新功能,使用者一鍵就可以完成軟體的公升級更新。得益於android系統的軟體包管理和安裝機制,這一功能實現起來相當簡單,下面我們就來實踐一下。首先給出介面效果:

1. 準備知識

在androidmanifest.xml裡定義了每個android apk的版本標識:

android:versioncode="1"

android:versionname="1.0.0">

複製**

其中,android:versioncode和android:versionname兩個字段分別表示版本**,版本名稱。versioncode是整型數字,versionname是字串。由於version是給使用者看的,不太容易比較大小,公升級檢查時,可以以檢查versioncode為主,方便比較出版本的前後大小。

那麼,在應用中如何讀取androidmanifest.xml中的versioncode和versionname呢?可以使用packagemanager的api,參考以下**:

public static int getvercode(context context) catch (namenotfoundexception e)

return vercode;

}public static string getvername(context context) catch (namenotfoundexception e)

return vername;   }

複製**

public static string getvername(context context)

複製**

同理,apk的應用名稱可以這樣獲得:

string vername = context.getresources()

return vername;}

複製**

2. 流程框架

3. 版本檢查

複製**

然後,在手機客戶端上進行版本讀取和檢查:

private boolean getserverver () catch (exception e)

}} catch (exception e)

return true;}

複製**

比較伺服器和客戶端的版本,並進行更新操作。

if (getserververcode()) else

}        

複製**

詳細方法:

private void notnewversionshow()

}).create();// 建立

// 顯示對話方塊

dialog.show();

}private void donewversionupdate()

}).setnegativebutton("暫不更新",

new dialoginte***ce.onclicklistener()

}).create();// 建立

// 顯示對話方塊

dialog.show();}

複製**

void downfile(final string url) }}

fileoutputstream.flush();

if (fileoutputstream != null)

down();

} catch (clientprotocolexception e) catch (ioexception e)

}}.start();}

複製**

void down()

});}

複製**

5. 安裝應用

void update()

複製**

安卓巴士原始碼.rar

Android 應用公升級

獲取版本 public void setversions context context catch packagemanager.namenotfoundexception n public void shownoticedialog context context setnegativebutt...

Android應用的自動公升級 更新模組的實現

我們看到很多android應用都具有自動更新功能,使用者一鍵就可以完成軟體的公升級更新。得益於android系統的軟體包管理和安裝機制,這一功能實現起來相當簡單,下面我們就來實踐一下。首先給出介面效果 1.準備知識 在androidmanifest.xml裡定義了每個android apk的版本標識...

Android自動檢測版本及自動公升級

步驟 1.檢測當前版本的資訊androidmanifest.xml manifest android versionname。2.從伺服器獲取版本號 版本號存在於xml檔案中 並與當前檢測到的版本進行匹配,如果不匹配,提示使用者進行公升級,如果匹配則進入程式主介面。效果圖 獲取當前程式的版本號 獲取...