Google I/Oは2008年から行われているGoogle主催の開発者向けイベントです。
WebやAIなどGoogleが行っていることについて様々発表されましたが、その中からAndroidに関わることを自分の勉強も兼ねてざっくりおさらいします。
ほんとざっくりなので説明が足りない部分があることをご了承願います!
項目は全部で9つあります。どれも気になるものばかりですね!
■撮影時に花の種類を教えてくれたり、店の写真を撮れば評判や予約、情報をサジェストしてくれたりする。
■参考動画[花の種類や店の評判、あとカメラでうつすとWi-Fiの設定が自動で行われるなど]
■参考動画[たこ焼きの看板を自動で英語に翻訳]
(2)TensorFlow Lite
■モバイルや組み込み系に最適化されたTensorFlow。
■これまでAndroidでTensorFlowを使うには複雑なセットアップを行う必要があったが、簡単に組み込めるようになった。
■参考動画[TensorFlow Liteの紹介]
■参考動画[TensorFlowの利用事例(日本のキュウリ農家)]
■参考動画[TensorFlowの利用事例(毎朝体操)]
(3)Kotlin
■AndroidでJetBrains社が開発したプログラミング言語『Kotlin』を公式サポート。
■半公式から公式へ
・Android Studio、IntelliJ IDEAの開発元もJetBrains。
・KotlinはこれまでもAndroid Studioにプラグインを入れれば動くようにできていた。
・Googleは公式サポートしてないが、Android Studioでは公式サポートされているという半公式状態だった。
・今回の発表でめでたく公式に。
■Android Studio 3.0はKotlinを最初から同梱。
・現在Android Studioの開発版『Android Studio 3.0 Canary 1』がリリース済み。
・KotlinはJavaと相互運用が可能で、開発者は互換性について心配する必要がない。
■開発元JetBrainsはGoogleとのパートナーシップで非営利のKotlin財団の設立を予定。
■詳しくはこちら
(4)Android Studio 3.0
■Kotlin
・JavaのソースコードをKotlinのエディタにコピペするとIDEが自動的にKotlinコードに変換して貼り付けることができる。
・新規プロジェクト作成時にKotlin対応プロジェクトを選択できるようになった。
■Layout Editor
・レイアウトXMLを手書きで記述する代わりに、ウィジェットをドラッグ&ドロップすることで、レイアウトをより速く作成することができる。
■Instant App Support
・Instant App対応のプロジェクトが作成可能になった。
■Build Speed Improvements
・GradleプラグインにAPIの変更が加わり、多くのモジュールを持つプロジェクトにてビルド速度が向上。
■Android Profiler
・これまではAndroid Monitorというものがあったが、それの進化版。
・アプリのパフォーマンス解析をするための、新しいツールが含まれている。
■詳しくはこちら
■参考動画[Android Profilerのデモ]
■参考動画[KotlinだとJavaに比べてコード量が少なくて済む、JavaのコードをKotlinのファイルに貼り付けると自動変換するなど]
(5)InstantApps
■ストアからアプリ全体をダウンロードせずに、アプリの一部を起動することができる機能。
■ブラウザの検索結果やリンクをクリックすると起動する。
■これまで限定的だったが、今回Instant Appsを全ての開発者に開放。
■詳しくはこちら
(6)Architecuture Components
■新たに追加されたSupport Library。
■大きく分けて4つの機能
1.Lifecycle
・ActivityやFragmentのライフサイクルイベントの監視や状態が管理できる。
2.LiveData
・変更通知してくれるデータ。
3.ViewModel
・Activityが破棄された後もデータを残しておくことができる。
4.Room
・SQLiteのORM。
■詳しくはこちら
■参考動画[Architecture Componentsの紹介]
(7)Support Library 26.0.0-beta-1
■最新バージョンのSupport Library。
■最小サポートバージョン
・APIの最小サポートバージョンが14(Android4.0、ICE_CREAM_SANDWICH)に変更。
・Gingerbreadとhoneycombがドロップ。
■Font in XML
・フォントファイルを「res/font/」に追加することで、フォントをResourceとしてバンドルでき、以下のような形でアクセスできる。
@font/myfont
■ Downloadable Fonts
・APKにファイルを含めたり、APKにフォントファイルをダウンロードするのではなく、プロバイダアプリケーションからフォントをリクエストするためのAPIが導入された。
・これによって以下のような良いことがある。
1.APKサイズの縮小。
2.アプリのインストール成功率の向上。
3.複数のAPKで同じフォントを共有できるので、通信料、メモリ、ディスクスペースが
節約される。フォントは必要なタイミングでネットワークから取得される。
■Emoji Compatibility
・EmojiCompatを使用することで、ユーザーの利用する端末が最新の絵文字を表示するフォントを持っていなくても、最新の絵文字を表示することが可能になる。
■AutoSizing TextView
・TextViewの特性や境界に基いて自動的にテキストサイズを拡大縮小できるようになる。
・様々な画面でテキストサイズを最適化することが容易になる。
■DynamicAnimation
・SpringやFlingといったアニメーションを実装できるようになる。
(8)Android O
■Android O Preview β配信発表。
■Nexus 5xやNexus 6pなどのGoogle純正端末はβテストに参加することで、Android OのOTAが受けられる。
■特徴
・起動時間が2倍高速になって、『Smart Text Selection』など様々な新機能が追加。
■詳しくはこちら
(9)Android Go
■1GBメモリでもサクサク動く軽量版Android OS。
■低スペックスマートフォン+貧弱なモバイル環境でもサクサクAndroidを使えるように設計されたカスタムOS。
■時期Android OS「Android O」からはメモリ1GB未満の端末は自動的にAndroid Goが搭載される。
以上となります。
6月6日(日本時間)に、今度はWWDC(Appleの開発者向けイベント)が行われます。
こちらもどんな発表があるのか楽しみです。