#17-20180520-20180526
今回はKotlinネタが多めです。日本ではそこまで話題になっていませんが、RedditはGDPRの話で持ちきりでした。
Google IO 2018で新発表された navigation についての詳細レポート
GitHubで見るhttps://inside.dmm.com/entry/2018/05/25/android-navigation
セッションを見ずにこれだけ読んで満足してしまいました。ドロワーやボトムナビゲーションで頻繁に使われそうですね。
ChromiumのNetworkライブラリ:Cronet
GitHubで見るhttps://developer.android.com/guide/topics/connectivity/cronet/
あまり話題になっていなかったようですが、なぜか Android Developers に足されていました。QUIC もサポートされているようです。
Kotlinを六ヶ月間使ってきてのあれやこれや
http://blog.karumi.com/kotlin-android-development-6-months-into-it/
whenがexhaustiveかどうかのチェックをIDEがしてくれないときの対処法とか、いろいろ役に立ちそうなことが書いてあります
GitHubで見る-
1番目の
exhaustive
は面白い例ですね。一方で、2番目の例はちょっとやり過ぎかなと思います。自分だったら Int だけをフィールドに持つ StringResId クラスを作る方を選びそうです。
-
Kotlinのcoroutine channelを自分で実装する話
GitHubで見るhttps://blog.pronghorn.tech/optimizing-suspending-functions-in-kotlin/
Kotlinのchannel相当のものを実装して最適化する話です。末尾呼び出し最適化をしてメモリ消費量を少なくする方法やスケジューラを自作してオーバーヘッドを減らす方法などが解説されています。Kotlinが一部のケースで末尾呼び出し最適化をしてくれないケースがあるという話は知らなかったので勉強になりました。
もしかしたら継続が分かってないとちょっと分かりにくいかもしれません。
なぜサンプルの "Hello World!" は Lint エラーにならないのか
GitHubで見るhttps://www.reddit.com/r/androiddev/comments/8l3eoz/funny_little_thing_i_noticed_about_the_string/
いい着眼点。そして、
equals("Hello World!")
でチェックしている、というのが笑えます。Google Maps の PWA を起動するだけのアプリ「Google Maps Go」が一部で話題に
GitHubで見るhttps://www.suzukikenichi.com/blog/google-maps-and-google-search-now-powered-by-pwa/
今年の1月からベータで公開されていたようですが不勉強にして知りませんでした。実際に触るとけっこうサクサク動いてよいです。
https://www.androidpolice.com/2018/01/16/google-maps-go-shows-play-store-go-phones-can-give-try-anyway/MV* の「つなぎ」に RxJava を使うのをやめたい
https://qiita.com/amay077/items/d4629f9d20ba36a1347e
RxJava使わずとも、Kotlinなら言語機能として提供されているCoroutineでなんとかなってしまう場合も多いんじゃないか?という内容
GitHubで見る-
個人的にはRxJavaはもうフレームワーク的な立ち位置にあるので、これなしで書くのは考えられないですね…
ただ、学習のハードルが高いのは同意できますし、単純に非同期処理のために使ってるのならKotlin Coroutineを採用するのもありかなー、とは思います。
-
気持ちは分からなくはないですが、Kotlin Coroutineも十分複雑(async/await や channel だけの使用ならそうでもないかも)という印象なので、どっちもどっちという気もします。
ちなみに pub/sub だけなら RxRelay でいいんじゃないでしょうか。
-
GDPR対策でユーザから同意を得るためのSDKをGoogle(AdMob)がリリース
広告用のSDKみたいです
https://developers.google.com/admob/android/eu-consent
https://github.com/googleads/googleads-consent-sdk-androidredditでの反応
https://www.reddit.com/r/androiddev/comments/8l2wff/google_consent_sdk_for_gdpr_is_here/実装周りでのQAスレッド
https://www.reddit.com/r/androiddev/comments/8l99ac/google_consent_sdk_for_gdpr_implementation/GitHubで見る-
できればもうちょっと早めにリリースしてほしかったですね…
-
雨後の竹の子のように現れたGDPR対策ライブラリが軒並み不要に……
-
YouTubeとかはこれで通信してるんですね。Google製のネットワークライブラリというとVolleyを思い出してしまいますが、さて 🤔
Android Pie の Digital Wellbeing(ベータ版) にも Cronet が利用されていました。
どうもGoogle謹製はこのライブラリを使っていく気がしますね。。。