zoukankan      html  css  js  c++  java
  • Android 根据版本号更新

    1 读取android 版本号

    具体文件位置:

    app下 build.gradle文件

    versionCode和 versionName

    defaultConfig {
            versionCode 1
            versionName "1.0"
        }

    读取方法:

    PackageInfo pi = getBaseContext().getPackageManager().getPackageInfo(getBaseContext().getPackageName(), 0);
                        String versionName = pi.versionName;
                        int versionCode = pi.versionCode;

    2 通过versionName比对版本

    我这里是获取下载地址,然后开始下载(比对版本的工作在服务器api处理了。)

    //region 版本更新
        //Spinner
        @SuppressLint("HandlerLeak")
        Handler handler1 = new Handler() {
            @Override
            public void handleMessage(Message msg) {
    //版本更新操作
    
            }
        };
    
        public void VersionUpdate() {
    
            new Thread(new Runnable() {
                @Override
                public void run() {
                    try {
    //读取版本
                        PackageInfo pi = getBaseContext().getPackageManager().getPackageInfo(getBaseContext().getPackageName(), 0);
                        String versionName = pi.versionName;
                        int versionCode = pi.versionCode;
    
                        List<NameValuePair> nvps = new ArrayList<NameValuePair>();
                        String data = String.format("{'V_AppVersion':'%s'}", versionName);
                        nvps.add(new BasicNameValuePair("data", data));
    //调用 api 获取app下载地址
                        String json = HttpWebapi.DoPost(AppConfig.getUrl() + "api/SanjuApp/GetSanjuScanApp_Android", nvps);
                        Message msg = Message.obtain();
                        msg.obj = json;
                        handler1.sendMessage(msg);
                    } catch (Exception e) {
    
    
                    }
    
                }
            }).start();
        }
        //endregion

    点击按钮触发更新:

    @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
    //更新按钮
            btnUpdate.setOnClickListener(new View.OnClickListener() {
                @Override
                public void onClick(View v) {
                    VersionUpdate();
                }
            });
        }

  • 相关阅读:
    linux 时间同步
    sublime3 install python3
    Postfix的工作原理
    MySQL启动报错
    Socket server
    自定义静态网卡配置
    Nginx 404 500
    Pymysql
    Gitlab smtp 设置
    Windows 文件自动同步共享工具
  • 原文地址:https://www.cnblogs.com/hanjun0612/p/9779739.html
Copyright © 2011-2022 走看看