OKHttp和NumberProgressbar组建强大的Android版本更新功能
你们看过韩国电影《奇怪的她》不?女主角是不是超级漂亮的。。。。。。。好啦,扯正事吧,先看看女神照片。

公司新项目用到了OKHttp网络框架,在下载文件这块都蒙圈啦,再查查资料就一个Resopnse方法返回数据,而且是在下载文件结束之后才会走这个方法,整个项目和服务器打交道那块用得都是OKHttp,如果我再整个原生的HttpClient在里边实现版本更新总觉得我这代码脏了,心里不舒服,但是那我怎么获取下载的进度啊,所幸在网上找到了相应的案例,写的非常好,大家可以参考参考,可以获取下载的进度啦,那么就去差一个漂亮的progressbar啦,在网上经过挑选锁定了numberProgressbar(怎么有点做贼的感觉),然后再结合前段时间写的PopupwindowHelper和dialogHelper类把Android版本更新这块的代码提取出来,下次使用的话直接复制进去就可以啦,好啦,先看看Demo运行的效果吧(看着女神心都化啦)。

给OkHttpClient添加监听器返回下载的进度参考的案例里已经解释的很清楚,大家可以点击上面的案例链接查看,我主要是结合之前写的popupwindowHelper,dialogHelper工具类进行了一些修改,在这里也不想啰嗦啦,具体的案例也已经上传到github上了,大家如果感兴趣可以下载下来看看。
OKHttp和NumberProgressbar组建强大的Android版本更新功能的更多相关文章
- 毕加索的艺术——Picasso,一个强大的Android图片下载缓存库,OkHttpUtils的使用,二次封装PicassoUtils实现微信精选
毕加索的艺术--Picasso,一个强大的Android图片下载缓存库,OkHttpUtils的使用,二次封装PicassoUtils实现微信精选 官网: http://square.github.i ...
- 强大的Android基地 论坛
强大的Android基地 论坛 [非常值得推荐,需要的自己动手去看...] 地址:http://www.eoeandroid.com/forum-15-1.html 大家论坛:http://club. ...
- Android实现跳转到应用市场进行版本更新功能
最近需要做应用版本更新功能,因为之前已经写过一篇版本更新的功能了,虽然请求接口还是用的HttpUrlConnection,想着改改现在应用使用的请求方式也挺快的嘛,心里开始暗喜,可以偷偷懒了,哈哈哈. ...
- android版本更新框架、新闻客户端、音乐播放器、自定义View、Github客户端、指南针等源码
Android精选源码 XUpdate 一个轻量级.高可用性的Android版本更新框架 Android一个可定制的圆形进度条 Android自定义View分享 打钩动画源码 android音乐文件播 ...
- [译]:Xamarin.Android平台功能——位置服务
返回索引目录 原文链接:Location Services. 译文链接:Xamarin.Android平台功能--位置服务 本部分介绍位置服务以及与如何使用位置提供商服务 Location Servi ...
- Android表情功能
Android表情功能 标签(空格分隔): 未分类 转载自:android edittext插入表情(基于socket方式),并对文中不正确的内容进行整理和修正 [TOC] 涉及知识点: Androi ...
- Cocos2d-x使用android拍照功能加载照片内存过大,通过另存照片尺寸大小解决
使用2dx调用android拍照功能,拍照结束后在2dx界面显示拍照照片,如果不对照片做处理,会出现内存过大的问题,导致程序崩溃,如果仅仅另存拍照照片,则照片质量大小均下降,导致照片不够清晰,后来发现 ...
- Android定位功能
不说废话,直接说说实现android定位有关的API吧. 这些API都在android.location包下,一共有三个接口和八个类.它们配合使用即可实现定位功能. 三个接口: GpsStatus.L ...
- Android定位功能(二)
在前文Android定位功能(一)中,已经大致介绍了一下在Android平台中,和定位功能相关的类,并举例获取了位置信息.但是前文是基于Criteria定制了一个标准,通过getBestProvide ...
随机推荐
- python在windows系统上创建文件
正确方法为:open("test1.txt",'wb')或open("test1.txt",'w') 以下是网上的方法创建遇到的问题 使用Python2.7在w ...
- nginx 缓存配置
nginx 缓存是可以将远程服务器上的内容缓存到本地,可以设置缓存大小,缓存时间,缓存目录等等 具体配置如下 proxy_cache_path /home/http/cache/ levels=: k ...
- Tkinter 鼠标键盘事件(一)
一: 鼠标事件 <Button-1> 鼠标左键单击 ...
- CloudCompare打开pcd文件
Ubuntu下CloudCompare稳定版本无法打开pcd点云文件,切换到edge版本即可 $ sudo snap refresh --edge cloudcompare
- Codeforces Round #530 (Div. 2) F 线段树 + 树形dp(自下往上)
https://codeforces.com/contest/1099/problem/F 题意 一颗n个节点的树上,每个点都有\(x[i]\)个饼干,然后在i节点上吃一个饼干的时间是\(t[i]\) ...
- [探究] [Luogu4550]收集邮票的概率意义
自认为这道题是一道比较简单的扩展题--?此处采用了和别的题解思路不同的,纯概率意义上的解法. 首先考虑一个简化版问题: 每次随机一个\([1,n]\)的整数,问期望几次能凑出所有数 这东西我写过一个b ...
- [LeetCode] 772. Basic Calculator III 基本计算器之三
Implement a basic calculator to evaluate a simple expression string. The expression string may conta ...
- git diff比较版本差异(生成补丁)
1.git diff [<options>] <commit> <commit> options 使用--name-only(git diff HEAD cd504 ...
- NOI 2010 海拔(最小割转最短路)
题意 https://www.lydsy.com/JudgeOnline/problem.php?id=2007 思路 首先可以发现一个结论,每个位置的海拔只有能是 \(0\) 和 \(1\) ,然后 ...
- eclipse 设置所有文件编码为UTF-8(最全)
如何修改eclipse工作空间的字符集以及项目的字符集? 第一种方式:修改eclipse的配置文件 打开{ECLIPSE_HOME}/eclipse.ini文件 在最后一行加上属性: -Dfile ...