Androidエンジニアの 久木野(@cookych)です。
昨日の Google I/O 注目のAndroidセッション Day1 に続き、I/O 2017 Day2に行われたおすすめのAndroidセッションを紹介します。
What’s new in Android Support Library
今回発表されたSupport Library 26.0.0-beta-1の内容について紹介されています。
Drop Old API Support
APIの最小サポートバージョンが14になり、Gingerbreadとhoneycombがドロップされました。
Google Maven Repository
最新のSupport LibraryはGoogle Maven Repositoryからのダウンロードになります。
Font in XML
Android Oではフォントファイルをres/font/
に追加することで、フォントをResourceとしてバンドルでき、新しいResourceType font
でアクセス可能になります。
(ex. @font/myfont
or R.font.myfont
)
Downloadable Fonts
Android O及びSupport Library 26では「APKにフォントファイルをダウンロードさせる」か、「APKにファイルを含める」のではなく、プロバイダアプリケーションからフォントをリクエストするためのAPIが導入されています。
これにより以下の利点があります。
- APKサイズの縮小
- アプリのインストール成功率の向上
- 複数のAPKで同じフォントを共有できるので、ユーザーの通信料、メモリー、ディスクスペースが節約されます。また、フォントは必要なタイミングでネットワークから取得されます。
Emoji Compatibility
EmojiCompat
を使用することで、ユーザーの利用する端末が最新の絵文字を表示するフォントを持っていなくても、絵文字を表示することが可能になります。
AutoSizing TextView
TextView
の特性や境界に基づいて自動的にテキストのサイズを拡大縮小できるようになります。 この機能により、さまざまな画面でテキストサイズを最適化することが容易になります。
DynamicAnimation
DynamicAnimation
を使用することでSpringやFlingといったアニメーションを実装できるようになります。
FillType
API24+で使用できたVectorDrawable
のpathを定義するandroid:fillType
がAPI14から使用できるようになります。
PathData morphing
AnimatedVectorDrawableCompat
を使用したpathDataのmorphingがAPI14から使用できるようになります。
What’s New in Android Development Tools
ついにAndroid Studio 3.0の登場。ロゴがかっこいいです。
今回のアップデート内容から一部をピックアップして紹介します。
Kotlin
新しい言語としてKotlinが正式にサポートされました。
セッションではJavaのコードをコピー&ペーストでKotlinに変換する様子も紹介されています。
また、新規プロジェクト作成時にKotlin対応プロジェクトを選択できるようになりました。
Java 8
LambdaやType AnnotationsなどのJava 8言語機能のサブセットがサポートされました。
Use Java 8 language features | Android Studio
Layout Editor
Layout Editorの機能が強化されています。
レイアウトXMLを手書きで記述する代わりに、ウィジェットをドラッグ&ドロップすることで、レイアウトをより速く作成することができます。
Build a UI with Layout Editor | Android Studio
Android Things Support
新規プロジェクト・新規モジュール作成時に、Android Thingsの開発を始めるためのテンプレートが追加されました。
Android Thingsでは、これまでのAndroid開発ナレッジでIotデバイスの開発が可能です。
Instant App Support
昨年のIOで紹介されたInstant Appが公開され、Instant App対応のプロジェクト作成が可能になりました。
Build Speed Improvements
Android GradleプラグインにAPIの変更が加わり、多くのモジュールを持つプロジェクトにてビルド速度が向上しています。
これまで提供されていたAPIに依存している場合は、互換性を検証し、適用可能なAPIを移行する必要があります。
The Improved Android Plugin | Android Studio
Android Profiler
アプリのパフォーマンスの問題をデバッグするための、新しい一連のツールが含まれています。
以前のAndroid Monitorから、Android Profilerに置き換わりました。
Android Profiler in Android Studio 3.0 | Android Studio
What’s New in Android Design Tools
Layout Editorの機能拡張について、更に詳しく解説されています。
セッションの中でダイナミックなアニメーションを行うUIを作成する方法や、ConstraintLayout
の新機能、ベストプラクティスについても説明されています。
アプリのデザインの幅が一層広がり、すぐにでも試してみたくなるような情報が満載です。
ここまでDay2のAndroidセッションから注目セッションを紹介しました。
この他にもapkのサイズを縮小するベストプラクティスやビルド速度を向上させるTips、先日公開されたArchitecture Componentsの詳細など、Androidに関するセッションだけでも内容が盛り沢山なので、気になるセッションがあればAndroid Developersチャンネルの動画をチェックしてみてはいかがでしょうか。
Android at Google I/O 2017 – YouTube
また、5月26日に行う報告会では、今ブログでは紹介しきれなかったAndroidの興味深いセッションを厳選して解説します。