Android Weekly Notes Issue #289

Android Weekly Issue #289

December 24th, 2017

Android Weekly Issue #289

今年最后一篇, 包含了可以上传log记录的HyperLog,以及Android的面试技巧,还有Model的分层,以及如何迁移到Room.
还有比较炫酷的一个Path动画的实现方法值得去看.剩下的多是一些入门介绍,如kotlin,firebase messaging,contraintset animation等.

ARTICLES & TUTORIALS

HyperLog: Android Remote Logger Library for Debugging

作者讲了很多人苦恼有时候插线数据线Logcat给清掉了,也看不到日志信息,而Timber活着Logger也没法支持Production环境,推荐了HyperLog,可以上传日志文件到远端服务器,可以设定一些schedular定时上传.

Bring life to your custom view

文章介绍了通过动画来绘制一个自定义View,原理是通用的,就是首先分析你的图形构成的元素,需要哪些变量的变化,然后通过ValueAnimator控制这些变量的变化,再通过invalidate触发onDraw依照变量的值进行绘制.

Interviewing Tips for Android Engineers

作者作为Lyfy的一员,作者很高兴的分享自己的一些新的帮助面试者,介绍了Android面试的一些tips,包含从开始的电话初面或者作业,到后来的Java面,Android UI相关技能面,Android Infrastructure面,以及Design与Background的面所应该注意的点以及准备的方法.

Using Architecture Components with Firebase Database - Part 3

文章继续之前通过LiveData封装FirebaseDatabase,与ViewModel结合实现MVVM的工作.

这是第三部分,主要介绍如何优化没有必要的query,Activity有可能因为转屏导致configuration changed,从而引起LiveData瞬间切换到Inactive又变成Active,导致数据库重复的query.

解决方案是将销毁操作封装到延迟的Runnable里面,发送给Handler,并设置标记位.在onActive中检测标记为,如果发现仍然在pending状态,就removeCallbacks,清楚消息...

Data model mapping in Android Apps

文章一步一步介绍了我们应该如何处理我们的Model,其实是希望我们应该对我们的Model进行分层.

API与Cache的原始数据,以及与我们核心业务相关的Domain层,再者就是包含UI state等信息的Presentation层了.

其实就是我们常说的Model->Domain->Presentation.

当然在我们所谓BFF(backends for frontends)理论下(简单来说就是Server为Mobile加一层转换,直接输出显示内容相关数据),可以省去Model与Domain层,但一些UI的state我们仍需想办法维护.

Incrementally migrate from SQLite to Room

介绍了如何逐步将你的db迁移到room.

  • 首先根据你的table定义Entity.
  • 其次实现RoomDatabase,增加版本号并加上空的Migration逻辑.
  • 使用SupportSQLiteOpenHelper替换原有的SQLiteOpenHelper,如果你之前没有使用raw的sql语句,需要用使用SupportSQLiteQuery拼出query条件.
  • 写自己的DAO,替换掉Cusor的操作.

Boost your app reviews with Firebase Predictions!

介绍了利用Firebase正在测试阶段的Predictions帮助我们决定何时弹提醒用户评分的框框.

Playing with Paths

介绍了如何绘制轨迹动画,挺炫酷的,主要使用到了PathDashPathEffect.

How to add Push Notification capability to your Android app

文章介绍了如何通过Firebase Messaging来做推送,包含了详细的Client端的配置,以及Server端的Initialize.

Animations with ConstraintLayout and ConstraintSet

文章介绍了通过ConstraintSetConstraintLayout添加一些如ChangeBounds的动画.

Getting started with Kotlin on Android

Kotlin简单的入门教程,包含IDE的配置,以及几个Kotlin的特点,如when等等.非常初级,想入门的可以多看看...呵呵...

LIBRARIES & CODE

hyperlog-android

可以将log记录发到后台的一个库.

android-clean-architecture-mvi-boilerplate

所谓基于MVI的Clean Architecture.

ReactiveNetwork

基于RxJava监听网络状态的库.

posted @   圣骑士wind  阅读(292)  评论(0编辑  收藏  举报
编辑推荐:
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
· 一个奇形怪状的面试题:Bean中的CHM要不要加volatile?
阅读排行:
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· Obsidian + DeepSeek:免费 AI 助力你的知识管理,让你的笔记飞起来!
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
点击右上角即可分享
微信分享提示