#18-20180527-20180602
GDPRの話が落ち着いて、I/Oで発表された機能のリキャップがちらほら出始めているようです。
Google I/O 2018 に見るこれからの Android アプリ開発方法
GitHubで見るhttps://speakerdeck.com/yanzm/o-2018-nijian-ru-korekarafalse-android-apurikai-fa-fang-fa
@yanzm さんによる開発まわりのまとめ。個人的なおすすめが書いてあるのがいいです。
Kotlinがラムダ式をどうやって実現しているか
裏側では
FunctionN
と言われるinterface群を利用して表現しています。Android Studioだと
Toos > Kotlin > Show Kotlin Bytecode
からバイトコードが参照できますし、そこから更にDecompile
すると、KotlinのコードがJavaからどう見えてるか確認することができます。GitHubで見る-
一見Javaのラムダに変換しないのでオーバーヘッドがありそうですが、
inline
修飾子のおかげですべて展開されるのがいいですよね。
-
Android Pで追加されるAppComponentFactoryについての議論
GitHubで見るhttps://www.reddit.com/r/androiddev/comments/8nhjak/it_looks_like_starting_from_android_p_we_can/
JavaDocにも書いてあるとおり主にDependency Injection用だろうという受け止められ方をしているようです。なお、安定の The CommonsBlog でも触れられています: https://commonsware.com/blog/2018/03/08/random-musings-p-developer-preview-1.html
一部のAndroid端末でString#intern()の挙動が仕様と異なるという報告
https://developer.android.com/reference/java/lang/String.html#intern() を見ると、たしかに記事に書かれているコードは正しく動きそうです。一部のSamsung端末で起きるとのことなのでメーカーが何らかの最適化を走らせてしまっているのかもしれません。
WorkManagerの登場でevernote/android-jobが将来的に非推奨に
Note that there's also a hint about the new WorkManager and what this means for the library: https://t.co/9py6aKmRc5
— Ralf Wondratschek (@vRallev) 2018年5月28日
Working on library over the years has been amazing, but android-job will soon reach its end of life. Thanks for all the support, it meant a lot to me.バックグラウンドジョブのためのライブラリはたくさんありますが、WorkManagerの登場で次第に消えていくのでしょうか。
GitHubで見る-
このツイートのツリー見てると感謝の言葉がたくさんあってグッときます。
こういうフェードアウトでない形でライブラリの寿命が来るのは、なんというか素敵だなあと思いました。
-
HAXM 7.2.0 が利用可能になったそうです
GitHubで見るhttps://androidstudio.googleblog.com/2018/05/haxm-720-for-android-emulator-available.html
メモリの消費量が抑えられ起動が速くなるとのことですが、どうなんでしょうか。
JSR310(java.time)とJoda-Timeの違い
GitHubで見るhttp://blog.joda.org/2009/11/why-jsr-310-isn-joda-time_4941.html
9年も前の記事ですが、Redditの「Joda-Timeとjava.timeは同じだろ?」という意見に対するJakeのコメントで引用されていました。みんなJodaTimeじゃなくてjava.timeを使いましょう。
併せて読みたい:https://github.com/AndroidDagashi/AndroidDagashi/issues/181
targetSdkVersionが低いとLintがエラーを出すようになったみたいです
GitHubで見るStarting on Friday (June 1), Lint from Android Studio 3.2 will flag targetSdkVersion < 26 as an error. The intention is to make this issue more visible so you can get ready for the upcoming Play Console deadline. pic.twitter.com/sFLBv6tIAl
— Android Studio (@androidstudio) May 30, 2018以前からアナウンスされていましたが、今年の11月までに既存アプリもtargetSdkVersionを上げないとリリースできなくなります。早めにご準備を。
Google Play Store ConsoleのAPI keyが流出し、不正なアプリがリリースされてしまった事案
https://bacoor.co/archives/17689/
仮想通貨ウォレットアプリで不正なバージョンがリリースされ、顧客資産が盗難にあってしまったそうです。
ちょっと毛色が違う気もしますが、いろいろ学ぶことの多い事件だと思いました。GitHubで見る-
CI用にサービスアカウントがあると、管理が難しくなりそうですね。他山の石としたいです。
-
Jetpackをふんだんに使ったGoogle謹製のサンプルアプリ
https://github.com/googlesamples/android-sunflower
ふんだん、というと言い過ぎですが、navigationやWorkManagerも使っているので見るとおもしろいかもしれません。なお、ソースは takahirom さんのツイートです:https://twitter.com/new_runnable/status/1000961813356298240
GitHubで見る-
複数Activityな構成になってるんですね。
Toolbarのレイアウトが異なるときにFragmentでやるかActivity分けるか、とかそのへんの判断基準とかあるいはベストプラクティスもカバーされるといいなあ。
-
もろもろ、正式版が待ち遠しいですね。
androidxへの移行は、リファクタ機能が提供されているとはいえなかなか骨が折れそう…