Posted:
Android 5.0 Lollipop にてリリースされた新機能の一部について、その実装方法を具体的に示した コードサンプルを新たに 20 以上  追加しました。コードサンプルは、Android Studio 1.0 で新たなサンプル ウィザードを使用すれば簡単にインポートできます。

File > Import Sample を選択して、利用可能なサンプルを表示します。各サンプルの説明とプレビューもそこに表示されます。サンプルを選択して Next を選択すると、新しいプロジェクトが自動的に作成されます。このプロジェクトをエミュレーターまたはデバイス上で実行し、あとは自由にコードをお試しください。

Android Studio 1.0 のサンプル ウィザード


Android Studio 上に新たにインポートしたサンプル プロジェクト

上記の方法の他に、  デベロッパー向けサイトの  サンプル ブラウザ から探す方法もあります。それぞれのサンプルには、Overview(概要説明)、アプリのファイル構造を確認できる Project(プロジェクト)ページ、そのサンプルの zip ファイルを入手できる Download(ダウンロード)リンクが掲載されています。さらに別の方法として、SDK Manager にて Android 5.0(API 21)用の  SDK サンプル をダウンロードして、既存のプロジェクトとしてご自分の IDE にインポートする方法もあります。

マテリアル デザイン

遷移アニメーションのサンプル
マテリアル デザインを採用する場合は、以下に挙げるマテリアル要素に特に重点を置いたサンプルコードが参考になるでしょう。
詳しくは、デザイン  チェックリスト、主要 API およびウィジェットのリストガイドラインのドキュメントを参照してください。

上記マテリアル デザイン要素の一部を実装したものを見るには、Google I/O アプリのソースコードを参照してください。

プラットフォーム

Lollipop  では、Android プラットフォーム史上、最大規模のアップデートを行っています。Overview 画面では、複数のタスクを  並んで表示されたドキュメントとして表現できます。高度な通知の導入には、こちらの  サンプル  コードを利用できます。このコードには、lockscreen と heads-up notification API の使い方が示されています。

さらに、新しく Camera API  を導入し、より高度な画像キャプチャ機能と処理能力を提供しています。これらのサンプルでは、カメラ プレビューを使って  写真を撮る方法動画の録画方法、リアルタイム HDR(ハイ ダイナミック レンジ)カメラ ビューファインダーの実装方法を詳しく説明しています。

このほかに、 Project Volta  では、新しい API とツールの提供を通して、アプリのバッテリー使用の効率化を支援しています。こちらの JobScheduler のサンプル  では、バックグラウンド タスクの実行を遅らせたり、特定の条件下で実行させるといったスケジュール設定の方法を説明しています。

エンタープライズ向けデバイス管理の使用事例に興味がある方向けには、  アプリの制限  を設定する方法、および マネージド プロフィールを作成する方法を説明したサンプル アプリがあります。

Android Wear

Android Wear に関しては、ウェアラブル端末の GPS サポートを活用する方法を示した  Speed Tracker のサンプルを用意しています。それ以外の  Android Wear のサンプルもご確認ください。以下に、データの同期、通知、ラウンド ディスプレイ対応など、ウェアラブル端末固有の機能を一部挙げておきます。

Android TV

 Leanback ライブラリ を使ってアプリを Android TV にも対応させる方法は、こちらの トレーニング ガイド  および サンプルで説明しています。

Android TV 向けに特化して最適化されたゲームを試してみたい場合は、Google Play から  Pie Noon  をダウンロードしてください。これは  Google で開発したインハウスのオープンソース ゲーム  で、Bluetooth コントローラーまたはモバイル端末のタッチ コントロールを使用する、マルチプレイヤーに対応したゲームです。

Android Auto

DevByte Introduction to Android Auto(Android Auto 入門) で取り上げた使用事例について、2 つのコードサンプルを用意しました。Media Browser のサンプルDevByte)では、新たな Lollipop Media APIを使ってオーディオ アプリを Android Auto に簡単に対応させる方法を、また、 Messaging のサンプル  (DevByte)では、音声認識による返信をサポートした通知を実装する方法をそれぞれ説明しています。

Google Play 開発者サービス

以上、Android プラットフォームおよび各種フォームファクター用のサンプル リソースについて紹介してきましたが、Google Play 開発者サービス関連の既存のサンプルについてもひと言申し上げておきます。Google Play 開発者サービスでは、Maps、Google Fit、Google Cast など、最新の Google API をアプリ開発にご活用いただけます。Google Play 開発者サービス SDK のサンプルにアクセスするか、  デベロッパー向けサイトにある各 API の個別ページにアクセスしてください。ゲーム開発者向けには、成績、スコアボード、マルチプレイヤーサポートをゲームに追加する方法を示した  Google Play Games サービス  のサンプルをご用意しています。

※ なお、今回公開されたコードサンプルには、日本の Developer Relations チームの Developer Programs Engineer である Takeshi Hagikura と Yuichi Araki のコードも多数含まれています。Developer Relations チームでの仕事にご興味ある方はこちらの記事もご参照ください。


Posted by Ryosuke Matsuuchi - Developer Relations Team

Posted:
Android Wear 向けの公式 Watch Face API の用意ができたことを開発者のみなさまにご報告いたします。ウォッチフェイスの登場によって、ユーザーが個性を発揮する場が増えただけではなく、開発者が時計のメイン UI であるウォッチフェイスをカスタマイズできるようになりました。これまでにユーザーと開発者のどちらからも、もっとも多く寄せられた要望がウォッチフェイスの機能でした。今回の API 提供で、みなさまがなにを作り出すのか、楽しみにしています。

Timothy Jordan による、Android Wear 向けウォッチフェイスの紹介ビデオ

デザインと開発

はじめにウォッチフェイスのデザインについて参照し、次にウォッチフェイス作成のトレーニングクラスをご覧ください。また、オンライン上にあるウォッチフェイスのサンプルや、Android Studio のサンプルマネージャーでも参考になる実例を入手することができるので、すぐにウォッチフェイス開発に取りかかることができるでしょう。また、上記にある Android Wear 向けウォッチフェイスの紹介ビデオで概要をご覧いただけます。

ウォッチフェイスは Android Wear アプリで動作するサービスの 1 種なので、インストールした 1 つのアプリに対し複数のウォッチフェイスを提供することが可能です。ユーザーが 12 時間・24 時間表記を選択できるようにしたり、ウォッチフェイスの背景を変更できるようにしたり、スマートフォンや腕時計などの端末で設定変更を可能にすることもできます。また、OpenGL を利用してスムーズなグラフィックを描写したり、バックグラウンド サービスを利用して天気やカレンダーイベントなどの役立つ情報を入手したりすることも可能です。ウォッチフェイスではアナログ式やデジタル式で時間を表示しても良いですし、まだ誰も見たことがない革新的な方法で時間を表示させることも可能です。すべてはあなた次第です。

既存デバイスへのアップデート

Android 5.0 をベースとして API レベル 21 を提供する最新の Android Wear プラットフォームがユーザーへ提供されます。すべての Android Wear デバイスは OTA(Over-The-Air)方式で Android 5.0 へとアップデートされます。本アップデートによってユーザーは、スマートフォンの Android Wear アプリでウォッチフェイスを管理・設定したり、Google Play からウォッチフェイスをインストールしたりできるようになります。Android 4.3 以上がインストールされた端末は引き続き、すべての Android Wear デバイスに対応します。

ウォッチフェイスをアップグレード

私たちが開発用ドキュメントを公開する前に、すでにウォッチフェイスを作成していた開発者がいたことには大変関心させられましたが、非公式のやり方で Android Wear 向けのウォッチフェイスを作成していた場合には、公式 API へ移行してください。公式 API は統一されたユーザー体験をもたらすと同時に、Android Wear デバイスがアンビエントモードに入ったかどうかがわかったり、システム UI 要素の位置を調節したりといった機能をもたらします。また、Google Play のウォッチフェイス コレクションにフィーチャー掲載されるためには、新しい API の使用が必須となります。

ウォッチフェイスの配信

Android Wear 5.0 API 21 の OTA 方式でのロールアウトが完了したら、すぐに Google Play で配信中の対応アプリをアップデートすることを推奨します。ロールアウトの完了は、Google+ の Android Wear 開発者コミュニティで発表します。API 20 のデバイスでは API 21 を必要とするウォッチフェイスを表示できないため、ロールアウトの完了を待ってアップデートする必要があります。新しい API をインストールすると、ウォッチフェイスが表示されるようになりますが、ロールアウトが完了する前に wearable アプリをアップデートする場合には、OTA 配信を受ける前のユーザーがインストールに失敗しないように minSdkVersion を 20 に設定してください。ロールアウト完了後は、すみやかにウォッチフェイスを新しい API に移行してください。2015 年 1 月 31 日に、公式 API を用いていないウォッチフェイスのサポートを終了する予定です。

Google Play での Android Wear アプリ

Android Wear への配信に関するガイドラインに従っていただければ、アプリを Google Play 内の「Android Wear 向け」として申請できるようになりました。Wear アプリの品質チェックリストに準拠し、Google Play 内の Wear アプリとして承認されると、Android Wear デバイスのユーザーがアプリを見つけやすくなります。Android Wear レビューにオプトインするためには、Google Play デベロッパー コンソールの価格と配信のセクションをご覧ください。

Android Wear をローンチしてたった数ヶ月で、開発者のみなさまは、カスタム通知、ボイスアクション、他のネイティブな Android 機能を活用した数千ものアプリをリリースしました。みなさまのおかげで、ユーザーは 6 つのデバイス、種類豊富な時計バンド、そして数千のアプリを組み合わせた自分だけのAndroid Wear デバイスを作ることができます。カスタム ウォッチフェイスの提供により、ユーザーは今後さらに細かくカスタマイズすることが可能になります。豊富な選択肢こそが、リッチな Android Wear のエコシステムの根幹です。今後もプラットフォームのコアとなる機能を開発者のみなさまに提供し続けてまいりますが、そこからなにが生まれるのか、楽しみでしかたがありません。

Posted by Yuichi Araki - Developer Relations Team

Posted:
Posted by 山口能迪 Developer Relations Team

[任天堂株式会社のソフトウェア開発者、白川英一様よりご寄稿頂きました。 - 山口]

動画 © 2014 Nintendo

------
Google Developer ブログの読者の皆様、こんにちは。任天堂が発売する Wii U の一部のソフトから YouTube にゲームの映像を投稿できることはご存知でしょうか?

例えば、「マリオカート8」の場合、レース後の「ハイライト」や「マリオカートTV」の「ハイライトをアップロード」から、ハイライト映像を YouTube にアップロードすることができます。

今回は、YouTube 開発者の方々の参考になればと思い、この機能の開発の道のりについてお話しさせて頂こうと思います。

ゲームチームからの動画投稿を行いたいというリクエストと、Nintendo European Research and Development SAS (NERD) (※) で進めていたリサーチが出会う形で、Wii U の本体機能として動画のアップロード機能の開発がスタートしました。
動画投稿サービスの中でも、YouTube では、すでに弊社製品プロモーションのためのチャンネルを公開させていただいておりました。加えて、動画の権利を保護するためのシステムが充実していることもあり、アップロード先のサービスとして採用することになりました。
(※) R&D を担当している、フランスのパリにある任天堂の開発子会社。

全体を通じて開発チームが特に心がけたところは、録画、認証、アップロード、伝播という各プロセスにおいて、お客様のつまずきやストレスを少なくし、この機能を様々な層のお客様にお使いいただけるものにすることでした。

録画においては、ゲームプログラムへの負荷が小さい独自コーデックで一度録画を行い、その後、アップロード中に、圧縮率の高い H.264 に変換するということを行っています。また、この一時録画のために、Wii U のシステムの機能を一部強化しています。

認証について YouTube が提供している方法は一般的な OAuth 2.0 に基づくものでした。これに合わせて Wii U のインターネットブラウザーとその他アプリケーションとの連携機能を強化しています。

アップロードにおいては、特に接続や速度の条件の良くない環境においてもアップロードを最後まで行えることを目指しました。ここで切断したセッションを再開できる YouTube v3 API の Resumable Upload API が有効に活用できました。

伝播においては、アップロードされた動画が、興味を持つ方々に観ていただくことができるように、弊社 Miiverse のコミュニティやウェブサイト「マリオカートTV」を活用しています。

現在、実装されているシステムでは、特にアップロード速度においてまだまだ改善が必要だという認識です。引き続き任天堂では、動画とゲームの関わりについて新しい提案をしていきたいと考えております。そのうえで、YouTube が提供する、 API やサーバーインフラや権利処理における強固な基盤は非常に心強い存在です。

Posted:
Polymer, Android(前編後編)に引き続き、ビデオシリーズ I/O Bytes 2014 のAndroid Wear 関連の動画に日本語字幕が追加されましたのでご紹介します。

Android Wearのためのデザイン

Android Wearでは、より良いユーザ体験のためには従来のモバイル・タブレット向けのアプリケーションとは異なる画面設計が必要となります。この動画ではAndroid Wear向けデザインの基本コンセプトをご紹介します。


Android Wear向けの新しい通知機能

Android Wear対応の第一歩は通知の最適化です。本動画ではWearableExtenderクラスを用いて、通知をAndroid Wear向けに最適化する方法とその実装方法をご紹介しています。


Android Wear向けのUIの作成

Android WearではWearableアプリケーションと呼ばれるAndroid Wear専用のアプリケーションを作成することが可能です。Wearableアプリケーションを開発する際には通常のAndroidアプリケーションと異なるUIセットを利用する事となります。本動画では各UIコンポーネントの概念とその利用方法についてご紹介します。


Android Wear向けフルスクリーンアプリケーション

Android Wearでフルスクリーンアプリケーションを開発する際の手順をソースコードレベルでご紹介します。特に角型・丸型の両対応をするための方法など、Android Wear向けアプリケーション特有の注意事項などもご紹介しています。


GoogleがどのようにAndroid Wear対応を行ったか

Gmail、ハングアウト、カメラ、Google マップの各AndroidアプリケーションをどのようにAndroid Wear対応させたかを紹介しています。いずれもAndroidアプリケーションのユーザ体験を変えずに対応しています。通知、DataItem、カスタムカードなどの使用例や実装例をご紹介しています。



Posted by Yoshifumi Yamaguchi - Developer Relations Team

Posted:
Google Developers Blog(英語)にて、既にご案内している利用規約の変更内容(2014 年 12 月 5 日より発効)について、日本語でもご案内いたします。



Google API の利用規約の一部変更についてお知らせいたします。

変更後の規約の全文はこちらでご確認いただけます。また、主な変更内容はこちらの記事にまとめています。

主な大きな変更点は以下のとおりです:
  • データ移植性について:Google API を通じて取得したユーザー データを利用または保管する間は、Google API を現在も使用しているかどうかに関わらずデータ移植性の要件に従う義務が存続すること、また、この義務を順守していない第三者によるデータの利用を許可しないことに同意することを明記しています。すなわち Google は、エンド ユーザー自身によってデータが管理されることを尊重しており、Google API の利用者の方々もそれを尊重するべきです。
  • デベロッパーの皆さんに対して、他のすべての Google サービスの利用規約についても違反しないよう求めます。
  • Google は API をより良いものにするため、API を通じて送信されたコンテンツを使用する場合があります。Google はこの権利を保有しますが、API(およびそれに関連するサービス)を提供、保証、改善する目的で、かつ  Google のプライバシー ポリシーに沿った場合にのみ使用します。
その他にも次のような変更点があります:
  • Google のサービスを利用するデベロッパーの皆さんに対し、連絡先情報を常に最新の状態にしておくようお願いしています。
  • ITAR データあるいは HIPAA で保護された医療情報を扱うようなリスクの高い活動には、API を使用すべきではないことを明記しています(ただし、Google からの書面による同意がある場合を除きます)。
  • デベロッパーに対し、各自のプライベート キーの安全を守り、オープンソースのプロジェクト内に埋め込むことのないよう、合理的な努力をするようお願いをしています。
  • API の使用量に対して Google が制限を設けることを明記しています。使用量を増やしたい場合は、Google からの同意を得る必要があります。
  • 利用規約の修正の多くは、その内容を発表した 30 日後に有効になります(以前は 7 日後)。

Posted by Developer Relations Team

Posted:
[この記事は Android のプロダクト マネージャー Jamal Eason による Android Developers Blog の記事 "Android Studio 1.0" を元に荒木が翻訳・加筆しました。詳しくは元記事をご覧ください]

本日、ついに Android Studio 1.0 をリリースしました。Android Studio は Android チームが公式に提供する統合開発環境です。元になっているのは Java IDE として人気の高い IntelliJ IDEA(コミュニティー エディション)です。
Android Studio を初めにプレビュー版としてリリースしたのは昨年の I/O のときでした。開発者の皆様からのフィードバックは大変役立ちました。ありがとうございます。Android 1.0 は Android Developers の Web サイトから安定版リリースとしてダウンロードできます。


Android Studio をダウンロード

Android 向けのアプリを開発してくださっている皆様、これから開発しようという皆様、今が Android Studio 1.0 をダウンロード(または以前のバージョンからアップグレード)するときです。Chrome のリリース チャンネルと同様に、Android Studio も複数のリリース チャンネルから更新を受けることができます。Stable(安定版)、Beta(ベータ)、Dev(開発版)そして Canary(最新ビルド版)です。Canary ビルドが開発の最先端で不安定である可能性があり、Stable が十分テストされている安定版です。Android Studio の最新機能をチェックする必要に応じて、これらのリリース チャンネルの中から選んでください。

Android Studio の機能

Android Studio がリリースされたことで、開発の流れを加速する様々な機能が利用できるようになりました。以下に Android Studio の主な機能をいくつか挙げました。完全な機能一覧は Android Studio の Web サイトをご覧ください。

セットアップ

  • 初回セットアップ ウィザード: 初回のセットアップ時に、必要な Android SDK のインストール、開発環境の設定、テスト用のエミュレーターの作成を行うことができます。加えて、コード テンプレートも用意しました。
  • サンプルのインポートとテンプレート: Android Studio に含まれているウィザードを使って、新しいプロジェクトの テンプレートや Google のコード サンプルをインポートすることができます。

コードとリソースの編集とユーザー インターフェイス デザイン

  • コード編集: Android Studio では IntelliJ IDEA が提供するインテリジェントなコード編集機能を利用することができます。コード補完、リファクタリング、コード解析などです。
  • 文字列編集の国際化: Android Studio でアプリで利用する文字列の翻訳を管理できます。
  • ユーザー インターフェイス デザイン: アプリのレイアウトを、複数の画面サイズ、言語、API バージョンで一覧することができます。

パフォーマンス解析

  • メモリー モニター: 時間とともに変化するメモリーの使用状況を確認することで、アプリのパフォーマンス改善に役立ちます。

統一されたビルド システム

  • Android Studio は Gradle に基づいたビルド システムを利用しています。これにより、柔軟で拡張性の高いビルドが IDE の中でも外でも実現できます。ビルド システムは Studio 自体からは独立しているため、Studio をアップデートしてもビルドには影響しません。
  • このビルド システムの主な機能は、ビルド バリアント(デバッグ版とリリース版、無料版と有料版など)、スプリット(複数 APK)、multi-dex 、サード パーティーのライブラリーの依存関係の管理などです。

Google Cloud サービスにすぐアクセス

  • Android Studio を使えば Google Cloud のバックエンドや Endpoints、Google Cloud Messaging をアプリに組み込むのも簡単です(詳細)。

移行と更新

現在 Eclipse をご利用の方は、移行ステップを確認した上でインポート ウィザードでプロジェクトをインポートしてください。




以前のバージョンの Android Studio をご利用の方も、バージョン 1.0 にアップグレードしてください。たくさんの新機能と不具合修正が含まれています。
また、Gradle プラグインのバージョン 1.0 もリリースしました。Android Studio と Gradle プラグインの間の連携も安定しており、一方だけをアップデートすることもできるようになりました。以前のバージョンからの更新について、詳しくは 技術リリース ノートをご確認下さい。

フィードバックを募集しています

我々はいつでも Android の開発環境の改善に努めています。すでにテスト機能の改善やゲーム開発のサポート改善などが予定されていますが、開発者が Android の開発環境に何を求めているのか教えていただきたいのです。
ぜひアンケート(5 分程度)にご協力ください。皆様のお声が次の Android Studio の機能を決めます。

ご質問

Android Studio やその周辺の開発ツールはオープンソースで開発されています。Android のバグ トラッカーにバグを登録していただくこともできます。Android Studio の機能や移行方法についてご質問がある方は、Google+ の日本語コミュニティーでお問い合わせください。


Posted by Yuichi Araki Developer Relations Team

Posted:
前回に引き続き、ビデオシリーズ I/O Bytes 2014 の Android 関連動画をご紹介します。今回はメディア関連の動画などをまとめました。

Android でのメディア体験

ビデオの再生や録画、字幕の制御、外部ディスプレイの利用について解説します。


Android で作る没入型のメディア体験

MediaCodec の内部実装にまで踏み込んでメディア関連の低レベル API を解説します。


ExoPlayer: Android で適応的ビデオストリーミング

ExoPlayer はメディア プレーヤーを実装するための基板として利用できる API で、YouTube や Play Movies のアプリでも利用されています。


浮動小数点数オーディオの光と影

オーディオの内部表現が整数から浮動小数点数に変更されたことについての小話です。


サンプル レートとリサンプリング: なんでみんな仲良くできないの?

なぜ様々なサンプル レートが存在するのか疑問に思ったことはあるでしょうか。Android でのサンプル レートとリサンプリングについて紹介します。


あなたのアプリに地図を!

ストリート ビューやインドア マップなど、Google Maps Android API の新機能をご紹介します。


Android Auto の中身

Android Auto のアーキテクチャーについて解説します。


次世代の認証

Lollipop の新しい認証機能をご紹介します。


Android アプリ開発者のための分離

Android アプリで利用できるセキュリティー機能について解説します。


Google Play 開発者サービス 5.0

Google Play 開発者サービス 5.0 に関する紹介です。


パフォーマンス入門: CPU, GPU と Android ゲーム

ゲームのパフォーマンスを改善する上で役立つ CPU や GPU の動作の概念を紹介します。