#31-20180826-20180901
Airbnbが新アーキテクチャ/ライブラリMvRxを発表、Picasso 3.0、Kotlin 1.3-M2リリース など。
ConstraintLayout 1.1.3
GitHubで見るhttps://androidstudio.googleblog.com/2018/08/constraintlayout-113.html
不具合修正とパフォーマンス改善がメインです
Spannableのパフォーマンス
GitHubで見るhttps://blog.danlew.net/2018/08/30/exploring-spannable-performance/
Trelloで新しいMarkdownパーサーを作るときにいろいろ試行錯誤してパフォーマンスを改善したことがまとまっています。
Kotlin 1.3で追加されるcontractsの紹介
GitHubで見るKotlin 1.3で追加されるinline classの紹介
GitHubで見るKotlin 1.3-M2リリース
GitHubで見るhttps://blog.jetbrains.com/kotlin/2018/08/kotlin-1-3-m2
contractsが追加されました。
coroutinesには古い実装からの移行サポートが追加されました。
標準ライブラリにはunsigned integer
周りの諸々が追加されたりしています。Picasso 3.0
GitHubで見るhttps://speakerdeck.com/jakewharton/rinsing-the-brush-picasso-3-dot-0-droidcon-nyc-2018
待望のPicasso 3.0の話です。資料だけですべて理解できたわけではありませんが、画像取得リクエストのカスタマイズやOkioの採用などが目玉のようです。個人的には "Cannot reset" エラーが修正されるのが嬉しいです。
Gradle 4.10リリース
https://docs.gradle.org/4.10/release-notes.html
5.0前の最後のリリースだそうです。
古いキャッシュを定期的に削除する機能が追加されたり、Kotlin DSLが1.0 RCになったり、他にもいろいろ機能が追加されています
GitHubで見る-
Kotlin DSL 1.0 RCについては個別の記事もあります
https://blog.gradle.org/gradle-kotlin-dsl-release-candidate
-
Airbnbが新アーキテクチャ/ライブラリ、MvRxを発表
GitHubで見るhttps://github.com/airbnb/MvRx/
https://medium.com/airbnb-engineering/introducing-mvrx-android-on-autopilot-552bca86bd0a以前AirbnbがReact Nativeの利用をやめる、と表明したとき、同時に今後のAndroid/iOSアプリ開発についても触れていました。
その中にあった、MvRx("mavericks"と発音するらしい)というアーキテクチャ/ライブラリがついに発表されました。Architecture ComponentsやRxJava、Epoxy、Kotlinを利用して作られています。
ReduxやAndroidでいうMVIのように、StateクラスにViewの状態を集約して、Stateへの変更を検知してViewを更新する感じのようです。
Reactでいうところの仮想DOMは、Epoxyを利用したRecyclerViewで実現しています(Airbnbの画面はほぼRecyclerViewで作られている、とwikiに記載がありました)。TextViewの高速化
GitHubで見るhttps://speakerdeck.com/siyamed/android-text-the-good-the-bad-the-ugly-droidcon-nyc-2018
テキストの描画を速くするためにI/Oでも触れられていたPrecomputed Textの話や、TextViewを複数作るかわりにSpannableで頑張る話などが載っています。
Okio 2
GitHubで見るhttps://medium.com/square-corner-blog/okio-2-6f6c35149525
以前もちらりと触れましたが、Okio 2はソースコードがKotlinになったそうです。Javaからの利用については変化がなく、R8を使っていればバイナリサイズもほぼ変わらないとのことです。
Digging into R8 and D8
GitHubで見るhttps://speakerdeck.com/jakewharton/digging-into-d8-and-r8-droidcon-nyc-2018
JakeのR8/D8に関する発表です。相変わらずスライドだけだと何も分かりませんが、R8とD8が何をしているか解説しているように見えます。
Fortniteのインストーラで脆弱性が報告される
http://www.itmedia.co.jp/news/articles/1808/27/news065.html
Google Play Store外でアプリを配信することにしたEpic GamesのFortniteですが、インストール前にapkが差し替えられてしまう脆弱性がGoogleから報告されました。
issue trackerのリンクはこちら
https://issuetracker.google.com/issues/112630336GitHubで見る-
懸念されている事態が起きてしまいましたね……。Play Storeを回避する動きは各所で見られますが、この手のセキュリティリスクがあることは開発者としても把握しておいた方がよさそうです。
-
inline classは待望なので嬉しいですね。記事でも書かれていますが type alias とはちょっと異なるところがポイントです。