Android Weekly Notes Issue#310

May 20th, 2018

Android Weekly Issue #290

本期既有本次Google IO对于Play Console的更新简介, 又有数篇对于简化UI Test的工具与方法的介绍,还有JetPack Worker Manager的推介,以及如何仅仅通过Firebase快速搭建一个自己的Instgram小App,当然还有一篇关于Google最新的Navigation Architecture Component的介绍,精彩内容不容错过.

ARTICLES & TUTORIALS

Rxify : The startWith { MVI } pitfall

在实现MVI返回State Intent的时候, 可以通过startWith可以添加一些初始化状态,它就类似于concat,将一个新的Observable与之结合,再通过onErrorReturn返回一个错误的状态,保证我们的chain的完备性.

Discover everything new in the Google Play Console

最新的GoogleIO更新了Play Console的新功能,有一些还是挺厉害的.

App Bundle, 就是你的res可以根据设备加载,比如图片资源,对于xxxdpi的设备就下载一份,语言包也类似.

提升了质量检测过程, 通过100个内部测试机运行你upload的程序,还有各种report与analysis帮助你分析潜在问题.

dashboard以及一些数据呈现更加优化,还可以通过acquisition report获得更多信息,如用户从哪里得到的你的app等等.

提升用户订阅服务,通过Billing Library可以轻松实现订阅服务,在Subscriptions Center可以轻松管理用户的订阅订单,还有详细的report帮你分析多种订阅之间的时间,地点等等因素的关系.

八月份之前必须得Target到26了.

Kakao - how to make UI testing great again

Kakao是一个kotlin的UI测试框架,基于Espresso,可以大幅度简化使用Espresso的过程,通过Lambda以及Kakao内置的一些操作符,完成测试.

如:

Best Practices for Unit Testing in Kotlin

作者提了好几条建议来提升Kotlin测试的体验

使用JUnit5的来避免出现一些静态field,这些静态field主要是为了保证在整个测试类中只初始化一次,而JUnit4每一个Test都会重新创建新的Class.取而代之的是可以使用加.

使用JUnit5的包装测试类中一些特殊的模块,使之更加清晰.

使用``(backticks)去自定义方法名.

AssertJ依旧好使.

使用Mokito-Kotlin跟MockK来做mock

Exploring Moshi’s Kotlin Code Gen

Moshi是一个JSON解析库,文章介绍了1.6版本使用了新的Kotlin代码生成器,更好的处理了类似,,等等的问题,感兴趣可以自己看一下.

Life with/without services and WorkManager

随着Android对于内存管理的越来越严格,首先是26以上Service无法在后台被限制,而系统提供的在23以下有问题,而又需要Google Service…让人甚是苦恼.

值得高兴的是,Google最近推出的强大的JetPack里面的将解决这个问题.

它内部融合了,,等等,并提供了两种Woker,跟.让后台操作变得非常轻松.

A year as Android Engineer

文章介绍了作者从一个QA转型为一个Android Dev,并找到新工作的经历,可以当故事看看…

The missing migration guide to the Gradle Kotlin DSL

一个REAMME,介绍了如何从Gradle迁移到Kotlin DSL,喜欢Kotlin的朋友们可以对照着迁移了,一步两步.

Build an Instagram-Like Android App Using Google Firebase

通过Firebase搭建一个类似Instgram的App.

通过Firebase Authenicate来实现登录认证,通过Firebase Storage来实现图片上传,通过Firebase Database来实现数据存储.

自己只需要实现简单的UI,便可以完成简易化的Ins,是不是很开森.

A problem like Navigation

介绍了Google最新推出的Navigation Archtecture Component,来处理Fragment之间的跳转,通过定义xml中的,就可以完成跳转,通过定义就可以完成值传递,以及定义,可以轻松支持Deeplink.

Pleasant fun painless delightful Espresso testing with Kotlin

一个基于Kakao(Kotlin DSL for Espresso)的Kotlin Espresso库,用于简化UI test的书写.

如可以直接通过Id来索引View直接perform操作,而不必在通过……来搞的很长.

LIBRARIES & CODE

MockK

kotlin的Mock lib

espresso-helper

Espresso的Kotlin封装

Kakao

上面那个库基于的,也是对于Espresso的封装.

欢迎关注

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20180613G0D58300?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。

同媒体快讯

扫码关注云+社区

领取腾讯云代金券