(出處:
我們看到很多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檔案中 並與當前檢測到的版本進行匹配,如果不匹配,提示使用者進行公升級,如果匹配則進入程式主介面。效果圖 獲取當前程式的版本號 獲取...