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();
}
});
}
Android 根据版本号更新的更多相关文章
- Android提示版本号更新操作流程
Android提示版本号更新操作流程 2014年5月8日: andorid的app应用中都会有版本号更新的操作,今天空暇的时候就花了点心思弄了一下.主要技术方面用到了AsyncTask异步载入.htt ...
- Android SDK版本号与API Level 的对应关系及发布时间(更新到28)
Android SDK版本号与API Level 的对应关系及发布时间 平台版本号 API 级别 VERSION_CODE(代号) 发布时间 Android 9.0 28 Pie/P(馅饼) 2018 ...
- Android Studio 解决更新慢的问题
Android Studio 解决更新慢的问题 最近在一些群里有伙伴们反应工具更新慢,由于国内网络对google限制的原因,android studio更新一直是个老大难的问题,为了,提高sdk下载的 ...
- Android Studio安装更新终极解决方式
之前写过一篇Android SDK无法更新的博文,其实该方式对Android Studio同样有效,大伙可以下载网盘中分享的小软件,若搜索到通道后提示需要更细,也可以选择更新.参考:http://bl ...
- Android实现自动更新功能
Android实现自动更新功能 Android自动更新的功能可以使用第三方的SDK来实现,但是类似友盟,就不支持x86手机的自动更新,科大讯飞,弹窗是全局的,小米手机就会默认把弹窗权限关掉不允许弹出提 ...
- Android 各个版本号WebView
转载请注明出处 http://blog.csdn.net/typename/ powered by miechal zhao : miechalzhao@gmail.com 前言: 依据Googl ...
- 解决Android SDK Manager更新、下载速度慢
hosts文件里面原来的内容不做修改,只是添加内容 方法/步骤 先看看如何加快更新速度,再说如何更新. 首先更新host文件,如图,打开目录 C:\Windows\System32\drivers\e ...
- Android中动态更新ListView(转)
在使用ListView时,会遇到当ListView列表滑动到最底端时,添加新的列表项的问题,本文通过代码演示如何动态的添加新的列表项到ListView中.实现步骤:调用ListView的setOnSc ...
- 如何处理Android SDK无法更新问题?
在Android开发中,最痛苦的事情就是相关库升级后,Android SDK太低,跑步起来,最最痛苦的事情就是,想更新,却因大天朝的一墙之隔,愣是没法更新.遇到这种情况怎么办呢?小编和大家分享一个解决 ...
随机推荐
- Linux 用户身份与进程权限
在学习 Linux 系统权限相关的主题时,我们首先关注的基本都是文件的 ugo 权限.ugo 权限信息是文件的属性,它指明了用户与文件之间的关系.但是真正操作文件的却是进程,也就是说用户所拥有的文件访 ...
- outlook署名最后一行没换行
Outlook のプレーン テキスト形式での投稿で改行が削除されます 1.通过更改outlook默认设置可以解决 https://support.microsoft.com/ja-jp/help/28 ...
- H5 15-交集选择器
15-交集选择器 我是段落 我是段落 我是段落 我是段落 我是段落 <!DOCTYPE html> <html lang="en"> <head> ...
- poj2104 主席树裸题
空间大小:n*lgn 复杂度:建树n*lgn 查询lgn #include <cstdio> #include <iostream> #include <algorit ...
- nginx 编译安装以及简单配置
前言 Nginx的大名如雷贯耳,资料太多了,网上一搜一大把,所以这里就不阐述nginx的工作原理了,只是简单的编译安装nginx,然后呢,简单配置一下下. 下载Nginx.安装 下载地址:http:/ ...
- PAT L2-007 家庭房产
https://pintia.cn/problem-sets/994805046380707840/problems/994805068539215872 给定每个人的家庭成员和其自己名下的房产,请你 ...
- Proper usage of Java -D command-line parameters
https://stackoverflow.com/questions/5045608/proper-usage-of-java-d-command-line-parameters https://c ...
- Python3练习题 001:4个数字求不重复的3位数
#Python练习题 001:4个数字求不重复的3位数#方法一import itertoolsres = [][res.append(i[0]*100 + i[1]*10 + i[2]) for i ...
- Linux df 与du用法
df 查看一级目录的大小,但是不能查看文件的大小.du 可以查看目录或者文件大小. 1 df的基本用法 df命令可以显示目前所有文件系统的总空间及当前可用空间,用法如下: -a 全部文件系统列表-h ...
- CLOUD物料列表查询的一份跟踪
SELECT * FROM (SELECT t0.FNUMBER fnumber, t0_L.FNAME fname, t0_L.FSPECIFICATION fspecification, t0.F ...