android 自动更新APP版本,并使用ProgressDialog显示进度

这篇博客介绍了如何在Android应用中实现自动检测并更新版本的功能,利用异步消息处理机制在后台检测和下载更新,同时通过ProgressDialog展示下载进度。涉及到的知识包括网络请求、异步处理、文件读写,并提供了相关代码示例。作者自称是Android初学者,希望通过分享自己的学习经验,获得同行的指教。
摘要由CSDN通过智能技术生成

一、主要应用异步消息处理机制,在子线程进行版本检测和版本对比,如有新版本则开启新的线程去下载,并在progressDialog上显示下载进度,最后自动安装,这就是大概的实现思路。主要用到的知识就是网络请求和异步消息处理,以及文件读写。


二、代码如下

1、主活动

private UpdateAppManager manager;

protected void onCreate(Bundle savedInstanceState) {
   super.onCreate(savedInstanceState);
   requestWindowFeature(Window.FEATURE_NO_TITLE);
   setContentView(R.layout.guide);

   manager=new UpdateAppManager(this);
   manager.getUpdateMsg();//检查更新


2、更新管理类

public class UpdateAppManager {

    // 外存sdcard存放路径
    private static final String FILE_PATH = Environment.getExternalStorageDirectory() +"/" + "AutoUpdate" +"/";
    // 下载应用存放全路径
    private static final String FILE_NAME = FILE_PATH + "AutoUpdate.apk";
    // 准备安装新版本应用标记
    private static final int INSTALL_TOKEN = 1;
    //Log日志打印标签
    private static final String TAG = "Update_log";

    private Context context;
    //获取版本数据的地址
    private String version_path = "http://10.3.3.239/get_data.json";
    //获取新版APK的默认地址
    private String apk_path = "http://10.3.3.239/PLAYBULBX.apk";
    // 下载应用的进度条
    private ProgressDialog progressDialog;

    //新版本号和描述语言
    private int update_versionCode;
    private String update_describe;

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

    /**
     * 获取当前版本号
     */
    private int getCurrentVersion() {
        try {

            PackageManager manager = context.getPackageManager();
            PackageInfo info = manager.getPackageInfo(context</
评论 12
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值