Android 根据版本号更新
Android 更新 根据 版本号
2023-09-11 14:21:22 时间
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();
}
});
}
相关文章
- Android Dex文件格式解析
- Android 异常 android.os.NetworkOnMainThreadException
- Android混合开发,html5自己主动更新爬过的坑
- Android studio 2.0--android增量更新的那些事
- Android平台Camera实时滤镜实现方法探讨(十)--代码地址以及简单介绍(20160118更新)
- Android 25种炫酷动画框架
- 在windows下搭建React Native Android开发环境
- android获取sdk更新
- 2年Android开发经验,字节跳动、腾讯、OPPO、小米Android开发面试总结(附面试题+解析)
- Android子线程更新UI的方法总结
- Android Studio 使用Log
- 千万不能错过的Android NDK下载安装及配置
- android常见错误-The container 'Android Dependencies' references non existing library
- 解决Android SDK Manager更新失败问题
- 《Android应用开发入门经典(第3版)》——第6.5节ImageView
- Android Fragment使用(二) 嵌套Fragments (Nested Fragments) 的使用及常见错误
- Android应用程序组件Content Provider的共享数据更新通知机制分析
- Android中为图标加上数字--用于未读短信数提醒,待更新应用数提醒等
- Android创建桌面快捷方式
- android开发 wifi开发工具类
- Android解决应用崩溃后重启的问题,以及与bugly的冲突
- 面试题:Android 为什么设计只有主线程更新UI
- Android studio2 中的 SDK Manager的使用-------Android SDK 的安装与更新(Install missing platform(s) and sync project 编译错误解决)
- android开发中遇到的各种问题收集--不定期更新
- Android Studio升级或更新项目,经常造访的“Could not find com.android.tools.build :gradle: x.x.x”的原因分析
- Android联网更新应用
- Android Apk增量更新
- Android应用程序启动过程(一)总结
- Android学习笔记之:android更新ui的几种经常用法
- 【Android开发经验】android:windowSoftInputMode属性具体解释
- 【winows7+android-ndk-r9+Cygwin 】cocos2dx 2.*游戏移植Android平台完全手册
- android反射组件 (一个)java 它们的定义annotation基础知识
- android SQLite 使用实例
- Android开发系列(二十):AutoCompleteTextView(自己主动完毕文本框)的功能和使用方法
- Android 访问 Webapi 更新UI