理解Android存储系统架构node
本文主要介绍跟存储相关的模块MountService和Vold的总体流程与架构设计.MountService:Android Binder服务,运行在system_server进程,用于跟Vold进行消息通讯,好比MountService向Vold发送挂载SD卡的命令,或者接收到来自Vold的外设热插拔事件。Vold:全称为Volume Daemon,用于管理外部存储设备的Native守护进程,这是一个很是重要的守护进程,由NetlinkManager,VolumeManager,CommandListener这3部分组成。react
Android 着色器 Tint 研究android
Tint 这个东西 主要用来减小apk体积的,好比说我如今有一个textview,他的背景图 有两种,一种是当得到焦点时显示的a图,另外一种是 失去焦点时显示的b图。相信你们开发的时候 这种需求作过不少次了,咱们通常都会发现 这种a图和b图 除了颜色不同,其余都是同样的,可是咱们作的时候呢,一般是找ui要了两张图。若是要适配分辨率的话 颇有可能图片会更多,并且在切换的时候 由于是从新加载一次bitmap 效率也会降低不少。因此谷歌就给了一套解决方案 这个就是tint了。他的目的就是当你发现有这种需求的时候,只须要 放一张图 在apk里便可,当你须要改变背景图的颜色的时候 就用Tint便可!git
PathMeasure之迷径追踪github
Path,不管是在自定义View仍是动画,都占有举足轻重的地位。绘制Path,能够经过Android提供的API,或者是贝塞尔曲线、数学函数、图形组合等等方式,而要获取Path上每个构成点的坐标,通常须要知道Path的函数方法,例如求解贝塞尔曲线上的点的De Casteljau算法,但对于通常的Path来讲,是很难经过简单的函数方法来进行计算的,那么,如何来定位任意一个给定Path的任意一个点的坐标呢?web
图片之旅算法
在开始图片之旅以前,先来聊聊图形学的一些基础,这些在图片处理的过程当中或多或少都要接触。1.像素点:计算机显示的图像是由像素点组成的,每一个像素点有RGB三种颜色,这三种颜色按必定比例混合就能够获得实际的色值。图片尺寸为640 x 480,表明图片水平有640个像素点,垂直有480像素点。2.color depth、bit depth: 每一个像素RGB若各用8位表示,bit depth就是8bit,那么这个像素就用24位表示,color depth就是24bit。一个像素color depth越深,像素表达的颜色和亮度的位数越多,文件就越大。安全
学习React的好处就是,学了一遍以后,可以写 web, node 直出,以及 native,可以适应各类纷繁复杂的业务。须要轻量快捷的,直接能够用 Reactjs;须要提高首屏时间的,能够结合 React Server Render;须要更好的性能的,能够上React Native。可是,这其实暗示学习的曲线很是陡峭。单单是 Webpack+ React + Redux 就已够一个入门者够呛,更况且还要兼顾直出和手机客户端。不是通常人能 hold住全部端。
在 Android Nougat (7.0) 中,咱们更改了 Android 处理受信任证书颁发机构 (CA) 的方式,从而提供了更安全的系统默认设置,保障了应用流量安全。大多数应用和用户不受这些变动的影响,也不须要采起任何行动。这些变动包括:1.安全而简单的 API,用于信任自定义 CA。2.默认状况下,针对 API 级别 24 及以上版本而开发的应用再也不信任用户或管理员为安全链接添加的 CA。3.全部运行 Android Nougat 的设备均提供同一套标准化的系统 CA,而没有任何设备特定的自定义 CA。
在Android中,通常来讲,开发者只考虑二阶贝塞尔曲线和三阶贝塞尔曲线,SDK也只提供了二阶和三阶的API调用。对于再高阶的贝塞尔曲线,一般能够将曲线拆分红多个低阶的贝塞尔曲线,也就是所谓的降阶操做。下面将经过代码来模拟二阶和三阶的贝塞尔曲线是如何绘制和控制的。
AS的代码结构和eclipse彻底不一样,它为开发者提供了单工程多module的形式。但多创建一个module就须要多维护一个module。因此若是仅仅是为了方便写代码而创建一个module是不可取的,我强烈建议先作好项目结构的梳理再考虑是否须要创建module。
ADB Client in pure Java.
Interactive Extensions for Java
Create React apps with no build configuration.
一个崩溃日志上传框架,当App崩溃的时,把崩溃信息保存到本地的同时,自动给GitHub提交崩溃issue,你只须要几句,就能完成全部配置
Android水波动画帮助类,一行代码实现View显示/隐藏/startActivity特效。(对Android ViewAnimationUtils.createCircularReveal() 方法的封装)
碎纸机动画效果
微信热更新方案实践
一个 简单、优雅、易用 的滚动数字控件!
A cool and elegant Submit Button
A beautiful gift Cards for android
Android console implementation
一个简单实现的自定义圆环进度条,可以使用于文件的上传下载图片加载等地方
3D立体无限旋转滚动容器
一个实现透明状态栏的兼容库,支持 Api 19 及其以上
一个快速跳跃分组的侧边栏控件
The main goal is working with svg to make profile pictures.
Android Material Design "BottomNavigation" design pattern implementation
字体压缩神器
一个 能够将 Markdown 格式直接生成PPT,编辑方便,兼容性好,还能够进行版本管理的工具
一个命令行工具被设计来练习你的 Git 技能,它把日常可能遇到的一些场景都实例化,变成一个一个的关卡,一共有 55 个关卡,因此将他形象的形容为 Git 游戏
选择一个App的名字是一个排它性的决策,由于它只能有一个。而不管你最后用了哪个,都意味着要放弃全部其余的选择。也就是说,一个最终被选择的好名字,它应该是有战略的。