Meng's pages

Android developer and maybe other intersting things.

0%

Android Weekly Issue #251

April 2nd, 2017
Android Weekly Issue #251.
本期内容: Android O新增的API: View的tooltips; Android中的字体设置; 该不该将Kotlin用于产品代码; 实现一个带自定义动画的搜索Toolbar; JUnit 5中用Lambda表达式; 用Mockito和Espresso写测试;
native的mobile开发应该扩展一下自己的知识; Kotlin中的依赖注入实现; Kotlin中lambda表达式的简化; 一个Intellij IDEA的插件, 帮助你改善Java代码的可读性.

Read more »

Android Weekly Issue #250

March 26th, 2017
Android Weekly Issue #250.
本期内容: 好几篇关于Android O预览版的文章; JUnit 5的动态测试; 作为团队里唯一的Android开发如何学习和工作; Support库新推出的基于物理的动画API: SpringAnimation; Uber Rider项目重构中关于依赖注入的scope层级的改动; Kotlin和RxJava的简洁性.

Read more »

Android Weekly Issue #249

March 19th, 2017
Android Weekly Issue #249

本期内容包括: 一个设计的实现Demo讨论; Kotlin的Coroutines可能还是没有RxJava好用; 在构建SDK/Libraries时需要注意的事项; 如何用OpenGL和JBox2D实现一个好看的多气泡选择器效果;
网络请求中Etag, If-Modified-Since的工作原理和用OkHttp的客户端实现; 用ClassyShark导出类型分析; 指纹认证实现代码; MVI模式对调试带来的好处; 用TensorFlow做一个图像识别处理器.

Read more »

Android Weekly Issue #248

March 5th, 2017
Android Weekly Issue #248.
本期内容包括: 为什么有时候应该让你的应用崩溃(而不是一味保护); Trello离线模式实现中两个id的问题; 如何让Dagger的component按照scope保存, 在屏幕旋转时不重建; 用Dagger构建Realm的数据库迁移逻辑;
利用各种mock工具写单元测试; Map上markers的动画实现; JUnit5中@DisplayName的使用; RxJava中的Single和Completable使用; 举例说明如何给FindBugs写自定义的探测器; Android中静态代码分析工具的使用; Trello离线实现中sync失败情况的处理.

Read more »

Android Weekly Issue #247

March 5th, 2017
Android Weekly Issue #247.

本期内容包括: 离线模式的实现; RxJava2的测试支持; MVI模式中的单向数据流; FlexboxLayout的使用; 用脚本来配置项目的版本名和版本号; Fragment的转场动画; MVP模式的几点原则;
RxJava中需要注意的一些点; RxJava在Android中的实现例子; JUnit 5使用.

Read more »

Android Weekly Issue #246

February 26th, 2017
Android Weekly Issue #246
本期内容包括: RecyclerView上的Shared Element动画; 使用FileProvider分享文件有可能会碰到的权限问题; 测试和程序架构的一些讨论; FlexboxLayout的使用; RxJava中可以处理前后动作的两个方法;
In-App Billing的实现; 如何用组合而非继承的方式来组织应用.

代码中有意思的项目: 一个开源的音乐播放器, 一个带状态的layout.

Read more »

Android Realm数据库使用指南

Realm数据库, 目前有Java, Objective‑C, React Native, Swift, Xamarin的几种实现, 是一套用来取代SQLite的解决方案.

本文面向Android开发, 所以只讨论Java实现.
目前Realm Java的最新版本是2.3.1.

官方文档在此: realm java doc, 花一个下午就可以基本过一遍, 之后随时查用.

我写了一个小程序TodoRealm, 使用Realm做数据库实现的一个To-do应用, 在实际使用的过程中也有一些发现.

本文是我自己看文档的时候的一些记录, 有一些实际使用时的发现也穿插在对应的章节了.

Read more »

Android Weekly Issue #245

February 19th, 2017
Android Weekly Issue #245
本期内容: 写好单元测试的几条原则; 如何mock Kotlin的对象; 如何消除God Object -> Context; 如何用Android来打电话和发短信, 以及相应事件的监听; 一个监控用电情况的应用(Android Things);
用Keystore保存敏感信息; 依赖注入和Dagger 2的使用; Wear应用向Wear 2.0的迁移; 用ViewPager构建无Fragment的应用结构; Android应用的压力测试讨论; RxJava中Subscription注销处理不当引起的内存泄露; 单元测试并不是完全可靠; Trello向离线模式迁移的架构变化.

本周推荐的代码里有一个顶部提示控件, 一个手势检测库, 还有一个loading view的库.

Read more »

Android Weekly Issue #244

February 12th, 2017
Android Weekly Issue #244
本期内容包括: Android Fragments使用教程; ClassyShark使用; Firebase的Personal App Indexing功能引出的一些权限问题; 关于应用内没有提供Privacy Policy的后续处理; Kotlin中的annotation processor讨论; Pull和Push模式的讲解; 为什么Android测试这么难; Android 7 Nougat不再支持用Intent发送file:// URI, 应用需要改用FileProvider实现原有功能.

Read more »

Android Weekly Issue #243

February 5th, 2017
Android Weekly Issue #243
本期内容包括: ConstraintLayout的动画; 用Kotlin写测试; RxJava的练习项目; 一个库: Coordinators的介绍; 一个自动报告Google Play反馈的工具; Service的测试; 动画工具Lottie的介绍; Mutability的讨论;
Nougat的多语言支持和相关的一个有趣的case; 使用StrictMode来发现问题.

Read more »