这篇作为XDroid UI系列的最后一篇,我想谈谈在UI布局重构时的几个思考和取舍。 四个月前,接手公司项目,随即进行了一系列的重构,主要阵对底层库如UI、Cache、Event、Net等。 对于UI,我们一定会面对一个…
分类:Android
Android面试--我的2016校招季
写在前面 渣硕一枚,由于个人兴趣和实验室的项目开始接触Android,毕业有幸拿到几个offer,在这里分享一下,记录自己的校招历程。 准备阶段 准备主要分为三个方面:知识,算法和经验 知识方面: Android基础,J…
源码分析Android的图片加载库 Glide的一次加载过程
基于com.github.bumptech.glide:glide:3.7.0 这是一篇快速过源码,而非品味细枝末节的分析,否则简书的2W byte的限制,可能要分好几期才能彻彻底底的讲完。 引入 在github上(ht…
遭遇「薪酬倒挂」,员工该如何应对?
对多数企业来说,员工间的收入比较往往被列为禁忌话题。因公因私,老板都不希望员工互相打探薪酬状况。但实际工作里,人们总是能以各自的方式探知彼此的收入。这样一来,公司管理随之产生一系列潜在的隐患。 在这些隐患中,最直接也最为…
bringToFront 的意外发现
原文地址在博客圆,已经不用了,迁移过来。 最近在项目用到了View.bringToFront()方法,简单看了下其源码,在这儿总结一下。 bringToFront方法在SDK中的说明是“Change the view…
前言 android集成unity做AR项目
最近刚刚接触AR,公司需要做一款AR产品(萌萌鸡AR,欢迎各大平台下载)项目从确定需求到上线,一共三个月,和iOS同事基本上都是加班,时间有点赶,项目上线后感觉还是有些瑕疵,但是功能都已经实现了,但是考虑到时间的关系,还…
构造函数之初始化操作(1)
全局变量和局部变量的区别:全局变量是作用,在定义的时候可以不给于初始值;而局部变量作用于当前的方法,在定义的是要对齐进行设置初始值。当你定义一个局部变量的时候,若你没有给它进行初始化的操作是,系统会给出一条提示信息,提示…
Android HAL 硬件抽象层加载过程
硬件厂商处于保护核心代码,会将核心实现以so库的形式出现在HAL层,当需要时HAL会自动调用相关的共享库。 共享库的格式 <MODULE_ID>.variant.so id: 为硬件模块的唯一编号 varia…
React Native 性能优化之可取消的异步操作
React Native 性能优化之可取消的异步操作 本文出自《React Native 研究与实践》系列文章。 概述 在项目开发中离不了的需要进行一些异步操作,这些异步操作在改善用户体验的同时也带来了一些性能隐患。 比…
mmkv框架源码浅析(上)
这部分主要是分析微信开源的mmkv框架,它的介绍在这里github,大概看了下设计原理,比较感觉兴趣的是以多进程的形式操作共享内存(最快的),还有文件锁的改造。之所有分析它,一方面代码量小,可以花两天的样子弄明白,踩坑不…
如何上传自己的Android库到JCenter
介绍如何将自己的项目上传到JCenter。 前言 我们经常在Android的gradle文件中看到这些compile脚本,这些脚本其实就是因为之前库的开发者把对应库的jar或aar文件放到了远程服务器上,所以我们可以通过…
不要再使用findViewById
在通过AS开发Android APP的一个鲜为人知的特性就是使用数据绑定(data binding)。通过这种手段,可以实现非常多有用的特性,这些会在我未来的文章中有所介绍,但有一点最最基础需要你知道的事情就是去掉了fi…