Android网络课程笔记-----应用自动升级

一、一个产品(Product)由若干个项目(Project)组成

       一个产品包含若干个模块(Module)

       一个模块包含若干个流程(process)

       一个流程包含若干个功能(Function)

       一个功能包含若干个技术点(API)

       

Android网络课程笔记-----应用自动升级

 

二、通过练习提升开发模块的能力

      1. 以App升级为例

         好处:a) 任何应用都需要

                  b) 业务无关性(不管开发社交、通讯、娱乐、游戏等App)

         

      2. 设计流程

         a) 画流程图

         b) 写出每一步骤

             首先从用户角度描述

             然后从技术角度分解

      3. 根据流程逐步实现

 

描述App自动升级流程:

红色部分代表分析功能所需的技术点

1) 提示用户有新版本,是否升级

    当前Apk版本号

    服务端版本号      Http   json

          JSON包含:提示信息、新版本号   

    对话框               AlertDialog

          提示内容包含:

                1 新增加特性

                2 修复了xxxbug

 

2) 如果用户确认升级,从服务端下载新版本,用户可以选择查看下载过程(不强制)

    下载     

    通知        Notification    定制系统通知的布局

 

3) 提示下载完成,用户在合适的情况下安装升级版本           

    提示    Toast

    代码中安装Apk      

 

 

附:

1. 获得当前apk版本号

PackageManager packageManager = getPackageManager();
PackageInfo packInfo = packageManager.getPackageInfo(getPackageName(),0);
String version = packInfo.versionName;
 
2. 代码中安装apk
Uri uri = Uri.fromFile(new File(fileName)); 
Intent intent = new Intent(Intent.ACTION_VIEW); 
intent.setDataAndType(Uri, application/vnd.android.package-archive"); 

Android网络课程笔记-----应用自动升级

上一篇:iOS 和Android中的正则表达式简单使用


下一篇:Android--Activity的生命周期