Android 开发周报:中文 Android7.0 体验不佳、深入浅出 Retrofit

阅读数:4454 2016 年 6 月 11 日

新闻

  1. 《谷歌测试计划开启,Android N 谷歌地图抢先用》:近日,Android N 开发者预览版本已经进行到了第三个,然而由于机型限制,许多人不能够体验到最新安卓系统的乐趣,如今谷歌为旗下地图应用开启了测试计划,我们也许能够借此尝鲜Android 7.0 上的谷歌地图。
  2. 《谷歌测试Android 新功能:空间不足会智能提醒卸载程序》:谷歌正在测试一项新功能,用户如果从Google Play 下载应用程序,当剩余存储空间不足时,系统会通知用户。具体应该删除哪个应用或者媒体文件,或者干脆跳过新程序,完全由用户自己做决定。。不只如此,谷歌还会列出使用频率最低的应用程序,显示各程序占用的空间。程序的旁边会有复选框,用户可以挑选后删除。
  3. 《中文Android7.0 体验:改进不明显,升级需慎重》:谷歌早前已经放出了Android N(安卓7.0)的第三个预览版,整体功能改进已经成形,之后应该就只是小修小补了。Android 7.0 的一些重要改进包括多任务窗口模式、快速回复通知消息、DayDreamVR 模式(目前还不能体验)、快速切换最近应用、新Emoji 等,那么现在值不值得升级呢?国内已经有人体验了升级Android N 后的Nexus6P,得出的结论是目前该版本还存在较多的bug,并且相较国内其它ROM 功能改进并没有新意,建议用户谨慎升级。

教程

  1. 《深入浅出Retrofit》:Android 开发中,从原生的HttpUrlConnection 到经典的Apache 的HttpClient,再到对前面这些网络基础框架的封装,比如Volley、Async Http Client,Http 相关开源框架的选择还是很多的,其中由著名的Square 公司开源的Retrofit 更是以其简易的接口配置、强大的扩展支持、优雅的代码结构受到大家的追捧。本文详细解析了Retrofit 的使用方法及实现原理。
  2. 《Android 新布局方式ConstraintLayout 介绍与学习资料》:在这次Google IO 上,Android 团队为开发者带来了一个新布局方式ConstraintLayout,它将大大改变今后的Android 布局界面开发方式。它的目标是减少布局的层级,同时改善布局性能,还减少了使用RelativeLayout 的复杂性。ConstraintLayout 即约束布局或限制性布局。它是一种新的布局方式,可以看做是RelativeLayout 的增强,向下兼容至API level 9(Android 2.3),并且是support library 的一部分,也就是说,能兼容目前绝大多数的Android 设备。
  3. 《“HTTPS”安全在哪里?》:在上网获取信息的过程中,我们接触最多的信息加密传输方式也莫过于HTTPS 了。每当访问一个站点,浏览器的地址栏中出现绿色图标时,意味着该站点支持HTTPS 信息传输方式。我们知道HTTPS 是我们常见的HTTP 协议与某个加密协议的混合体,也就是HTTP+S。这个S 可以是TLS(安全传输层协议)、也可以是SSL(安全套接层)。现在越来越多的App 也开始使用HTTPS 进行通信。本文为大家详细分析了到底HTTPS 是如何保证安全的。
  4. 《Android 架构初探》:早期的Android 开发者们并不怎么关注架构,代码都堆在Activity 或Fragment 里面,UI、业务、数据混合在一起,这就使得难以单独的复用和扩展、测试。随着项目逐渐变的庞大,为了降低开发和维护成本,以及将来可能要做的单元测试,需要对架构进行相应的调整。所以选择一个好的架构,对于App 的长期维护非常重要,而Clean 就符合好架构的所有条件,本文对Clean 架构进行了详细介绍。
  5. 《Android 用户引导库MaterialIntroView 使用及源码分析》:由于新功能引导在各个发布版间表现各异,几乎难以统筹。其次,功能引导具有塑造艺术的可能,直接导致每一个版本都需要单独沟通,而且变更几率较大,难以一次性审校通过。MaterialIntroView 是一款能解决这个痛点的开源项目,本文介绍了MaterialIntroView 的实现原理。
  6. 《 浅谈AndroidTV 开发与常规APP 开发的异同点》:如今Android 电视、Android 盒子已经逐渐被人们接受,国内已经有多家厂商生产这些产品。随着Android TV 销售渠道的打开,开发TV App 必然是另一个新的机会。虽然手机App 与TV App 都是基于Android SDK 进行开发,但也有一些不同之处,本文作者根据自己几个月的TV App 开发经验,总结了一些AndroidTV 开发与常规APP 开发的异同点。
  7. 《React Native 之底层源码分析篇》:RN 总共分为三层,java 层,C++ 层,js 层。RN 主要的通信在于java 与js 之间,平常我们写的jsx 代码最终会调用到原生的View。在Java 层与Js 层的bridge 分别存有相同一份模块配置表,Java 与Js 互相通信时,通过将里配置表中的moduleID,methodID 转换成json 数据的形式传递给到C++ 层,C++ 层传送到js 层,通过js 层的的模块配置表找到对应的方法进行执行,如果有callback,则回传给java 层。阅读文章,了解更多关于RN 的底层细节。
  8. 《如何调试Android Framework?》:要想精通Android 开发,仅仅能熟练使用SDK 是远远不够的,Android Framework 层的知识是也必须学习。学习Framework 层有助于我们理解Android 的运行机制,能够帮助我们写出更加高效、优雅的代码。学习Framework 层时,调试技能显的尤为重要,本文为大家介绍了如何调试Android Framework。

开源项目

  1. RocooFix :该项目是 HotFix 项目作者的又一新作。之前的 HotFix 项目太过简单,也有很多同学用 Nuwa 遇到很多问题,作者也不再修复,所以重新构建了一套工具。
  2. material-tip :这是一个自定义的选择提示框,根据 Google 的 offer education 编写。
  3. material-design-dimens :该项目封装了 Material Design 指南上要求的颜色、尺寸等信息。使用该项目可以让我们在适配 Material Design 时,减少一些细节操作。
  4. MarqueeView :该项目实现了垂直跑马灯效果,可用于垂直翻页、公告滚动等场景。
  5. TimePickerDialog :Android 时间选择器,支持年月日时分,年月日,年月,月日时分,时分格式,可以设置最小时间(精确到分)。

感谢徐川对本文的审校。

给 InfoQ 中文站投稿或者参与内容翻译工作,请邮件至 editors@cn.infoq.com 。也欢迎大家通过新浪微博( @InfoQ @丁晓昀),微信(微信号: InfoQChina )关注我们。

收藏

评论

微博

发表评论

注册/登录 InfoQ 发表评论