#42 2018-11-18
AndroidX移行の現実、Androidで使えるDIライブラリのパフォーマンス比較、AndroidのGCの歴史、など。
Jetpack Preferences
GitHubで見るhttps://www.youtube.com/watch?v=PS9jhuHECEQ
https://developer.android.com/guide/topics/ui/settings/Android Dev Summit 2018のセッションで紹介されていたのですが、JetPackに入ったPreferencesがだいぶ便利なようでした。むかしPreferenceFragmentなどをすこし使って諦めた人は、見るとちょっと感動するかもしれません。
AndroidのGCの歴史
GitHubで見るhttps://www.youtube.com/watch?v=Zc4JP8kNGmQ
Android Dev Summit 2日目にChetとRomainが行ったGCについてのセッションです。Droidcon London 2018のキーノートでおこなったものとほぼ同じようですが、自分は初めて聞いたのでおもしろかったです。
Google Analytics for Mobileが2019年10月にサンセット予定
GitHubで見るhttps://www.reddit.com/r/androiddev/comments/9wyz74/google_analytics_for_mobile_to_be_sunsetted_in/
Firebaseへの移行が求められているようです。2020年1月には過去のデータも見られなくなるとのことです。
どのアプリで共有されたか知る方法
GitHubで見るhttps://medium.com/code-with-lisa/get-results-from-android-chooser-9cfc5445a871
API 21以降に追加された Intent#createChooser(Intent, CharSequence, IntentSender) を使うと、ユーザーがたとえばテキストや写真を共有したときにどのアプリで共有されたかを知ることができるという話です。
ビジネス側から、よく計測用に欲しいといわれることが多かったので重宝しそうです。
Activity、Fragment、Viewにコンストラクタインジェクションする
GitHubで見るhttps://satoshun.github.io/2018/11/android_all_inject_ctor/
FragmentFactoryなどをつかってコンストラクタに引数を渡してDIする方法です。
自分がよく理解できていないのですが、これができるとComponentクラスにいちいち
inject
メソッドを書かなくてよくなるのが嬉しいのでしょうか。Androidで使えるDIライブラリのパフォーマンス比較
GitHubで見るhttps://github.com/Sloy/android-dependency-injection-performance
Koin, Kodein, Dagger2を、それぞれJavaとKotlinで使った時のパフォーマンスを比較しています。
やはりコード生成しているDaggerは速いですね。Koinに関しては、1.1.0で改善するようです
https://github.com/InsertKoinIO/koin/issues/281AndroidX移行の現実
GitHubで見る-
コード生成系のライブラリがAndroidX対応していてくれれば、そんなに大変じゃないかもですね。コンフリクトの解消はたしかにスクリプトがあった方がよさそうです。
-
Android StudioのSVG to VectorDrawableコンバータをコマンドラインで使う
GitHubで見るhttps://www.androiddesignpatterns.com/2018/11/android-studio-svg-to-vector-cli.html
Android Studioのコード落としてきてビルドしたらイケるようです。
一応ビルド済みのものも用意してくれています。Kotlin 1.3.10リリース
GitHubで見るKotlin 1.3.10 is now available, with fixes for a number of regressions in Kotlin 1.3. See the full changelog and release notes here: https://t.co/YxJbW0szm5
— Kotlin (@kotlin) 2018年11月13日https://github.com/JetBrains/kotlin/releases/tag/v1.3.10
バグフィックスなリリースですEmulator 28.0.16がリリース
GitHubで見るhttps://androidstudio.googleblog.com/2018/11/emulator-28016-stable.html
https://www.reddit.com/r/androiddev/comments/9wfucd/emulator_28016_stable同じAVDを複数インスタンス立ち上げられるようになったみたいで、特にCIで捗りそうです。
ほかにもいろいろ改善が入っています。novoda/bintray-releaseのGradle 4.5以降対応版がリリース
GitHubで見るhttps://github.com/novoda/bintray-release/releases/tag/0.9
ライブラリ開発者には朗報です。長いことメンテされてなかった印象ですが、ついにGradle4.5以降に対応しました。
まあAndroid Gradle Plugin 3.2対応のときにだいたい別のライブラリに移行しちゃってそうですが……
話はちょっと違いますが、小数点が
,
なので最初は混乱してしまいました。