1. 程式人生 > >安卓應用檢查更新並下載安裝

安卓應用檢查更新並下載安裝

在這篇文章中(參見 android中如何下載檔案並顯示下載進度  )我們講到了如何下載檔案的問題,今天我介紹如何實現應用的自動更新,其中下載apk模組用到了前一篇文章中的知識。當然這只是一個實現的框架,你需要根據自己的需求是改變一些細節。

自動更新的原理

其實就是客戶端將自己的版本號與服務端的版本號進行比對,版本號小於服務端則意味著有新版本,當然服務端的版本號是需要人工放上去的。

先看看效果:

為了程式碼的簡潔,我這裡用原生的alert對話方塊。

點選下載之後:

下載完成安裝的介面我就不張貼了。

使用方法:

很簡單,在需要檢查更新的地方加入如下程式碼:

1 2 updateChecker.checkForUpdates();

其中http://jcodecraeer.com/update.php返回的是伺服器段存放的版本資訊。服務端的版本資訊分為三部分:

1.版本號;

2.版本描述;

3.存放apk的url(告訴客戶端,在哪裡下載新版本的apk);

以http://jcodecraeer.com/update.php返回的結果為例,返回的字串具體是這樣的:

1 {"url":,"versionCode"
:"2","updateMessage":"1.修改了app圖示 2.裝置詳情的顯示方式"}

這是一個json格式的字串。

實現

有三個類:

其中

AppVersion是版本資訊的模型類,基本上和服務端返回的東西是相對應的。

DownloadService是下載模組。

UpdateChecker是檢查更新,呼叫下載模組,下載完安裝的工具類。

AppVersion

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 package com.jcodecraeer.jcode.update; public class AppVersion { private String updateMessage; private String apkUrl; private int apkCode; public static final String APK_DOWNLOAD_URL = "url"; public static final String APK_UPDATE_CONTENT = "updateMessage"; public static final String APK_VERSION_CODE = "versionCode"; public void setUpdateMessage(String updateMessage) { this.updateMessage = updateMessage; }

相關推薦

應用檢查更新下載安裝

在這篇文章中(參見 android中如何下載檔案並顯示下載進度  )我們講到了如何下載檔案的問題,今天我介紹如何實現應用的自動更新,其中下載apk模組用到了前一篇文章中的知識。當然這只是一個實現的框架,你需要根據自己的需求是改變一些細節。 自動更新的原理

為BB 10轉制應用 打包,簽名,安裝

                轉換步驟概述 一 準備工作 建議下載JDK 1.7 Windows x86版本,例如 88.75 MB的jdk-7u17-windows-i586.exe 。安裝JDK。設定系統PATH路徑包含JAVA_HOME的bin目錄;或者在命令列下執行

開發環境Android SDK下載安裝及配置教程

Android開發環境搭建分為以下四步:第一步、安裝JDK;第二步、安裝Eclipse;第三步、下載並安裝AndroidSDK;第四步、在Unity中釋出到Android平臺。安裝JDK官網:http://www.Oracle.com/technetwork/Java/jav

新版本升級,自動安裝apk

記得新增intenet許可權,和sdcard的讀寫許可權 public class MainActivity extends AppCompatActivity { private Strin

6.0更新版本出錯:更新包與已安裝應用的簽名不一致,但在應用管理中卻找不到這個已經解除安裝應用

本人用的是mac系統,手機是華為P10 PLUS,系統是安卓8.0,使用AS進行開發 每次更新版本時,debug版與正式版的簽名不一致,導致安裝失敗,但是如果直接在手機桌面拖拽刪除了debug版,就有可能會提示這個錯誤,因為系統沒有徹底將debug版的安裝包刪除,然而在應用管理中,是根本找不到這

應用更新的時候靜默安裝的實現方法

轉自:http://aswang.iteye.com/blog/1493552 老早之前,寫了一個android軟體包靜默安裝的應用,放在工作空間很久了,今天整理專案的時候發現了,拿出來晒晒! 軟體實現的功能:當需要靜默安裝(即不彈出安裝確認對話方塊,後臺自動安裝

應用開發(1)環境安裝

由於Google是官方,所以本系列內容全部是掛外網,請參考者注意。如若打不開,請使用vpn。 Google官方教程 https://developer.android.com/training/basics/firstapp/creating-project 1.安裝Android

應用安裝錯誤:INSTALL_FAILED_MEDIA_UNAVAILABLE 解決方法

今天工作中,在測試一臺機子的時候,海信的手機,安裝自己的產品怎麼都裝不上去,然後在網上找了好多方法,現在整理一下: 方法一: 這個問題的原因為Android應用安裝位置當前不可用。而Android應用安裝位置有手機rom內和sdcard兩種。由於Android裝置沒有

win10 64位 unity2018.1.18版本 安裝SDK 解決SDK無法更新和釋出apk諸多問題解決心得

首先寫這個部落格確實自己在安裝的時候遇到很多問題,然後自己一步一步解決的,希望對大家有所幫助。 主要解決問題:win10安卓SDK配置、JDK版本過高,釋出apk錯誤和SDK Manager無法更新的問題。 Android開發環境搭建分為以下四步: 第一步、安裝JDK;

應用方法數超過64k解決辦法:分割Dex

con 文件 jar extends iter 介紹 安卓 只需要 option 你的安卓項目功能很強大,對接了好多第三方開源庫,項目越做越完善,代碼越敲越爽。可是突然有一天報異常了。 錯誤:The number of method references in a .dex

優化應用內存的神奇方法以及背後的原理,一般人我不告訴他

hvr 通知 lib easy rgb ger eset canvas 統計 安卓應用一般都害怕自己被殺。內存占用高是被殺的重要原因之中的一個。所以大家都想盡各種招數應對,但效果都一般。 但有一招: WindowManagerGlobal.getInstance(

(一)第一個應用

alt 技術分享 我們 提示 建模 手機 studio 應用 images 一、安裝Android studio  網址:http://www.android-studio.org/ 安裝步驟:按照提示傻瓜式安裝即可。      二、第一個Hello wo

應用如何在整個應用運行期間都禁止彈出輸入法面板?

params manager protect noi trac star ima 禁用 繼承 在你的Activity的onCreate函數中添加如下代碼即可完全禁用軟鍵盤: getWindow().setFlags(WindowManager.LayoutParams.F

筆記-adb指令、打包安裝

dad 安裝軟件 指令 netstat xml配置 lis oid res androi adb install -r -s xxx.apk -r重裝 -s 安裝到sd卡 安裝軟件 adb uninstall -k 包名 -k 只卸載程序不清

【抓包分析】Charles和 夜神模擬器 對應用進行抓包分析

技術分享 windows red 工具 com nsh pro 4.2 name 準備工具 : 1 Charles : https://www.charlesproxy.com (收費) 2 夜神模擬器 : https://www.yeshen.com (免費)

Android項目實戰(二):應用程序退出的三種方法

eat 延遲 用戶 pre html port length tst 二次 原文:Android項目實戰(二):安卓應用程序退出的三種方法現在的APP退出的時候都不是讓用戶點擊了“後退鍵”就退出。防止用戶點錯了後退鍵而造成的用戶體檢不好。 一年前搞

mac下創建應用 hello-world

article 安卓 https pro 打開 www 目錄 .com tails 教程 https://www.jianshu.com/p/bf77cb5ce70b 需要註意的地方 jdk目錄查找 jdk目錄拷貝到tool目錄下面(jdk可以拷貝,沒有其他牽扯) http

應用在各大應用市場上架方法整理(轉載)

無法 sel llb count 快的 icp huawei base reg 轉載原文:https://blog.csdn.net/niezhipeng8/article/details/79103436 想要把APP上架到應用市場都要先註冊開發者賬號才可以。這裏的

帶你快速瞭解應用上架各大應用市場

  1、騰訊應用寶 騰訊開放平臺地址:http://open.qq.com 註冊開發者帳號地址:https://ssl.zc.qq.com/v3/index-chs.html 重要提示:開發者QQ號碼一旦註冊不能變更,建議使用公司老闆或法人的QQ號碼而不是員工私人號碼註

扒一扒應用在各大主流市場上的上架整理;

    想要把APP上架到應用市場都要先註冊開發者賬號才可以,不管是IOS還是安卓都需要先註冊開發者賬號。建議一個應用如果在多個應用市場上上傳,為了方便你後期發包管理,建議登入名和密碼儘量都保持一致,然後製作一張excel 表 記錄這些賬號資訊,避免賬號混亂。另外注意:首次提