- 博客(19)
- 资源 (1)
- 收藏
- 关注
原创 Android4种网络连接方式HttpClient、HttpURLConnection、OKHttp和Volley优缺点和性能对比
比较的指标:1、cpu2、流量3、电量4、内存占用 5、联网时间 功能点:1、重试机制 2、提供的扩展功能 3、易用性 4、是否https 5、是否支持reflect api,OkHttp有配套方法 6、缓存、重试 7、cookie支持session id会话支持 8、弱网性能和稳定性 9、超时时间,几种超时时间 连接超时,响应
2016-06-30 22:33:34 40680 7
原创 最新的Android版本和API Level的对应关系表
在项目开发过程中,经常会用到API Level和Android平台版本的对照,来进行一些方法的调用,现在就把对照表贴出来,供大家参考。Platform VersionAPI LevelVERSION_CODENotesAndroid 6.023MPlatform HighlightsAndroi
2016-06-30 21:33:10 6372
翻译 GOF23种设计模式精解
创建型1. Factory Method(工厂方法)2. Abstract Factory(抽象工厂)3. Builder(建造者)4. Prototype(原型)5. Singleton(单例)结构型6. Adapter Class/Object(适配器)7. Bridge(桥接)8. Composite(组合)9. Decorator(装饰)
2016-06-28 21:14:32 27456 1
原创 Android热修复(动态加载)方案汇总
整理了以下动态加载的方案,便于在项目中使用时查阅:Dexposed github (https://github.com/alibaba/dexposed)AndFix github (https://github.com/alibaba/AndFix)Nuwa github (https://github.com/jasonross/Nuwa)
2016-06-25 23:04:54 1585
原创 CTO、技术总监、首席架构师的区别
一、高级程序员如果你是一个刚刚创业的公司,公司没有专职产品经理和项目经理,你就是公司的产品经理,你如果对你现在的开发员能力不满,那么你只需要的是一个高级程序员。你定义功能、你做计划推进和管理,他可以带1-2个副手把你规划的功能实现了,他是主力干活者,有技术难题也是他来亲自攻克解决。所以,一个高级程序员,他的职责很清晰:1、负责核心
2016-06-25 21:49:44 77694 9
转载 安卓App热补丁动态修复技术介绍
1.背景当一个App发布之后,突然发现了一个严重bug需要进行紧急修复,这时候公司各方就会忙得焦头烂额:重新打包App、测试、向各个应用市场和渠道换包、提示用户升级、用户下载、覆盖安装。有时候仅仅是为
2016-06-25 19:56:40 560
原创 各大HotFix热补丁方案分析和比较
最近开源界涌现了很多热补丁项目,但从方案上来说,主要包括Dexposed、AndFix、ClassLoader(来源是原QZone,现淘宝的工程师陈钟,在15年年初就已经开始实现)三种。前两个都是阿里巴巴内部的不同团队做的(淘宝和支付宝),后者则来自腾讯的QQ空间团队。开源界往往一个方案会有好几种实现(比如ClassLoader方案已经有不下三种实现了),但这三种方案的原理却徊然不同,那么让我
2016-06-25 17:25:12 3021
原创 好用的Markdown编辑器汇总
Markdown 是一种简单的、轻量级的标记语法。用户可以使用诸如 * # 等简单的标记符号以最小的输入代价生成极富表现力的文档。 Markdown具有很多优点:写作中添加简单符号即完成排版,所见即所得。让你专注于文字而不是排版。格式转换方便,Markdown 的文本你可以轻松转换为 html、pdf等。可以保存称纯文本 支持Markdown的编辑器太多,功能也不完全一
2016-06-24 18:19:35 1543
原创 Fresco-FaceBook推出的Android图片加载库
在Android设备上面,快速高效的显示图片是极为重要的。过去的几年里,我们在如何高效的存储图像这方面遇到了很多问题。图片太大,但是手机的内存却很小。每一个像素的R、G、B和alpha通道总共要占用4byte的空间。如果手机的屏幕是480*800,那么一张屏幕大小的图片就要占用1.5M的内存。手机的内存通常很小,特别是Android设备还要给各个应用分配内存。在某些设备上,分给Facebook A
2016-06-23 14:02:22 4034
原创 Android WebView 缓存机制和模式详解
当我们加载Html时候,会在我们data/应用package下生成database与cache两个文件夹:我们请求的Url记录是保存在webviewCache.db里,而url的内容是保存在webviewCache文件夹下.WebView中存在着两种缓存:网页数据缓存(存储打开过的页面及资源)、H5缓存(即AppCache)。一、网页缓存1、缓存构成/dat
2016-06-16 02:10:48 9508 2
原创 Android的OkHttp开源框架的使用方法
前段时间研究了下Android里面非常火爆的网络请求库OkHttp,这篇文章主要来介绍下OkHttp的常用请求的使用方式,后面一篇文章会介绍本人基于OkHttp封装的一个操作更简单、更适用于项目的网络请求库TigerOkHttp,其源码及Demo地址为:https://github.com/huyongli/TigerOkHttp一、说明对于OkHttp的基本介绍,以及为什么要使用
2016-06-16 01:42:10 2924 2
原创 Android 4.4以上使用HttpURLConnection底层使用OkHttp实现的源码分析
研究了一下HttpURLConnection的源码: 在使用的时候都是通过URL.openConnection()来获取HttpURLConnection对象,然后调用其connect方法进行链接,所以先从URL.penConnection()入手:/** * Returns a new connection to the resource referred to by thi
2016-06-15 15:07:45 20457 4
原创 Android HTTP请求用HttpUrlConnection与HttpClient比较
在安卓和JAVA应用开发中需要访问网络,少不了要提交HTTP请求,而基本上目前有两个实现方式:HttpUrlConnection(即URL.openConnection)和HttpClient。 网上不少人都认为HttpClient更好,理由是功能更强,BUG更少,更容易控制细节。但我个人认为普通JAVA人员可选用HttpClient,安卓开发人员则应该使用HttpUrlConnec
2016-06-13 23:49:36 2869 1
原创 Android可以拖动位置的ListVeiw
参考网址:https://github.com/bauerca/drag-sort-listview
2016-06-10 22:51:15 1203
原创 Alibaba阿里巴巴开源软件列表
整理和分享我大阿里巴巴的开源项目的相关网址:Git Hub上的开源软件网址:1、https://github.com/alibaba阿里巴巴开源技术汇总:115个软件2、https://yq.aliyun.com/articles/53900挑战React Native:阿里开源 Weex,用 Web 方式开发 Native 性能体验应用3、ht
2016-06-10 22:27:21 2482
原创 GOF 23种设计模式
设计模式目录创建型1. Factory Method(工厂方法)2. Abstract Factory(抽象工厂)3. Builder(建造者)4. Prototype(原型)5. Singleton(单例)结构型6. Adapter Class/Object(适配器)7. Bridge(桥接)8. Composite(组合)9. Decorator(装
2016-06-09 18:55:04 8911
转载 Android内核解读-应用的安装过程
前言我们知道,在android手机上安装一个apk很简单,只要打开apk文件,默认就会弹出安装界面,然后点击确定,经过若干秒后,apk就安装成功了,可是你知道apk的安装过程是什么吗?你知道android系统在安装一个apk的时候都干了什么吗?在本文中,将一一解答这个问题。简单来说,apk的安装过程分两步:第一步,将apk文件复制到程序目录下(/data/app/);第二步,为应用创建数据
2016-06-07 18:19:26 696
原创 Android 插件化方案(动态加载)总结
1、作用 大多数Android开发人员开始接触这个问题是因为 App 爆棚了,方法数超过了一个 Dex 最大方法数 65535 的上限,因而便有了插件化的概念,将一个 App 划分为多个插件(Apk 或相关格式) 常用的其他解决方法还包括:Google Multidex,用 H5 代替部分逻辑,删无用代码,买付费版的 Proguard
2016-06-05 22:45:52 3336 1
转载 java线程池的原理及实现
1、线程池简介: 多线程技术主要解决处理器单元内多个线程执行的问题,它可以显著减少处理器单元的闲置时间,增加处理器单元的吞吐能力。 假设一个服务器完成一项任务所需时间为:T1 创建线程时间,T2 在线程中执行任务的时间,T3 销毁线程时间。 如果:T1 + T3 远大于 T2,则可以采用线程池,以提高服务器性能。 一个线程
2016-06-02 20:45:44 578
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人