Boost」など、さまざまなカンファレンスを企画・運営しています。BOOKS(コードジン・ブックス)は、CodeZineの連載からカットアップした、開発現場の課題解決に役立つ書籍シリーズです。Boot参考資料まとめその他注目すべき機能ここまで、Kotlinのサポート、新しいJavaの記述方法を紹介してきました。3.0に追加された機能で、他に注目すべきものをカタログ的に紹介していきます。Studioに表示してくれる機能です。ListViewを使った画面があるとします。レイアウトエディタでは図7のように仮の表示です。Inspectorを使えば、図8の通り実行中の画面を表示してくれます。Inspector]を選択し、表示されたダイアログから実行中のパッケージを選択すれば表示されます。3.0では、右側のプロパティパネルでのプロパティのグループ化表示、および、プロパティパネルと左側のビューツリーでの検索機能が追加されています。XMLフォントとダウンローダブルフォントこれは、フォントをXMLで記述し、必要に応じてダウンロードしてくれる機能です。SDKに含まれていないフォント(カスタムフォント)を使う場合は、assetsフォルダにフォントファイルを格納しておく必要がありました。8(APIレベル26)からはリソースとして利用できるようになりました。これは、res/fontフォルダにフォントファイルを格納します。xmlファイルとしてフォントファミリーを記述して定義できます。リスト8がフォントファミリーを定義しているXMLのサンプルです。/></font-family>このファイルを、例えばmaru.xmlとしてfontフォルダに配置した場合、TextViewではリスト9のように指定すれば、フォントが適用されます。android:fontFamily="@font/maru"/>これが、XMLフォントです。フォントファイルのダウンロードすら不要な方法も用意されています。これがダウンローダブルフォントです。これは、フォントプロバイダというアプリを端末内に用意し、そのフォントプロバイダにフォントデータをダウンロードしてもらいます。端末内の各アプリはフォントプロバイダを通じてファイルを共有する仕組みです。この仕組みのおかげで、アプリ内にフォントファイルを組み込む必要がなくなり、アプリのサイズを減らすことができます。Fontsのフリーフォントが利用可能です。利用方法はいたって簡単です。レイアウトエディタの[Attributes]で[fontFamily]のドロップダウンリストを表示させてください(図9)。Fonts...]が表示されるので、それを選択してください。fontFamilyのドロップダウンリストを一番下までスクロールすると図10のリソースウィンドウが表示されます。フォントを選択するリソースウィンドウ右上に[Source]のドロップダウンがあり、こちらでフォントの提供先を選択できます。Fontsしか選べません。[Fonts]一覧をスクロールすると、[Downloadable]という区切り線が表示されます。それ以下がダウンローダブルフォントです。適当なフォントを選んで[OK]をクリックしてください。ここでは「Aclonica」を選択しています。すると、レイアウトエディタ[Attributes]の[fontFamily]に「@font/aclonica」と記述されると同時に、図11のように/res/fontフォルダが作成され、フォントファミリーが記述されたxmlファイルが自動生成されています。/res/fontフォルダ内にxmlファイルが生成されるとはいえ、フォントの実体はありません。これは、実行時にフォントプロバイダから提供されます。Profilerこれは、アプリのパフォーマンスをリアルタイムに表示する機能です。Profiler]を選択すると、図12のツールウィンドウが表示されます。アイコンをクリックしても表示されます。Profilerツールウィンドウこのツールウィンドウでは、画面に起こったイベントのタイミング(図12ではMainActivityと書かれた緑色の横線の上の紫色の●)、CPUの使用状況、メモリの使用状況、ネットワークのトラフィックが一度に、しかもリアルタイムで確認できます。この画面を見ながら、作成したアプリのパフォーマンスについて、どこにボトルネックがあるのかなどを確認し、改善につなげることができます。それぞれの行をクリックすると詳細が表示されます。参考までに、メモリ行をクリックした詳細画面(図13)を掲載しておきます。Appsは、インストール不要のAndroidネイティブアプリのことです。2017年5月17日、Googleが一般の開発者でも開発できるように公開しました。3.0はまだプレビュー版でしたが、先行で発表した形です。3.0が正式版となったことで、正式に開発が可能となりました。Storeなどを通してアプリをインストールする必要がありました。appsはインストールの必要はありません。appsを表すURLにアクセスすると、自動的にモジュール化されたアプリの必要な部分だけを端末にダウンロードし、実行されます。ブラウザ上で動作しているように見えるので、Webアプリのように見えますが、ネイティブアプリとしての動作が可能です。Webアプリでは実現できなかった操作感を、アプリのインストールなしに体感してもらえる仕組みです。アプリの開発者は全く別々のアプリを作る必要もありません。既存のアプリの別ビルドとして同一プロジェクト内に作成できます。いえ、インストールするアプリと全く同等の機能が実現できるかというとそうではなく、例えば、バックグラウンド処理などは使えません。Bootこれは、エミュレータの高速起動を実現する機能ですが、現段階では安定板は供給されていません。したがって、この機能使いたい場合はプレビュー版を使う必要があります。26.2.0以降を使う必要があります。Channelにすることで入手できます。option]という項目があります。boot]にすることで、AVDの2回目以降の起動が早くなります。参考資料ここまで紹介してきた機能を解説した公式サイトへのリンクを掲載しておきます。Studioはさらに使いやすくなりました。新機能を試してください。