#75 2019-07-07
Kotlin 1.3.41, Jetpack ComposeとSwift UI, Android Qでの音声キャプチャリング, KotlinのMutable Collection APIの秘密, など
Material Designガイドラインにデータ可視化についての項が追加される
GitHubで見るKotlinのMutable Collection APIの秘密
GitHubで見るhttps://proandroiddev.com/the-mystery-of-mutable-kotlin-collections-e82cbf5d781
KotlinのCollection APIは内部的にはJavaのCollection APIを使っています。この記事ではどのようにしてJavaのAPIがKotlinのinterfaceを実装しているかのように振る舞わせているのか、というところを解説しています。
FlutterとKotlin Multiplatform
GitHubで見るJetpack ComposeとSwift UI
GitHubで見る7月2日のJetpack/AndroidXリリース
GitHubで見るhttps://developer.android.com/jetpack/androidx/releases#july_2_2019
Transition 1.1.0がリリースされたほか、いろいろなライブラリがRCに昇格しています
婚活サービスyoubrideがアプリをFlutterでリニューアル
GitHubで見るhttps://developer.diverse-inc.com/entry/2019/07/04/173000
通信はgRPCだったり、いろいろ挑戦しているようです。
国内でもFlutterの事例が増えていくのは嬉しいですねLeaky APIs are Leaky
GitHubで見るhttps://commonsware.com/blog/2019/07/03/leaky-apis-are-leaky.html
ここでいう
leaky API
はメモリリークのあるAPIではなく、考慮漏れで開発者の意図していない使い方ができるAPI
のことです。Android Qでの音声キャプチャリング
GitHubで見るhttps://android-developers.googleblog.com/2019/07/capturing-audio-in-android-q.html
Android Qから追加された他のアプリの音声をキャプチャリングできる機能についてまとまっています。自分のアプリが他のアプリにキャプチャリングされたくない場合は明示的にAndroidManifest.xmlに書くなどの対応が必要のようです。
Android Qでリークの原因を探った話
GitHubで見るhttps://developer.squareup.com/blog/story-of-an-android-q-leak-attachment-crazy-town/
SquareがAndroid Q上でのアプリの動作確認をしている時に発見したリークと、その原因究明のまとめです
Android Q(&A)
GoogleのAndroidエンジニアであるDave BurkeやIliyan Malchev、Anwar GhuloumがAndroid Qで追加される新機能についてインタビューを受けています。
Kotlin 1.3.41
GitHubで見るhttps://github.com/JetBrains/kotlin/releases/tag/v1.3.41
主にバグ修正のようです。数があるのと、新しい型推論まわりにも修正があるので、アップデートしておくとよさそうです。
開発者へのダイレクトリクルーティング
GitHubで見るhttps://www.reddit.com/r/androiddev/comments/c84t0q/android_recruitment_to_a_whole_new_level/
開発者オプションが有効になってたら求人情報を表示するアプリがあるようです。
Webではコンソールを使って同じことをしているのをたまに見かけますが、スマホでこれをやるのは新しいですね
https://github.com/square/workflow
Squareは今アーキテクチャの移行作業を行っているようです。
これSwiftの実装もあるのでAndroid/iOSで同じアーキテクチャを採用してるんですかね。
Kotlin Multiplatform Projectでデータ層の共通化を模索しているようですし、全体のアーキテクチャ自体を統一するのも納得ですね。
このリークの話はとても面白いですね
onAttachedToWindow
の中でremoveAllViews
を呼んだせいで、detach
のあとにattach
がきたという話のようでした。余談ですが LeakCanary 2 はとてもリークが見やすくなっているようでいいですね。