app自動更新 android

2021-09-06 17:50:45 字數 1690 閱讀 1036

public string getvesionname(context context) catch (namenotfoundexception e)

return versionname;}

複製**

更新以及安裝程式需要的許可權,在androidmanifest.xml中新增

複製**

獲取apk的versioncode,即androidmanifest.xml中定義的android:versioncode

public int getversioncode(context context) catch (namenotfoundexception e)

return versioncode;}

複製**

伺服器端version.json,包含apk路徑以及版本資訊

複製**

獲取遠端伺服器的版本資訊

private void getremotejson(string host) throws clientprotocolexception, ioexception, jsonexception

reader.close();

}jsonobject object = (jsonobject) new jsontokener(sb.tostring()).nextvalue();

this.apkfullname = object.getstring("apkfullname");

this.versionname = object.getstring("versionname");

this.versioncode = integer.valueof(object.getint("versioncode"));}

複製**

發現更新的提醒視窗,通過alertdialog實現

private void shoversionupdate(string newversion, final string updateurl)

// cancel

}).setnegativebutton(mcontext.getstring(r.string.alertdialog_cancel_button), new dialoginte***ce.onclicklistener()

}).create();

dialog.show();}

複製**

private void downfile(final string url)

fileoutputstream = new fileoutputstream(new file(update_dir, updatefilename));

byte buf = new byte[1024];

int ch = -1;

int count = 0;

while ((ch = is.read(buf)) != -1) }}

fileoutputstream.flush();

if (fileoutputstream != null)

handler.post(new runnable()

});} catch (exception e)

}}.start();}

複製**

安裝更新

private void installupdate()

複製**

至此更新需要函式就完成了

應用自動更新封裝 Android

自動更新的意義 分析原理 利用notification通知使用者更新進度 實踐 我們先開下大體的思路流程 真正的建立連線 private void makerequest throws ioexception catch ioexception e override public void run ...

通過RSS實現app的自動更新

其實這個想法早在十年前我還在做桌面應用的時候就想過了,而且還在乙個delphi程式裡嘗試了一下,但是因為後來沒再做桌面應用,這事也就放下了。最近在做移動應用,又開始覺得需要這樣乙個功能。本來這種事情交給google play處理就好了,但是因為國內的奇葩環境,完全依賴google play並不現實,...

自動更新原理

安裝補丁的時候,客戶端的主程式一般是要關閉的,除非採用動態解除安裝 調入元件的技術,比如網路遊戲,就是盡量讓玩家邊玩遊戲邊更新。人們嫌這樣的公升級仍然太麻煩,後來出現了b s結構,大家像抓住了救命稻草一樣的追捧至今,希望能從這些勞動中解脫出來。b s結構就是瀏覽器 伺服器結構,它所有的功能,都是在瀏...