zoukankan      html  css  js  c++  java
  • Android网络课程笔记-----应用自动升级

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

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

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

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

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

           

     

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

          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"); 
  • 相关阅读:
    三连击
    铺地毯
    超级玛丽游戏
    A+B problem
    怎么感觉欠缺点什么、灵光在哪,让我顿悟下
    2016年10月,人生的转折点。
    python第七天
    python第六天
    汉诺塔问题(Hanoi Tower)递归算法解析(Python实现)
    计算多数的乘积(Python实现)
  • 原文地址:https://www.cnblogs.com/vijay/p/3540691.html
Copyright © 2011-2022 走看看