摘要:1. ViewStub 在开发应用程序的时候,经常会遇到这样的情况,会在运行时动态根据条件来决定显示哪个View或某个布局。 那么最通常的想法就是把可能用到的View都写在上面,先把它们的可见性都设为View.GONE,然后在代码中动态的更改它的可见性。这样的做法的优点是逻辑简单而且控制起来比较灵活
阅读全文
摘要:1. 线程池简介 多线程技术主要解决处理器单元内多个线程执行的问题,它可以显著减少处理器单元的闲置时间,增加处理器单元的吞吐能力。 假设一个服务器完成一项任务所需时间为:T1 创建线程时间,T2 在线程中执行任务的时间,T3 销毁线程时间。 如果:T1 + T3 远大于 T2,则可以采用线程池,以提
阅读全文
摘要:1. IntentService原理 IntentService是一种特殊的Service,既然是Service,使用的时候记得在AndroidManifest清单文件中注册。 并且它是一个抽象类,因此必须创建它的子类才能使用IntentService,IntentService可用于执行后台耗时的
阅读全文
摘要:1. HandlerThread Android HandlerThread 完全解析 Handler与HandlerThread区别,HandlerThread应用(对比AsyncTask) 备注: Handler机制的分发中心就在Looper中的loop(),loop()方法是一个阻塞方法(里面
阅读全文
摘要:1. 选项(Options) (1)作用:网络测试或者调试,可选 (2)格式:0~40 bytes 2. 选项类型:
阅读全文
摘要:1. 分片(Fragmentation) 适应在不同的MTU的物理网上传输. 备注: MTU:最大传输单元,Maximum Transmission Unit,它是指一种通信协议的某一层上面所能通过的最大数据包大小(以字节为单位)。 2. 分片操作(Fragmentation Operation)
阅读全文
摘要:1. AndroidDrawableFactory 一个生成Android应用所需尺寸图片的工具。 托管在Github之中: https://github.com/tizionario/AndroidDrawableFactory
阅读全文
摘要:1. 数据报(Datagram)格式: 2. 长度字段 (1)首部长度字段,HLEN,4 bits 以 4 字节(即32bits)为单位 取值:5~15(即首部长度为20 ~ 60 bytes) (2)总长度字段,Total length, 16 bits 以字节单位 首部长度(即 4 * HLEN
阅读全文
摘要:1. IP协议:(网际协议) 2. IP协议(不可靠无连接数据报协议) (1)连接 vs. 可靠性 连接:面向连接、无连接 可靠:差错控制、流量控制等 面向连接不一定保证可靠,无连接不一定不可靠 在连接上容易实现可靠性机制 (2)IP通信 无连接:跨越多个异构物理网 > 通用性 不可靠:尽最大努力交
阅读全文
摘要:1. 路由选择模块 和 路由表的设计 2. 路由选择算法(路由模块在路由表中查找算法) (1)用IP分组中的目的IP地址查找路由表,使用匹配表项的下一跳地址完成分组交付 (2)匹配条件: dIP & Mask(i) = Net(i) (3)查找方法 顺序查找,直到找到第一个匹配表项 (4)关键:路由
阅读全文
摘要:1. 静态路由选择: Static routing 管理员手工设置 管理员手动更新 不能保证路由的一致性和及时性 管理性强 没有路由开销 小型、变化缓慢网络 2. 动态路由选择 Dynamic routing 路由协议自动发现 路由协议自动更新 保证路由的一致性和及时性 管理性弱 产生一定的路由开销
阅读全文
摘要:1. 路由选择的方法 (1)基本思想 不是收到IP分组后才能为其选路,而是预先获得所有的目的的路由(Routing Protocol) IP报文按预定的路由转发(route table) (2)预定路由:路由表(route table) 路由表 也可称为 转发表(forwarding table)
阅读全文
摘要:1. 直接交付 和 间接交付 直接交付:分组的目的与分组的发送接口在同一个IP网络中 间接交付:分组的目的与分组的发送接口在不同的IP网络中 如图: 2. 交付过程: (1)交付方式判别 分组的目的IP与其发送接口是否在同一个IP网络中,目的IP & 发送口掩码 =?= 发送接口IP & 发送口掩码
阅读全文
摘要:1. 幻读 幻读(Phantom Read)又称为虚读,是指在一个事务内两次查询中数据条数不一致,幻读和不重复读有些类型,同样是在两次查询过程中,不同的是,幻读是由于其他事务做了插入记录的操作,导致记录数有所增加。 例如:银行在做统计报表时统计account表中所有用户的总金额时候,此时总共有三个账
阅读全文
摘要:1. 不可重复读 所谓的不可重复读(Non-Repeatable Read)是指事务中两次查询的结果不一致,原因是在查询的过程中其他事务做了更新的操作。 例如,银行在做统计报表的时候,第一次查询a账户有1000元,第二次查询a账户有900元,原因是统计期间a账户取出了100元,这样导致多次统计报表的
阅读全文
摘要:1. 大家好,在上一篇文章当中,我们学习了Android属性动画的基本用法,当然也是最常用的一些用法,这些用法足以覆盖我们平时大多情况下的动画需求了。但是,正如上篇文章当中所说到的,属性动画对补间动画进行了很大幅度的改进,之前补间动画可以做到的属性动画也能做到,补间动画做不到的现在属性动画也可以做到
阅读全文
摘要:1. 属性动画(Property Animation)引入: 在手机上去实现一些动画效果算是件比较炫酷的事情,因此Android系统在一开始的时候就给我们提供了两种实现动画效果的方式,逐帧动画(frame-by-frame animation)和补间动画(tweened animation)。 逐帧
阅读全文
摘要:1. 事务的隔离级别引入: 数据库是多线程并发访问的,所以很容易出现多个线程同时开启事务的情况,这样的就会出现脏读、重复读以及幻读的情况。在数据库操作中,为了有效保证并发读取数据的正确性,需要为事务设置隔离级别。在MySQL中,事务有4种隔离级别,如下: (1)Read Uncommitted Re
阅读全文
摘要:1. 脏读 所谓的脏读就是指一个事务读取了另一个事务未提取的数据。 试想一下:a账户要给b账户100元购买商品,如果a账户开启一个事务,执行下面的update语句做了如下转账的工作: 如果a账户先不提交事务,通知b账户来查询,由于b的隔离级别比较低,此时就会读取a事务中未提交的数据,发现a确实给自己
阅读全文
摘要:1. 在操作事务的时候,如果发现当前事务操作是不合理的,此时只要还没有提交事务,就可以通过回滚取消当前事务,接下来就针对事务的回滚进行详细讲解。 2. 为了演示回滚操作,在上一个笔记案例基础之上,此时a账户有1000元,b账户也有1000元,开启一个事务,通过update语句将a账户的100元转给b
阅读全文
摘要:1. 现实生活中,许多操作都是需要用户确认的,例如用户删除一个文档,删除时候会弹出一个提示对话框,包含"确认"和"取消"。同样的道理,在数据库中有些命令在使用的时候需要被确认的,例如事务中的操作就需要用户的确认,当用户确认提交了,事务操作才能被执行,这个过程就是手动提交的过程。 接下来我们针对事务提
阅读全文
摘要:1. 事务概念引入: 现实生活中,我们往往经常会进行转账操作,转账操作可以分为两部分来完成,转入和转出。只有这两部分都完成了才可以认为是转账成功。在数据库中,这个过程是使用两条语句来完成的,如果其中任意一条语句出现了异常没有执行,则会导致两个账号的金额不同步,造成错误。 为了防止上面可能出现的情况,
阅读全文
摘要:1. StringUtils介绍: StringUtils是apache commons lang库(http://commons.apache.org/proper/commons-lang/download_lang.cgi)旗下的一个工具类,提供了很多有用的处理字符串的方法。 关于String
阅读全文
摘要:1. Logger Logger是android是一个简单、漂亮、功能强大的Android日志程序。 日志程序提供了 : 线程信息Thread information 类信息Class information 方法信息Method information 漂亮打印的JSON内容Pretty-prin
阅读全文
摘要:1. AppMsg 优雅的弹出类似Toast的消息提示,支持3种状态Alert(警告),Confirm(确认)以及Info(消息)。 2. AppMsg使用: (1)AppMsg下载地址: https://github.com/johnkil/Android-AppMsg (2)下载成功之后,解压如
阅读全文
摘要:详见为知笔记:Android / Android用户界面优化 / Android SlidingMenu菜单栏程序设计
阅读全文
摘要:1. NineOldAndroids 自Android 3.0以上的版本,SDK新增了一个android.animation包,里面的类都是跟动画效果实现相关的,通过Honeycomb API,能够实现非常复杂的动画效果。但如果开发者想在3.0以下的版本中也能使用到这套API,那么Nine Old
阅读全文
摘要:1. android-percent-support-lib-sample介绍: 谷歌最新的百分比布局库的示例项目。其实LinearLayout的layout_weight也能实现百分比效果,不过这个更直接。 android-percent-support-lib-sample项目地址: https
阅读全文
摘要:Android进阶笔记17:3种JSON解析工具(org.json、fastjson、gson)
阅读全文
摘要:Android进阶笔记06:Android 实现扫描二维码实现网页登录
阅读全文
摘要:1. android-async-http 简介 HttpClient拥有众多的API,实现稳定,bug很少。 HttpURLConnection是一种多用途、轻量的HTTP客户端,使用它来进行HTTP操作可以适用于大多数的应用程序。HttpURLConnection的API比较简单、扩展容易。不过
阅读全文
摘要:1. BitmapUtils 作用: 加载bitmap的时候无需考虑bitmap加载过程中出现的oom和android容器快速滑动时候出现的图片错位等现象; 支持加载网络图片和本地图片; 内存管理使用lru算法,更好的管理bitmap内存; 可配置线程加载线程数量,缓存大小,缓存路径,加载显示动画等
阅读全文