C++11学习android
当Android用ART虚拟机替代Dalvik的时候,为了表示和Dalvik完全划清界限的决心,Google连ART虚拟机的实现代码都切换到了C++11。C+11的标准规范于2011年2月正式落稿,而此前10余年间,C++正式标准一直是C++98/03[①]。相比C++98/03,C++11有了很是多的变化,甚至一度让笔者大呼不认识C++了[②]。不过,做为科技行业的从业者,咱们要铭记在心的一个铁规就是要拥抱变化。既然咱们不认识C++11,那就把它当作一门全新的语言来学习吧。git
推送 从入门到放弃github
推送简直就是一种轻量级的骚扰方式自从有了推送,各个公司基本上都在使用推送,这确实是一个比较好的提醒方式,Android较iOS强的一个部分,也就是在于Android的Notification。Google教育咱们利用好Android的通知模块,作更多友好的交互,可这句话,翻译成中文,不知不觉,就变成了在Notification中推送各类广告,并且仅仅就是一些广告,Notification各类牛逼的功能,彻底不须要,这也违背了Google设计Notification的初衷。更关键的是,如今随便找一款App,没有推送的真是百里挑一,更可恶的是,作外卖的App给我推送奥运新闻,一条新闻十几个App推送,以致于如今不少用户都很是反感各类推送广告,就我本人而言,基本上会禁用全部广告类的App的推送。shell
Android的设计理念之一,即是应用程序退出,但进程还会继续存在系统以便再次启动时提升响应时间. 这样的设计会带来一个问题, 每一个进程都有本身独立的内存地址空间,随着应用打开数量的增多,系统已使用的内存愈来愈大,就颇有可能致使系统内存不足, 那么须要一个能管理全部进程,根据必定策略来释放进程的策略,这便有了lmk,全称为LowMemoryKiller(低内存杀手),lmkd来决定什么时间杀掉什么进程.eclipse
RxJava 这个项目已经持续四年半了,第一个 commit 是在 2012 年 3 月 18 号。我从 14 年 11 月份开始使用 RxJava,应该算是比较早的,将近两年过去了,如今 RxJava 1.x 版本已经进入稳按期,2.0 版本也已经进入了 RC 阶段。本来打算把 Advanced RxJava 系列博客翻译完以后再拆 RxJava 的,可是前两周看了一个 JW 讲 RxJava 的视频,忽然有种隐隐打通任督二脉的感受,索性趁着中秋佳节,一气呵成把 RxJava 好好拆开看个究竟。本文的分析基于 RxJava 截至 2016.9.16 的最新源码,很是建议你们下载 RxJava 源码以后,跟着本文,过一遍源码
从去年开始,Android平台出现了一些优秀的热更新方案,主要能够分为两类:一类是基于multidex的热更新框架,包括Nuwa、Tinker等;另外一类就是native hook方案,如阿里开源的Andfix和Dexposed。这样客户端也有了实时修复线上问题的可能。但通过调研以后,咱们发现上述方案或多或少都有一些问题,基于native hook的方案:须要针对dalvik虚拟机和art虚拟机作适配,须要考虑指令集的兼容问题,须要native代码支持,兼容性上会有必定的影响;基于Multidex的方案,须要反射更改DexElements,改变Dex的加载顺序,这使得patch须要在下次启动时才能生效,实时性就受到了影响,同时这种方案在android N [speed-profile]编译模式下可能会有问题,能够参考Android N混合编译与对热补丁影响解析。考虑到美团Android用户机型分布的碎片化,很难有一个方案能覆盖全部机型。
本篇依旧属于Matrix,主要讲解Camera,Android下有不少相机应用,其中的美颜相机更是很多,不过今天这个Camera可不是咱们平时拍照的那个相机,而是graphic包下的Camera,专业给View拍照的相机,不过既然是相机,做用都是相似的,主要是将3D的内容拍扁变成2D的内容。众所周知,咱们的手机屏幕是一个2D的平面,因此也没办法直接显示3D的信息,所以咱们看到的全部3D效果都是3D在2D平面的投影而已,而本文中的Camera主要做用就是这个,将3D信息转换为2D平面上的投影,实际上这个类更像是一个操做Matrix的工具类,使用Camera和Matrix能够在不使用OpenGL的状况下制做出简单的3D效果。
让咱们的apk文件尽量更小,移除那些未使用的代码和资源文件。本章节介绍了如何作到让APK更小,性能更好,下载转化率会更高,以及如何指定在构建APK过程当中保留或移除项目中的代码和资源,在咱们尚未分析APK大小以前,项目中存在一些资源放置处理不当,没有统一的规范,依赖管理不合理,资源重叠,dex方法数过多、文件过大等问题,致使整个APK文件也比较大,对于下载转化率必然有必定的影响。那么公司要求咱们的产品APK体积大小要优化到3M左右。通过咱们的努力终于达到要求,然而咱们发现还能再小。
Another hotfix 另外一个热修复方案 Alpha,来自InstantRun 和 Robust 相似
Material Design 风格的使用指南提示效果
一个能够将图片和二维码合并成一张带有图片内容的二维码的库
一个能够将图片转换为 Lowpoly 风格的库
一款优雅时尚的 Android 播放器
能够经过代码动态改变 Drawable 颜色的库
Error handling library for Android and Java
An Android library for double level section headers that stick to the top of list
FingerLock is a library designed to make fingerprint authentication an easy task for Android developers
一个音频格式转换库,支持 AAC, MP3, M4A, WMA, WAV、FLAC 等格式
仿Google 2016 I/O大会里那个炫酷的时钟,纯SVG动画
Imitation of Ali credit sesame new old ring view
高仿哔哩哔哩动画安卓客户端 - ( ゜- ゜)つロ 乾杯~