Android Weekly Notes Issue #284
November 19th, 2017
Android Weekly Issue #284
本期内容丰富.有趣的有如何搭建真机测试平台,Proguard里面各类keep的区别,如何运行时获得泛型类型,Android的Internal Storage到底是什么,以及Android Things的一篇文章.
代码部分有介绍了一个twiiter的序列化库,还有个比较炫酷的圆形Menu可以应用到自己项目中去.
ARTICLES & TUTORIALS
The art of staging a rollout
文章介绍了Google Play Store分阶段发布的特性,可以帮助你去降低发布风险。
简单来说就是可以控制用户升级到新版本的比例,遇到问题可以发新版覆盖,更好的是,HotFix版本的发布范围是取自之前已经收到更新的用户的,帮助你去观察问题是否已经修复,而尽量的不会去影响其他未收到更新的用户。
Getting your Android app ready for Autofill
文章介绍了如何更好的支持Android O最新的AutoFill功能,如添加hint为其分类,设置一些attribute标注其需要或者不需要autofill,因为默认都是开启的...
setImportantForAutofill(IMPORTANT_FOR_AUTOFILL_NO)
Android Device Farm at Mercari
文章介绍了如何通过STF(Smartphone Test Farm)与GCP(Google Cloud Platform)来搭建公网测试平台.
由于没有公网静态地址,所以这里采用微服务平台来搭建.
手机与Local的机器adb连接, Local与GCP通过SSH Tunnel连接,使用autossh保活,GCP上跑STF.如果有多个区域的Local实体机,可以通过nginx均衡.
The Storage Situation: Internal Storage
介绍了Internal Storage的历史渊源以及他的消失.
最早(1.x-2.x)实际上是分Internal跟外挂的SdCard,内部储存很小只有几十M,我记得以前得通过脚本开启app2sdcard,来将程序数据挪到sd卡,当然2.3开放了这个功能.
3.x-4.4之前,内部储存越来越大,并且也可以挂载非sd卡的储存空间,我们称之为固有ROM.
4.4以后把所有的内部储存分成了Internal Storage与External Storage,其实主要是读写权限的区别,并限制了挂载储存(sdcard)的读写权限.
8.0以后取消了Internal Storage的叫法,内部储存统一叫Storage
Android Color Management: What Developers and Designers Need to Know
介绍了新版本手机支持sRGB也就是Wide color的情况, 可以通过Manifect设置Activity是否开启wideColorGamut模式,还可以通过values-widecg文件夹指定色值,在支持Wider色的机器上使用.
Distinguishing between the different ProGuard “-keep” directives
文章以图表的方式介绍了Proguard里面不同的keep之间的区别.
总结一下就是加了names就会shrink,加了member就是只针对于member,加了with就是必须{}里面的member都有的时候才会执行.
Building a distributed MIDI Controller with Android Things and Nearby API
Android Things相关的分享,作者使用MIDI协议,结合Google的Nearby API,相当于手机与Things之间通过Nearby通信,然后Things将MIDI数据传给电脑上的Software.
Runtime generics in an erasure world
文章讲了运行时获得泛型信息,并通过这个办法,Gson的TokenType将类型信息交给反序列化使用.
大致原理:
对于InnerType#Internal<String>,通过其GenericSuperclass可以获得很多信息.
OwnerType是InnerTypeRawType是InnerType$InternalActualTypeArguments是java.lang.String
Introducing Serial: Improved Data Serialization on Android
文章介绍了一个更牛的序列化工具Serial.
它的特点很多,如更快的Perfermance,更容易Debug,更好的backward兼容性,以及加入已有系统的flexibility.
LIBRARIES & CODE
CircleMenu
一个UI空间,可以点开一个圆圈类型的Menu.
tivi
连接Trakt.tv的一个App,非官方,WIP,使用了很多新框架.
AutoAdapter
通过写一写注解来绑定layout与Java,生成RecyclerView的adapter.
AndroidSDKPoster
包含了android14-27的changelog的poster
idea-gradle-dependencies-formatter
一个gradle的format插件,支持包括compile不同格式的切换,还有maven到gradle的转换等等.
Serial
Twitter的序列化框架.
Android Weekly Notes Issue #284的更多相关文章
- Android Weekly Notes Issue #230
Android Weekly Notes Issue #230 November 6th, 2016 Android Weekly Issue #230. Android Weekly笔记, 本期内容 ...
- Android Weekly Notes Issue #227
Android Weekly Issue #227 October 16th, 2016 Android Weekly Issue #227. 本期内容包括: Google的Mobile Vision ...
- Android Weekly Notes Issue #237
Android Weekly Issue #237 December 25th, 2016 Android Weekly Issue #237 这是本年的最后一篇issue, 感谢大家. 本期内容包括 ...
- Android Weekly Notes Issue #229
Android Weekly Issue #229 October 30th, 2016 Android Weekly Issue #229 Android Weekly笔记, 本期内容包括: 性能库 ...
- Android Weekly Notes Issue #221
Android Weekly Issue #221 September 4th, 2016 Android Weekly Issue #221 ARTICLES & TUTORIALS And ...
- Android Weekly Notes Issue #219
Android Weekly Issue #219 August 21st, 2016 Android Weekly Issue #219 ARTICLES & TUTORIALS Andro ...
- Android Weekly Notes Issue #236
Android Weekly Issue #236 December 18th, 2016 Android Weekly Issue #236 本期内容包括: Google的物联网平台Android ...
- Android Weekly Notes Issue #235
Android Weekly Issue #235 December 11th, 2016 Android Weekly Issue #235 本期内容包括: 开发一个自定义View并发布为开源库的完 ...
- Android Weekly Notes Issue #234
Android Weekly Issue #234 December 4th, 2016 Android Weekly Issue #234 本期内容包括: ConstraintLayout的使用; ...
随机推荐
- 59、jQuery初识
jQuery是由原生js写的所以说所有jQuery制作出来的效果都可以使用js做出来,jQuery出现的目的是为了优化代码,提高码代码的效率它将很多功能封装. 一.jQuery的认识 1.何为jque ...
- OpenWRT (RT5350) 使能两个串口
OpenWRT(RT5350) 默认使能一个串口(uartlite) ,当做console口了,另外一个串口(uartf)与gpio复用. 在查找资料的过程中,发现在新的内核中使用到了设备树(devi ...
- nexus3 添加第三方本地文件jar到仓库
因为nexus3和nexus2手动上传第三方jar有点区别 故记录一下. 如上传京东 open-api-sdk-2.0.jar 首先创建一个目录 方便执行上传的时候url参数 也可以不创建 mkdir ...
- [原创]InnoDB体系结构
参阅:<innodb存储引擎内幕> innodb整体的体系结构如下图所示: 整体结构分两大部分:内存和进程其中内存包括:buffer_pool\redo log buffer\addit ...
- 64、django之模型层(model)--建表、查询、删除基础
要说一个项目最重要的部分是什么那铁定数据了,也就是数据库,这篇就开始带大家走进django关于模型层model的使用,model主要就是操纵数据库不使用sql语句的情况下完成数据库的增删改查.本篇仅带 ...
- win7与centos虚拟机的共享文件夹创建
本文在win7环境下,在virtualbox5.0.16中的虚拟机centos6.7创建linux虚拟机与win7主机的共享文件夹. 首先点击virtualbox上"设置"按钮,在 ...
- LeetCode 697. Degree of an Array (数组的度)
Given a non-empty array of non-negative integers nums, the degree of this array is defined as the ma ...
- 【原创】基于禅道的Bug管理操作规范
1. 禅道简介 禅道是一个基于"敏捷开发"模式的软件开发全生命周期管理软件,在国内的软件开发公司里占据了超过70%的份额,从大公司到小公司,都能适用. 禅道官网:http://ww ...
- linux root修改密码失败
问题: 当使用root修改密码时,报错passwd:Authentication token manipulation error 解决: 1.查看是否权限问题, /etc/passwd /etc/s ...
- Leetcode题解(十一)
31.Next Permutation 题目 这道题目的意思是给定一个序列,找出其按照字典顺序的下一个顺序,如果给定顺序是字典中的最后一个顺序,其下一个顺序则为字典中的第一个顺序.比如: 1,2,3, ...