#42 2018-11-18

AndroidX移行の現実、Androidで使えるDIライブラリのパフォーマンス比較、AndroidのGCの歴史、など。

loading share widgets...

AndroidのGCの歴史

https://www.youtube.com/watch?v=Zc4JP8kNGmQ

Android Dev Summit 2日目にChetとRomainが行ったGCについてのセッションです。Droidcon London 2018のキーノートでおこなったものとほぼ同じようですが、自分は初めて聞いたのでおもしろかったです。

どのアプリで共有されたか知る方法

https://medium.com/code-with-lisa/get-results-from-android-chooser-9cfc5445a871

API 21以降に追加された Intent#createChooser(Intent, CharSequence, IntentSender) を使うと、ユーザーがたとえばテキストや写真を共有したときにどのアプリで共有されたかを知ることができるという話です。

ビジネス側から、よく計測用に欲しいといわれることが多かったので重宝しそうです。

Activity、Fragment、Viewにコンストラクタインジェクションする

https://satoshun.github.io/2018/11/android_all_inject_ctor/

FragmentFactoryなどをつかってコンストラクタに引数を渡してDIする方法です。

自分がよく理解できていないのですが、これができるとComponentクラスにいちいちinjectメソッドを書かなくてよくなるのが嬉しいのでしょうか。

Androidで使えるDIライブラリのパフォーマンス比較

https://github.com/Sloy/android-dependency-injection-performance

Koin, Kodein, Dagger2を、それぞれJavaとKotlinで使った時のパフォーマンスを比較しています。
やはりコード生成しているDaggerは速いですね。

Koinに関しては、1.1.0で改善するようです
https://github.com/InsertKoinIO/koin/issues/281

Comments

話はちょっと違いますが、小数点が , なので最初は混乱してしまいました。

novoda/bintray-releaseのGradle 4.5以降対応版がリリース

https://github.com/novoda/bintray-release/releases/tag/0.9

ライブラリ開発者には朗報です。長いことメンテされてなかった印象ですが、ついにGradle4.5以降に対応しました。
まあAndroid Gradle Plugin 3.2対応のときにだいたい別のライブラリに移行しちゃってそうですが……

©2019 — Android Dagashi