How to Manage Native C++ Memory in Android
多くのアプリケーションはJavaで書かれていますが、すでにC++ 資産がある場合、プラットフォーム間でコードを共有したい、低級言語を利用したい場合はC++を選ぶ必要がでてきます。
その際、メモリの開放処理が問題になることが多く、解放済みのC++メモリ空間へのアクセスやGCのタイミングが悪いと、アクセス前にオブジェクトを開放してしまい、実際にC++から利用するときにはメモリ上に存在しないケースが発生します。回避するためにはJavaでjava.lang.ref.PhantomReferenceを使ったメモリ管理を導入する(ファイナライズを避ける)、C++側ではstd::shared_ptrを使うなどして注意して実装する必要があります。
Understanding Color
色について見識を深めるセッションです。色の特性を物理学的、また人間が知覚する仕組みなど認知工学から始まり、色域や色空間など色の表現、相互変換について理解を進めます。
Android Oで追加されたColorSpace APIはカラーモードを変更してディスプレイにあった表色系での画像表示など今までコントロールできなかった色に対するハンドリングを可能にしています。Androidは多数のプラットフォームで動作しているため、Android TVなどデバイスごとの再現性向上が見込めます。
Android Fireside Chat
ファイヤサイドチャットは開発者があつまった座談会です。FuchsiaやFlatterがAndroidとどのように関わるのかまた関わっていないのか、Kotlin採用についても開発者のための投資であること、そして既存言語も同じように投資していくことが述べられました。
その他にも、ブロードキャストインテントの廃止、マテリアルデザインの成長について、Android StudioのプロファイラーとSystraceの違いなど開発者の疑問に回答しています。