Android教程網
  1. 首頁
  2. Android 技術
  3. Android 手機
  4. Android 系統教程
  5. Android 游戲
 Android教程網 >> Android技術 >> 關於Android編程 >> Android開發之應用程序更新實現

Android開發之應用程序更新實現

編輯:關於Android編程

最近給項目app做升級,對Android應用程序更新稍有研究,分享一下我的心得。

既然是更新,那麼一定是要聯網和下載的,所以聯網和存儲訪問權限時一定要有的:




可以用xml的方式和數據庫、php等方式檢測升級版本

XML:



2.0
這裡寫一些這個版本的特點
填寫應用下載下載地址


匹配一下:

public class UpdateInfoParser {
public static UpdateInfo getUpdateInfo(InputStream is) throws Exception {
UpdateInfo info = new UpdateInfo();
XmlPullParser xmlPullParser = Xml.newPullParser();
xmlPullParser.setInput(is, "utf-8");
int type = xmlPullParser.getEventType();
while (type != XmlPullParser.END_DOCUMENT) {
switch (type) {
case XmlPullParser.START_TAG:
if (xmlPullParser.getName().equals("version")) {
info.setVersion(xmlPullParser.nextText());
} else if (xmlPullParser.getName().equals("description")) {
info.setDescription(xmlPullParser.nextText());
} else if (xmlPullParser.getName().equals("apkurl")) {
info.setUrl(xmlPullParser.nextText());
}
break;
default:
break;
}
type = xmlPullParser.next();
}
return info;
}
}

HTTP請求:

public class UpdateInfoService {
private Context context;

public UpdateInfoService(Context context) {
this.context = context;
}

public UpdateInfo getUpdateInfo(int urlId) throws Exception {
String path = context.getResources().getString(urlId);// 拿到config.xml裡面存放的地址
URL url = new URL(path);
HttpURLConnection httpURLConnection = (HttpURLConnection) url.openConnection();// 開啟一個http鏈接
httpURLConnection.setConnectTimeout(5000);// 設置鏈接的超時時間,現在為5秒
httpURLConnection.setRequestMethod("GET");// 設置請求的方式
InputStream is = httpURLConnection.getInputStream();// 拿到一個輸入流。裡面包涵了update.xml的信息
return UpdateInfoParser.getUpdateInfo(is);// 解析xml
}
}

然後就可以根據與獲取到的數據相比較並且下載更新了。

其他的做法和這個類似,不過此種方式比較簡單一些,也是最頻繁的使用方式。


個人辛勤勞動成果,如有轉載,請注明出處,謝謝!

  1. 上一頁:
  2. 下一頁:
熱門文章
閱讀排行版
Copyright © Android教程網 All Rights Reserved