• 安卓实现版本升级


    判断网络连接

     fun netState(context: Context): Boolean {
            val cm = context.getSystemService(Context.CONNECTIVITY_SERVICE) as ConnectivityManager
            val info = cm.activeNetworkInfo
    
            if (info != null) {
                return info.isAvailable
            } else {
                return false
            }
        }

    1.获取到本地已安装的apk版本信息

        fun getVersion(context: Context): String? {
            val manager: PackageManager = context.packageManager//获取文件中的所有信息
    
            val packgerInf: PackageInfo = manager.getPackageInfo(context.packageName, 0)
            return packgerInf.versionName//b版本号
        }

    2.网络获取服务器的版本号

       使用json上传versionCode服务器判断版本是否相同并返回结果

    3.下载apk

        使用XUtills第三方下载框架实现下载

        val downLoad = DownLoadUtils()

        downLoad.downapk()//

    4.安装

    //隐式意图开启安装apk
    
        fun installApk(activity: Activity) {
            var intent = Intent("android.intent.action.VIEW")
            intent.addCategory("android.intent.category.DEFAULT")
            //val file = File("/mnt/sdcard/test/test.apk")
            // 更新的apk缓存的位置
            intent.setDataAndType(Uri.fromFile(File("/ mnt/sdcard/test/test.apk")), "application/vnd.android.packgr-archive")
            activity.startActivityForResult(intent, 0)
    
        }
  • 相关阅读:
    python列表[]中括号
    python元组()小括号
    python break continue跳过和跳出循环
    python FOR循环
    python while循环
    python if elif else判断语句
    python使用变量
    python -input用户输入
    pycharm模板
    港股收费
  • 原文地址:https://www.cnblogs.com/ShengXi-1994/p/8776487.html
Copyright © 2020-2023  润新知