上一篇构建的数据库连接池,今天拿来在项目中测试时,发现在处理高并发的问题上有很明显的缺点。 现在回过头来看我们上一篇的代码: public class ConnectionPool { /*线程安全数组*/ privat…
分类:Android
Kotlin协程笔记
Kotlin语言基础笔记 Kotlin流程控制语句笔记 Kotlin操作符重载与中缀表示法笔记 Kotlin扩展函数和扩展属性笔记 Kotlin空指针安全(null-safety)笔记 Kotlin类型系统笔记 Kotl…
也谈DataBinding遇到的恶心的Bug,踩坑践行者。
项目中遇到的一个问题,分享出来,希望大家可以不踩这个坑 前话,公司是用Mac开发,在家里有时候会用Win加加班,公司的项目有几个使用了Databinding,在Mac上运行都是没有问题的,我推到Git上,回家拉下来,其中…
谈谈 Fragment 的用法之 Fragment 实现 Tab 切换中的那些事
Fragment在Android开发中占据着不可替代的作用。举一些常见的应用场景: 各种tab切换页面 解耦Activity 业务复用 今天我们就来谈谈Fragment在Tab切换中的状态变化等。这里我们就拿QQ来分析Q…
Gradle构建Android项目
签名 gradle本身支持直接签名,只需要在releas部分添加如下代码即可 signingConfigs { debug { } release { storeFile file("../yourapp.keystor…
【译】使用 Android Architecture Components 的五个常见误区
前言 本文翻译自【5 common mistakes when using Architecture Components】,介绍了在使用 Android Architecture Components 的五个常见误区。…
充满矛盾的类——SparseArray
虽然类名叫“稀疏数组”,但它其实非常“紧实”。这一篇将会通过分析SparseArray的源码来展现这个类的矛盾之处。 (ps: 下文中的 粗斜体字 表示引导源码阅读的内心戏) 还记得分析RecyclerView缓存机制中…
一点见解: Android嵌套滑动和NestedScrollView
问题分析 嵌套滑动一直是Android中比较棘手的问题, 根本原因是Android的事件分发机制导致的.导致嵌套滑动难处理的关键原因在于当子控件消费了事件, 那么父控件就不会再有机会处理这个事件了, 所以一旦内部的滑动控…
Retrofit2.0 再次封装
简书默认的不是markdown 编辑器还不能修改,故转移一下。 mvp+rxjava2: http://www.jianshu.com/p/158a77fce9df retrofit2 封装查看这里:http…
Android自定义全局异常捕获
众所周知,Android程序在运行时遇到未处理的错误,会弹出类似程序异常退出之类的dialog,然后自动关闭。 那么这里介绍捕获全局未知异常和修改那个弹出的dialog的方法。 首先,如很多网上的博客所言在程序的Appl…
View之Paint、Canvas、Path笔记
Paint 属性配置 setAntiAlias:抗锯齿 setDither:抗抖动 setColor,setARGB,setAlpha:颜色和显示 setShadowLayer(10f, 11f,5f, Color.YE…
[译]使用 Espresso 测试一个有序列表
原文:Testing a sorted list with Espresso 作者:Egor Andreevici 译者:lovexiaov Espresso 是一个十分强大的工具,可以用它为 Android 编写验收测…