[この記事は 2015 年 3 月 2 日に Ian Lake、デベロッパー アドボケートが Android Developers Blog に投稿した "Google Play services 7.0 - Places Everyone!" を元に、荒木が翻訳・加筆したものです。詳しくは元記事をご覧ください。]

Google Play サービス 7.0 の公開と、より良いアプリを作成するための新しいツールをご紹介します。このリリースでは、ロケーション設定の改善、位置情報設定の新しい API、新しいフィットネス データ、AdMob と Google アナリティクスの自動統合、Google Play ゲーム、その他多数の機能が盛り込まれています。

ロケーション設定ダイアログ

FusedLocationProviderApi には複数のセンサーが備えられ最適な位置情報を提供できるようになっていますが、アプリが受信する位置情報の正確性は依然として端末で有効な設定の種類(GPS、wifi、機内モードなど)に大きく左右されます。Google Play サービス 7.0 では、正常に LocationRequest が処理されるために必要なロケーション設定が有効であるかどうかを確認する標準的なメカニズムが導入されています。ロケーション設定に変更が必要な場合、アプリを開いたままユーザーがワンタッチで設定を変更できるようになります。
たとえば Google マップに位置情報の設定ダイアログを組み込んだことで、正しい位置情報を使用できるユーザーの数が劇的に増加したように、この API を使えば特にアプリの操作性に位置情報が極めて重要な場合に、ユーザーの使い心地が大幅に改善されます。

Places API

位置情報は単に緯度と経度だけではありません。新しい Places API では、Google のデータベースからその場所やビジネスの情報を簡単に入手できます。組み込みの Place Picker によって、ユーザーが現在の位置についての情報やその場所に関連した情報、たとえば場所の名前、住所、電話番号、ウェブサイトなどを簡単に得られるようになります。
アプリで独自の UI にする場合、getCurrentPlace() API を使えばユーザーの現在位置周辺の情報が返されます。また、アプリでの検索速度を早めるオートコンプリート予測も備えています。
加えて、addPlace() API を使えば場所を手動で追加してユーザーの現在地を通知できます。どんな場所にいても新しく発見したお気に入りの場所を共有することが可能です。
さらに、Places API はクロス プラットフォームに対応しています。まもなく iOS ベータ プログラムにも対応しますので、モバイル プラットフォーム全体でまったく同じようにアプリを使えるようになります。

Google Fit

Google Fit を使えばフィットネス アプリを簡単に作成できます。フィットネス専用の API を使うことで、現在位置や移動するスピードなどのセンサーデータを取得したり、アクティビティ データを集めて Google Fit のオープン プラットフォームに保存したり、それらのデータを自動的に集積してユーザーのフィットネス データを 1 つのビューに表示したりできます。
Google Play サービス 7.0 では、ご利用の GoogleApiClient に送った以前の Fitness.API は、次のような Google Fit Android APIs の優れた API セットに置き換えられます。
  • SensorsApi で生のセンサー データを取得する SENSORS_API
  • RecordingApi でデータを保存する RECORDING_API
  • HistoryApi でデータの挿入、削除、読み込みを行う HISTORY_API
  • SessionsApi でセッションを管理する SESSIONS_API
  • BleApi を使って Bluetooth Low Energy (BLE) 端末と通信する BLE_API
  • ConfigApi でカスタム データ タイプや Google Fit 設定を操作する CONFIG_API
この変更で Google Fit のメモリ使用量が大幅に減少し、アプリをバックグラウンドで実行できるようになります。Google Play サービスの以前のバージョンで作成されたアプリにも引き続き対応しますが、今回の変更を最大限に活用するため、Google Fit アプリの再構築を強くお勧めします。
すべてのデータをそろえれば、今回の変更のメリットを実感していただけるでしょう。Google Fit ではさらに 既存のデータタイプを増やし、体脂肪率や睡眠データも追加しています。

Google Mobile Ads

昨年 AdMob の Google アナリティクスのサービスを開始して以来、AdMob と Google アナリティクスを組み合わせて使うことで、ユーザーが実際にアプリをどのように使用しているか詳しく分析できるようになりました。今回の新しいリリースによって、Google Mobile Ads SDK を実装すれば自動的に Google アナリティクスが統合され、ユーザーやセッションの数、セッションの時間、アプリが実行されたオペーティング システム、端末のモデル、位置情報、自動の画面レポート機能などを、一切の追加の開発作業をせずに使うことができるようになります。
加えて、広告リクエストの先読み機能(バッテリー使用の軽減と待ち時間の短縮)や MRAIDv2 への適合など、数々の改善が組み込まれています。

Google Play ゲーム

ゲーム デベロッパー カンファレンス(GDC)で発表したように、Google Play のゲームがさらに充実する新しいツールを提供します。Google Play サービス 7.0 に含まれる Nearby Connections API を使うと、テレビでプレイ中のゲームを近くのスマートフォンやタブレットにシームレスにつなげて、セカンド スクリーンとして制御できるようになります。

App Indexing

App Indexing を使用すると、ネイティブ アプリへのディープ リンクが Google 検索結果に表示されるようになり、Google インデックスに登録されたアプリをウェブサイトと同じように扱えるようになります。今回のリリースでは従来の view()/viewEnd()action()/end() フローが 1 つの start()end() API に統合され、App Indexing API の操作がさらに簡単になります。

GoogleApiClient の変更

GoogleApiClient は、Google API にアクセスする共通のエントリ ポイントとして使用できます。今回のリリースでは、GoogleApiClient の Google OAuth 2.0 トークンを修正し、Google API にアクセスするためのサーバー認証コードの要求がさらに簡単になります。

SDK 近日公開

数日中に Google Play サービス 7.0 の公開を予定しています。公開時にはこのブログへの投稿やドキュメントを発行してお知らせしますので、お楽しみに。公開されたらぜひお試しください。
Google Play サービスや利用可能な API の詳細については、Android デベロッパー サイトの Google サービスのセクションをご覧ください。

Posted by Yuichi Araki - Developer Relations Team