- 博客(93)
- 资源 (10)
- 收藏
- 关注
转载 Glide源码分析
在早期的Android开发中,图片加载其实一直是个比较麻烦的问题。我们在处理图片时会遇到各种各样的问题:内存溢出、列表中图片错位等等。但到了如今,这些问题基本上是不会再遇到了。由于很多的优秀的图片加载框架帮我们处理了图片相关问题的痛点,所以现在Android中关于图片加载的部分变得非常简单。Android中最著名的图片加载框架就是Glide了,我们今天来深入研究一下Glide的源码。
2019-09-02 15:04:16
297
转载 Android SQLite -journal、-wal、-shm
在创建数据库时,不仅会生成xxx.db数据库文件,而且还会生成xxx.db-journal。这个-journal文件是用来干嘛的?其实这个文件是sqlite用来实现原子提交和回滚功能的。如果没有这个文件,SQlite将无法回滚未完成的事务,如果在事务中间发生崩溃或者掉电,那么整个数据库就有可能损坏。
2019-08-15 17:36:53
1227
转载 What are the best practices for SQLite on Android?
What would be considered the best practices when executing queries on an SQLite database within an Android app?
2019-08-15 17:21:21
280
转载 使用强大的 Mockito 测试框架来测试你的代码
Mockito 是一个流行 mock 框架,可以和JUnit结合起来使用。Mockito 允许你创建和配置 mock 对象。使用Mockito可以明显的简化对外部依赖的测试类的开发。
2019-07-07 15:23:15
342
转载 用 Dagger 2 实现依赖注入
Dagger 2 为你解析这些依赖,并生成把它们绑定在一起的代码。也有很多其它的 Java 依赖注入框架,但它们中大多数是有缺陷的,比如依赖 XML,需要在运行时验证依赖,或者在起始时造成性能负担。 Dagger 2 纯粹依赖于 Java 注解解析器以及编译时检查来分析并验证依赖。它被认为是目前最高效的依赖注入框架之一。
2019-07-07 12:03:15
236
转载 震惊!RxJava 5 个不为人知的小秘密
无论你是刚刚接触 RxJava,还是已经使用过一段时间,关于 RxJava 你总会有些新的知识要学。在使用 RxJava 框架过程中,我发现了 5 点不那么明显的知识,使我可以充分挖掘它的潜能。
2019-07-03 14:12:30
517
转载 SQLite并发操作下的分析与处理,解决database is locked,以及多线程下执行事务等问题
SQLite并发操作下的分析与处理,解决database is locked,以及多线程下执行事务等问题
2019-07-01 19:39:53
2048
原创 如何做一个自我要求的读者
拿同样的书给不同的人阅读,一个人却读得比另一个人好这件事,首先在于这人阅读的更主动,其次,在于他在阅读中的每一种活动都参与了更多的技巧。一个人越能运作这些活动,阅读的效果就越好。
2019-07-01 18:19:55
421
转载 生活不止眼前的苟且,还有诗和远方。如何理解?
诗和远方是人生前进的动力,苟且的生活无非只是自己另一面的信仰。两者都不是全部,两者也都不能够覆盖人生。你要做的,无非只是将诗和远方塑造的强大,将苟且生活塑造的完美,也就能成就最为完美的人生。
2019-06-29 12:16:55
1720
转载 【AAC 系列四】深入理解架构组件:ViewModel
ViewModel 被设计来管理跟 UI 相关的数据, 并且能够感知生命周期;另外 ViewModel 能够在配置改变的情况下让数据得以保留。ViewModel 重在以感知生命周期的方式 管理界面相关的数据。
2019-06-18 11:39:04
447
转载 【AAC 系列三】深入理解架构组件:LiveData
LiveData 是一个能够感知生命周期、可观察的数据持有类,它被设计成 ViewModel 的一个成员变量;可以以一个 更解耦的方式来共享数据。
2019-06-18 11:31:13
1476
转载 给 Android 开发者的 Flutter 指南
这篇文档旨在帮助 Android 开发者利用既有的 Android 知识来通过 Flutter 开发移动应用。如果你了解 Android 框架的基本知识,你就可以使用这篇文档作为 Flutter 开发的快速入门。
2019-06-18 10:55:51
598
转载 SQLite锁机制
转载:https://juejin.im/post/5a9bd187f265da23a334b077SQLite有一个加锁表,用来帮助不同的写数据库都能够在最后一刻加锁,保证最大的并发性。 SQLite有五种不同的锁状态:unlocked:最初状态,未加锁,连接还没有开始访问数据库 shared:共享锁,多个连接可以同时获得并保持shared锁,即多个连接可以同时从...
2019-06-17 17:11:42
2303
转载 Flutter 布局之 Row、Column
转载:https://juejin.im/post/5c6a5892e51d4542331c5528前言相关文章:Flutter学习目录 github地址:Flutter学习文章结构 CrossAxisAlignment Propery CrossAxisAlignment.start CrossAxisAlignment.center CrossAxisAlig...
2019-06-02 11:53:40
378
转载 Flutter 布局之 Padding、Align、Center
转载:https://juejin.im/post/5b1cb0c46fb9a01e62598d56本文主要介绍Flutter布局中的Padding、Align以及Center控件,详细介绍了其布局行为以及使用场景,并对源码进行了分析。1. PaddingA widget that insets its child by the given padding.1.1 简介...
2019-06-02 11:11:37
254
转载 Flutter 布局之 Container
转载:https://juejin.im/post/5ba1af55e51d450ea3632ab4在Flutter中,号称一切皆widget,手势是Widget,动画是Widget,UI更是Widget,今天我们就来说说Widgets里比较特殊的一个,Container。1. 参考文献Container初用起来很简单,但是里面的逻辑又有些复杂,我也不敢说完全吃透,所以本文初期版本还是...
2019-06-02 10:52:02
845
转载 【AAC 系列二】深入理解架构组件的基石:Lifecycle
Lifecycle 就是 AAC 中的一员,它能够帮助我们方便的管理 Activity 以及 Fragment 的生命周期。
2019-05-25 18:59:59
692
转载 【AAC 系列一】Android 应用架构新时代来临!
Android Jetpack 分为四大块:Architecture、UI、Foundationy 以及 Behavior
2019-05-25 18:51:05
200
转载 Android V1及V2签名原理简析
转载:https://juejin.im/post/5cd239386fb9a0320f7dfcbeAndroid为了保证系统及应用的安全性,在安装APK的时候需要校验包的完整性,同时,对于覆盖安装的场景还要校验新旧是否匹配,这两者都是通过Android签名机制来进行保证的,本文就简单看下Android的签名与校验原理,分一下几个部分分析下:APK签名是什么 APK签名如何保证APK信息...
2019-05-25 18:43:46
331
转载 如何画出一张合格的技术架构图?
转载:https://www.jiqizhixin.com/articles/2019-04-11-22当我们想用一张或几张图来描述我们的系统时,是不是经常遇到以下情况: 对着画布无从下手、删了又来? 如何用一张图描述我的系统,并且让产品、运营、开发都能看明白? 画了一半的图还不清楚受众是谁? 画出来的图到底是产品图功能图还是技术图又或是大杂烩? ...
2019-05-25 08:18:12
364
转载 深入了解Flutter的isolate(4) --- 使用Compute写isolate
转载:https://juejin.im/post/5c3a06f56fb9a049d37f54f40x00 前言前面讲了如何创建isolate,这篇文章讲创建isolate的另一种方法。0x01 使用isolates的方法使用isolates的方法种:高级API:Compute函数 (用起来方便) 低级API:ReceivePort0x02 Compute函数Comp...
2019-05-23 16:46:08
2966
转载 深入了解Flutter的isolate(3) --- Flutter的thread model(线程模型)
转载:https://juejin.im/post/5c3844fae51d4551ec60988e0x00 前言Flutter中有一个很重要的概念就是isolate,isolate是由一个线程实现的,实现isolate的线程由Flutter创建和管理,除了实现isolate的线程,Flutter还有其余的线程,本篇文章探讨Flutte的threading model(线程模型)。0x...
2019-05-23 16:40:43
926
1
转载 彻底理解安卓应用无响应机制
转载:http://gityuan.com/2019/04/06/android-anr引言不论从事安卓应用开发,还是安卓系统研发,应该都遇到应用无响应(ANR,Application Not Responding)问题,当应用程序一段时间无法及时响应,则会弹出ANR对话框,让用户选择继续等待,还是强制关闭。绝大多数人对ANR的了解仅停留在主线程耗时或CPU繁忙会导致ANR。面试过无数...
2019-05-21 21:02:14
1996
转载 网易新闻客户端Flutter混合开发实践
转载:http://dy.163.com/v2/article/detail/EA0O4PQ705376OPS.html Flutter简单介绍 Flutter是Google打造的UI工具包,帮助开发者通过一套代码同时在iOS和Android上构建媲美原生体验的精美应用。 开发者可以使用Flutter开始一个全新的应用,也可以把Flutter理解为应用内置的一个引擎,把这个引擎引...
2019-05-19 21:55:49
1380
转载 Flutter混合开发——FlutterBoost
转载:https://www.yuque.com/xytech/flutter/hhnyho为什么需要混合方案具有一定规模的App通常有一套成熟通用的基础库,尤其是阿里系App,一般需要依赖很多体系内的基础库。那么使用Flutter重新从头开发App的成本和风险都较高。所以在Native App进行渐进式迁移是Flutter技术在现有Native App进行应用的稳健型方式。闲鱼在实...
2019-05-19 21:50:20
1143
转载 Android 架构组件(一)
转载:https://www.yuque.com/liangfei/programming/hr8o47Google 为了帮助 Android 开发者更快更好地开发 App,推出了一系列组件,这些组件被打包成了一个整体,称作Android Jetpack,它包含的组件如下图所示:老的 support 包被整合进了 Jetpack,例如上图 Foundation 模块的 App...
2019-05-19 21:44:09
678
1
转载 二进制
转载:http://rkhcy.github.io/2019/03/12/binary什么是二进制二进制是一套计数方法,每个位置上的数有 2 种可能(0 - 1);二进制是计算机的执行语言,但是早在计算机出现前就存在这套计数方法,最早可追溯到古埃及。在日常生活中,我们使用的是十进制,每个位置上的数有 10 种可能(0 - 9),在了解二进制前,先看下十进制是如何运作的。如十进制下的 1...
2019-05-19 21:34:16
33494
4
转载 Matrix TraceCanary
转载:https://mp.weixin.qq.com/s/W4-1tfepKg2XMYvVn62B-Q什么是卡顿什么是卡顿,很多人能马上联系到的是帧率 FPS (每秒显示帧数)。那么多低的 FPS 才是卡顿呢?又或者低 FPS 真的就是卡顿吗?(以下 FPS 默认指平均帧率)其实并非如此,举个例子,游戏玩家通常追求更流畅的游戏画面体验一般要达到 60FPS 以上,但我们平时看到的大部...
2019-05-06 12:29:59
1445
转载 史上最全App瘦身实践
转载:https://mp.weixin.qq.com/s/_d5ztuOv9PxMrbK53FZiSQ目标业务方和开发都希望app尽量的小,本文会给出多个实用性的技巧来帮助开发者进行app的瘦身工作。瘦身和减负虽好,但需要注意瘦身对于项目可维护性的影响,建议根据自身的项目进行技巧的选取。分析app组成结构做瘦身之前一定要了解自己app的组成结构,然后要有针对性的进行优化,并且要逐...
2019-05-06 11:38:49
1414
转载 如何简单快速搭建 Android 大仓
转载:https://yrom.net/blog/2019/01/02/simple-way-to-construct-monorepo-for-android/书接上文,上回提到 B 站Android团队为了解决组件化后协作上的问题,已经采用了大仓(monorepo)的方案来组织代码。国内实践大仓的团队少之又少,更别提 Android 的大仓了,几乎没有来自其它团队的可借鉴经验。在这条路...
2019-05-04 17:29:30
746
转载 B 站 Android 代码库的演进历程
转载:https://yrom.net/blog/2018/10/18/evolution-of-android-codebase-organization-in-bilibili/早在2012年,B 站 Android APP便已上线。当时开发者不过一人,而如今,业务线众多、隶属不同团队的Android 端开发人员数以百计。从单兵作战到百花争鸣,代码库的组织管理也随之经过数次的改革、演进。...
2019-05-04 17:25:14
314
转载 《Android插件化技术——原理篇》
转载:https://mp.weixin.qq.com/s/Uwr6Rimc7Gpnq4wMFZSAag?utm_source=androidweekly&utm_medium=website | 导语 插件化技术最早从2012年诞生至今,已经走过了5个年头。从最初只支持Activity的动态加载发展到可以完
2018-01-27 09:33:39
8190
转载 移动 APP 网络优化概述
转载:http://blog.cnbang.net/tech/3531/?utm_source=androidweekly&utm_medium=website一般开发一个 APP,会直接调用系统提供的网络请求接口去服务端请求数据,再针对返回的数据进行一些处理,或者使用AFNetworking/OKHttp这样的网络库,管理好请求线程和队列,再自动做一些数据解析,就结束了。但对于一些大型 AP
2018-01-27 09:26:32
462
转载 Android APP 性能优化的一些思考
今天想说的重点是Android APP 性能优化,也就是在开发应用程序时应该注意的点有哪些,如何更好地提高用户体验。一个好的应用,除了要有吸引人的功能和交互之外,在性能上也应该有高的要求,即时应用非常具有特色,在产品前期可能吸引了部分用户,但是用户体验不好的话,也会给产品带来不好的口碑。
2018-01-03 11:36:50
330
原创 vlayout 上滑加载更多问题
LoadMoreWrapper在不改动 RecyclerView 原有 adapter 的情况下,使其拥有加载更多功能和自定义底部视图。
2017-11-21 13:52:53
3168
转载 解析ConstraintLayout的性能优势
自从在去年的 Google I/O 大会上发布 ConstraintLayout 以来,我们一直不断改进该布局的稳定性,完善对布局编辑器的支持。我们还针对 ConstraintLayout 增加了一些新功能,帮助您构建不同类型的布局,例如引入链和按比例设置大小。
2017-09-12 10:45:58
5040
转载 自己动手编译Android源码(超详细)
作为android developer人人都应该有一份自己Android源码,这样我们就可以随时对自己有疑惑的地方通过亲手调试来加强理解。android源码编译的四个流程:1.源码下载;2.构建编译环境;3.编译源码;4运行.
2017-08-10 19:48:49
38014
6
转载 Android InputMethodManager 导致的内存泄露及解决方案
解决Android InputMethodManager 导致的内存泄露的问题
2017-07-22 13:11:14
1459
转载 利用Android Studio、MAT对Android进行内存泄漏检测
android开发中难免会遇到各种内存泄漏,如果不及时发现处理,会导致出现内存越用越大,可能会因为内存泄漏导致出现各种奇怪的crash,甚至可能出现因内存不足而导致APP崩溃。Android的内存泄漏分析工具常用有Android Studio和基于eclipse的MAT(Memory Analyzer Tool)。通过两者配合,可以发挥出奇妙的效果。
2017-07-12 20:13:52
334
android天气预报小程序
2017-09-12
Struts2+Jquery实现ajax并返回json类型数据
2014-09-06
Android自动更新在通知栏下载
2013-10-12
Android应用增量升级(Smart App update)
2013-08-27
水星MW150U的无线网卡 Linux
2013-04-09
使用命令行+Ant编译和运行Android模拟器
2011-12-18
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人