15:00 - 15:05
オープニングのご挨拶
15:05 - 15:45
Google Play からの最新情報と 7 月末のポリシー更新内容
15:45 - 16:00
Q & A(質問はこちらの Google フォームで事前に受け付けております)
16:00 - 16:20
ビジネス セッション: Google Play からの最新情報
16:20 - 16:50
技術セッション: Google Play Billing Library を用いた実装の概要とヒント
16:50 - 17:00
クロージングのご挨拶
2021 年 7 月 12 日(米国時間) に、Android Game Development Kit(AGDK)をリリースしました。これはさまざまなツールとライブラリの集まりで、高品質の Android ゲームを開発、最適化、配信する際に役立ちます。
AGDK の機能は、次の 3 つの信条に従っています。
この初回リリースでは、デベロッパー コミュニティから多くのフィードバックが寄せられた 3 つの主要領域に注力しています。具体的には、統合ワークフロー、C/C++ ゲーム ライブラリ、そしてパフォーマンスの最適化です。
一般的には、ツールを切り替える回数が少ないほど、効率が上がります。そこで AGDK では、皆さんが主に使う IDE で Android ゲーム開発を高速化できる新しいツールを提供します。皆さまが使い慣れている既存のワークフローのどの部分とも両立できるようにしつつ、Google が独自の価値を追加して Android 固有の問題を解消できるワークフローに注力したいと考えています。
C/C++ 開発用のゲーム ライブラリを使うと、Java Native Interface(JNI)を使う頻度を減らし、C で開発を始めることができます。ほとんどのゲームやゲームエンジンは C++ で書かれていますが、ほとんどの Android 開発では Java プログラミング言語を使用する必要があります。Java Native Interface でこの 2 つの言語を連携させるには労力が必要で、それがバグやパフォーマンス低下の原因となる場合があります。AGDK では、Java プログラミング言語と JNI の利用を最低限にとどめる C ゲーム ライブラリが提供されるので、ゲームエンジンの構築やカスタマイズに役立ちます。つまり、ゲームの開発、デバッグ、メンテナンスが容易になります。
私たちは、皆さんが一番不満を感じている部分に集中的に取り組んでいます。最初のうちは、アクティビティや入力のベースとなるクラスを構築することで対処しますが、長期的には、C ライブラリをさらに追加し、さまざまなゲームエンジンで一般的に使われる機能を提供することを計画しています。既存のフレーム ペーシング ライブラリと高パフォーマンス オーディオ ライブラリをこの作業に組み込み、さらに次の 3 つの新機能を追加します。
これらのライブラリの詳細は、Google for Games Developer Summit 2021 の C/C++ ライブラリのセッション (日本語字幕あり)をご覧ください。
できる限り簡単に統合作業を行えるように、すべてのライブラリは、Maven 依存関係、コンパイル済み Zip ファイル、ソースコードとして取得できるようになっています。
ここでの目標は、リリース前に安定性やパフォーマンスの問題を見つけられるようにすること、リリース後に監視して問題が起きたときに把握できるようにすることです。まずは、フレームレート、読み込み時間、メモリなどの特に重要な指標から始め、今後も新しい指標を追加する予定です。
g.co/android/AGDK (英語) にアクセスすると、Android ゲーム開発の最新リソースを確認したり、AGDK をダウンロードすることができます。Google for Games Developer Summit のすべてのセッションの情報は、モバイル セッション トラック(日本語字幕あり) から確認できます。日本で開催される振り返りイベントにも、ぜひご参加ください。
Reviewed by Tamao Imura - Developer Marketing Manager, Google Play
2021 年 7 月 12 日から 13 日(日本時間 7 月 13 日から 14 日)にゲームに特化したデベロッパー向けイベント、 「Google for Games Developer Summit 2021」 をオンラインで開催しました。
これにあわせて、Google for Games Developer Summit 2021 で発表されたコンテンツのうち、日本のデベロッパー様へ特にお届けしたい話題をご紹介する「Google for Games Developer Summit 2021 Recap 」を 8 月 25 日 16:00 より開催します。
金 清司 Google Play Partnerships ゲーム部門 日本統括部長
松内 良介 デベロッパー リレーションズ デベロッパー アドボケイト
※内容は変更される場合がありますので、最新情報はウェブサイトでご確認ください。
新しい情報は、引き続き、ウェブサイトならびに本ブログでもお知らせします。 Twitter : #GoogleforGames
Posted by Tamao Imura - Developer Marketing Manager, Platforms and Ecosystems
インディーゲームのコンテスト Google Play | Indie Games Festival 2021 の審査員をご紹介します。今年もインディーゲームに精通している審査員が、応募作品を様々な角度から審査します。
※(五十音順、敬称略)
安藤 武博
株式会社シシララ 代表取締役 ゲームDJ
ゲーム DJ・ゲームプロデューサー。1998 年、株式会社エニックス(現スクウェア・エニックス)入社。2015 年、株式会社シシララ設立。PlayStation® などの家庭用ゲームの他、スマートフォンゲーム、テレビ番組など様々なプラットフォームでプロデュースを手掛ける。19 年末、株式会社DONUTS ゲーム事業部長に就任。当フェスティバルでは、初回の 2018 年より審査員を務めている。
成沢 理恵
monoAI technology株式会社、モリカトロン株式会社、ちゅらっぷす株式会社、株式会社ArAtA、RingZero株式会社、Amusement Asset Associates株式会社 / 取締役
株式会社モバイルファクトリー / 社外取締役
国際基督教大学卒。
ゲームプロデューサー、Chief Entertainment Strategy Officer。
1998 年、株式会社エニックス(現スクウェア・エニックス)入社。現在は、東京、福岡、神戸、沖縄など7社のゲーム会社の取締役、顧問を務める。PlayStation® や Nintendo Switch などの家庭用ゲームの他、スマートフォンゲーム、デジタルトランスフォーメーション、テーマパークなど、エンターテイメント全般に渡るプロデュースを手がける。
Zen Chao
Asobu / Founder
Makers Fund / Japan Lead
東京・渋谷にクリエイターコミュニティ「Asobu」を設立。Asobu は、定期的なクリエイター の会合やゲームクリエイターへのさまざまなサポートを通じて、日本における独立系のゲーム制作を活性化し、先導することを目的としています。チャオは過去 10 年間、技術、メディア業界に従事してきましたが、創造性と革新への強い思いから、現在は、世界中の独立系ゲームスタジオやインタラクティブ エンターテインメントのスタートアップ企業への支援、投資に取り組んでいます。
簗瀬 洋平
ユニティ・テクノロジーズ・ジャパン株式会社 クリエイター・アドボケイト(学術)
ゲームデザイナー、シナリオライター、研究者。「ワンダと巨像」「Folks Soul -失われた伝承-」「魔人と失われた王国」などの開発に携わる。研究プロジェクト「Unlimited Corridor」では第20回文化庁メディア芸術祭エンターテインメント部門優秀賞を受賞。著書に「消極性デザイン宣言」など。
森 通治【集英社ゲームクリエイターズCAMP賞審査員】
株式会社集英社 新規事業開発部 ゲーム事業・映像事業開発課 ゲームクリエイターズCAMP プロデューサー
2008年、Apple Japan, Inc. 入社。教育機関、エンタープライズ市場向けの事業開発・パートナー事業推進を担当。2015 年に集英社に入社。デジタル事業部にて電子コミックの事業推進、プロモーション企画、社内ウェブサービスやマンガアプリのグロース支援、週刊少年ジャンプ50周年企画などを担当。2019 年に新規事業開発室の設立に伴い異動。現在「集英社ゲームクリエイターズCAMP」の立ち上げをはじめ、ゲーム事業の立ち上げ、プロジェクト推進を担当。
集英社ゲームクリエイターズ CAMP 賞
【過去の支援例】
新規ゲームの共同開発の資金支援(※ 過去実績: 1000 万円 ~ の支援事例あり)、ジャンプ IP の活用した企画、既存タイトルへのプロモーションやパブリッシングの支援、集英社のメンターシップ、など
大島 孝幸【TOHO Games 賞審査員】
東宝株式会社 映像本部 映像事業部 部長
アニメ製作の TOHO animationレーベル、音楽ドキュメンタリー、
DVD・Blu-ray、EC「ゴジラ・ストア」など多岐に渡る映像関連ビジネスを統括。
2018 年から取り組み始めたゲーム事業も担当している。
TOHO Games 賞
詳細は後日ウェブサイトでお知らせします。
五十嵐 郁
Google Play Partnerships ゲーム部門 パートナー デベロップメント マネージャー
Google Play にて事業開発とゲームアプリ開発企業とのパートナーシップを担当。クリエイティブな作品に出会えることを楽しみにしています。
キム チョンサ
Google Play Partnerships ゲーム部門 日本統括部長
Google Play Partnerships ゲーム部門の日本統括部長として事業開発とゲーム開発企業とのパートナーシップ全般を担当。「デベロッパーコミュニティのためのエコシステム作り」が一貫してモチベーションの源泉であり、インディーゲームフェスティバルでは素晴らしいゲームに出会えることを楽しみにしています。
※審査員は変更になる場合がございます。最新の審査員情報は、ウェブサイトでご確認ください。
ゲームをもっと多くの人に知ってもらいたい、ゲームビジネスの成功のチャンスを手にしたい、そんなインディーゲーム デベロッパーの皆さんから熱量の高い素敵なゲームを多数ご応募いただきました。結果発表は、8 月上旬を予定しています。
Posted by Tamao Imura - Developer Marketing Manager, Google Play
この記事は Purnima Kochikar による Android Developers Blog の記事 "Allowing developers to apply for more time to comply with Play Payments Policy" を元に翻訳・加筆したものです。詳しくは元記事をご覧ください。
私たちは日々デベロッパーの皆さんと連携しながら、Google Play があらゆる人にとって安全、安心でシームレスな体験を提供できるよう、そして、デベロッパーの皆さんが持続可能なビジネスを構築できるように努めています。昨年 9 月に、Google Play の課金システムの使用が、いつ必須になるかということをデベロッパーの皆さんに示すため、お支払いに関するポリシーの明確化を行いました。大多数のデベロッパーの皆さんはその当時からすでにこのポリシーを遵守していましたが、課金システムを統合するために技術的な作業が必要なデベロッパーに対しては、必要なアップデートを完了するため 1 年間(2021 年 9 月 30 日まで)の猶予期間を設けました。
この記事は Greg Hartrell による Android Developers Blog の記事 "Updates from the Google for Games Developer Summit" を元に翻訳・加筆したものです。詳しくは元記事をご覧ください。
昨年は、Android と Google Play が新たなステージに到達し、多くの人が自宅で安全に、更に多くのゲームを楽しむようになりました。私たちは、Google Play をユーザーにとってよりよい場所にし続けることで、ゲーム デベロッパーが世界中の様々なユーザーとつながることができる、より豊富な機会を提供してきました。その結果、世界中で Android の月間アクティブ端末数は 30 億台、Play の月間アクティブ ユーザー数は 25 億人に達し、合計 1400 億回のインストールが行われています。
Google はあらゆる人のための開発を支援しています。つまり、大規模なゲームスタジオから、世界中で楽しい画期的なゲームを開発している小規模なインディー ショップまで、すべてのデベロッパーが適切なタイミングでゲーマーにアプローチできるお手伝いをしています。
Game Developer Summit では、ゲームビジネスのライフサイクル全体に関連する幅広いツールやソリューションの最新情報を発表しました。具体的には、ゲーム開発をより容易にする新ツール、ゲームを更に多くのマルチスクリーン上で実行することを可能にする、成長中のエコシステムに関する最新情報、Google Play で市場開拓を成功させる新たなチャンスなどについてお知らせしました。
ここでは、イベントでお話しした内容と、今日から実践できることついて、もう少し詳しくお伝えします。
Google for Games Developer Summit のすべてのセッションの情報は、モバイル セッション トラック(各セッション動画には日本語字幕が付きます)から確認できます。また、Android ゲーム開発の最新リソースを入手できる g.co/android/games をブックマークしておきましょう。
Reviewed by Chongsa Kim - Head of Japan Games Business Development, Yuichi Araki - Developer Relations Team, Hidenori Fujii - Google Play Developer Marketing APAC
この記事は Dom Elliott による Android Developers Blog の記事 "The future of Android App Bundles is here" を元に翻訳・加筆したものです。詳しくは元記事をご覧ください。
2018 年 5 月に Android App Bundle をローンチしてから、デベロッパー コミュニティがこの新基準を広く採用し、リリースの効率化や高度な公開機能によるメリットを活用しているのを見てきました。現在では、100 万以上のアプリが実際に App Bundle を使っています。そこには、Adobe、Duolingo、Gameloft、Netflix、redBus、Riafy、Twitter など、Google Play のトップ 1,000 のアプリやゲームの大半が含まれています。
このメリットをより多くのユーザーに提供し、すべてのデベロッパーにとっても有益な、最先端の Android のアプリ公開形式に注力するため、2021 年 8 月より、Google Play で新しいアプリやゲームを公開する際に Android App Bundle の使用が必須となります。これにより、標準の公開形式が APK から App Bundle になります。
まだ App Bundle に切り替えていない方のために、皆さんが見逃しているメリットについて説明します。
リリースの種類
変更前
2021 年 8 月に必須となる
項目
Google Play 上の新規アプリ
APK
Android App Bundle(AAB)
拡張ファイル(OBB)
Play Asset Delivery または
Play Feature Delivery
既存アプリのアップデート
変更なし
新規 Instant
エクスペリエンス
Instant app ZIP
Instant 対応 Android App Bundle(AAB)
Instant
エクスペリエンスの
アップデート
再度のご案内となりますが、App Bundle の要件は新規アプリに適用されます。現在のところ、既存アプリや managed Google Play ユーザーを対象に公開されている限定公開アプリは対象外です。最後になりましたが、App Bundle の普及に貢献してくださっているたくさんのデベロッパーの皆さんに感謝いたします。今後、さらなる改善と新機能をお届けできることを楽しみにしております。以下では今回の移行に際し、よくお寄せいただく質問への回答を紹介します。
- - -
Android App Bundle に関するよくある質問と回答
APK と比べ、App Bundle を使う場合はどのくらいの作業が必要になりますか?
ほとんどのアプリでは、わずかな作業だけで APK の代わりに AAB をビルドできます。ほとんどの場合、ビルド時に別のオプションを選び、いつもどおりテストするだけです。App Bundle はオープンソースのフォーマットで、Android Studio、Gradle、Bazel、Buck、Cocos Creator、Unity、Unreal Engine、その他のエンジンなど、主要なビルドツールでサポートされています。Play Core Native や Play Core Java & Kotlin SDK でも、任意のコーディング環境を利用して、オプションの高度な App Bundle 機能を簡単に利用できます。
App Bundle で拡張ファイル(OBB)がサポートされないのはなぜですか?ゲームで Play Asset Delivery を使う必要があるのはなぜですか?
APK でユーザーに追加リソースを配信するには、別のファイル(OBB)が必要です。しかしながら、OBB は署名されておらず、アプリの外部ストレージに保存されるため、あまり安全ではありません。しかし、 Play Asset Delivery(PAD)を使用することで、サイズが 150 MB を超えるゲームでも、OBB ではなくゲーム全体を 1 つの App Bundle として Google Play Store で公開できるようになります。公開プロセスがスムーズになり、柔軟な配信モードが利用できることに加え、PAD には以前の拡張ファイルを上回るメリットがあります。アセットの差分パッチが大型アプリ向けに最適化されるので、アップデートに必要なデバイスのストレージが OBB よりも大幅に少なくなります。そのため、fast-follow を使うことで、インストール率やストアのコンバージョン率が上がります。さらに、最大 80% のデバイスで ASTC がサポートされているので、テクスチャ圧縮形式のターゲット指定を使ってサポート対象のデバイスに ASTC を配信できます。これにより、利用可能なハードウェアやデバイスのストレージを効率的に利用しつつ、幅広い Android デバイスをターゲットにすることができます。
App Bundle を使う場合、今後も複数の配信チャンネルやアプリストアで公開できますか?
可能です。これを実現する方法はいくつかあります。すべての場所で同じアプリ署名鍵を使うことも、チャンネルによってアプリ署名鍵を使い分けることもできます。Google Play 用の一意なアプリ署名鍵を使うこともできます。また、ローカルですべての配信チャンネル用のアーティファクトをビルドして署名することも、Google Play から配信用 APK をダウンロードして別のチャンネルで使うこともできます。Google Play Console の App Bundle エクスプローラまたは Play Developer API のいずれかを使用して Google Play からダウンロードした配信用 APK は、Play アプリ署名鍵で署名されます。
新しいアプリをリリースしようとしています。アプリ署名鍵を自分で決めることはできますか?
可能です。このオプションは Google Play Console で利用できます。新しいアプリを作成するときには、Google が使うアプリ署名鍵の提供方法を選択できます。アプリ署名鍵のコピーは、ローカルで保持できます。たとえば、Play バージョンと同じ鍵を使って署名し、他のチャンネルで配信する署名済みのバージョンを生成できます。近日中に、Play Console でのアプリの初回リリースが少しばかり簡単になる予定です。具体的には、初めてオープン トラックに公開する前であれば、操作を誤った場合でもアプリ署名鍵を変更できるようになります。
Google Play でアプリを配信する場合、アプリが意図したとおりにユーザーに配信されていることを確認するにはどうすればよいですか?
いつでも、Play Console の App Bundle エクスプローラか、Play Developer API を通して、Play ストアからアーティファクトをダウンロードして検証できます。さらに、新しいオプション機能である App Bundle のコードの透過性機能を使うと、デバイスで実行されるコードが、デベロッパーがビルドして署名したオリジナルのコードと一致するかどうかを検証できます。
既に Google Play でアプリを公開しています。既存のアプリ署名鍵のコピーを提供せずに Play アプリ署名を使うことはできますか?
現在のところ、Play アプリ署名を使うには、既存のアプリ署名鍵のコピーを提供する必要があります。既存のユーザーに配信する際に、Google Play でアップデートに署名するため、Google Play がコピーを保持する必要があるためです。これはほとんどのデベロッパーにとって適した方法で、100 万以上のアプリが Play アプリ署名を実際に利用しています。近日中に、鍵のアップグレードを行って Play アプリ署名をオプトインする追加オプションを既存アプリ向けに追加する予定です。このオプションを選択すると、すべての新規インストールとそのアップデートの際に、Play アプリ署名で新しい一意の鍵が使われます。ただし、これを動作させるには、App Bundle をアップロードする際に、古い鍵で署名した以前の APK もアップロードする必要があります。これが必要なのは、Google Play が既存ユーザーへのアップデート配信を継続できるようにするためです。
アプリ署名鍵は変更できますか?
可能です。アプリによっては、Play Console で新規インストール用のアプリ署名鍵のアップグレードをリクエストできます。Google Play では、新規インストールとアプリのアップデートの署名に新しい鍵が使われます。一方、鍵のアップグレード前にアプリをインストールしたユーザーへのアップデートでは、以前のアプリ署名鍵が使われます。近日中に、Play アプリ署名鍵のアップグレードにも APK 署名スキーム v3 の鍵ローテーションのサポートを追加する予定です。これにより、鍵のアップグレードが現実的なオプションとなるアプリが増え、アップグレードした鍵で署名されたアプリがさらに多くのユーザーに届くようになります。
Reviewed by Hidenori Fujii - Head of APAC Developer Marketing, P&E
この記事は Luke Jefferson, Raz Lev による Android Developers Blog の記事 "Play Dev ID requirements + 2-Step Verification" を元に翻訳・加筆したものです。詳しくは元記事をご覧ください。
ここ数年間で、Google Play は大きな成長を遂げています。仕事、趣味にかかわらず、世界中のあらゆる規模のデベロッパーが開発する Android のアプリやゲームは、人々にとって欠かすことのできない生活の一部になっています。
Google Play の安全性とセキュリティを保ち、デベロッパー コミュニティによりよいサービスを提供するため、追加の身元要件と 2 段階認証プロセスという 2 つの新しいセキュリティ対策を導入します。これにより、アカウントのセキュリティが強固になり、皆さんのニーズを把握しやすくなります。
現在、新しい Google Play デベロッパー アカウントを作成すると、メールアドレスと電話番号の入力が求められます。
今回のアップデート以降、デベロッパー アカウントのアカウント所有者は追加で以下を求められます。
連絡先情報が追加されることで、お使いの Google Play デベロッパー アカウントに関する、重要な情報やアプリのアップデートなどの情報をお知らせできるようになります。さらに、すべてのアカウントが、実際の連絡先を持つ実在の人物によって作成されたことを確認できるので、Google Play ストアをすべてのユーザーにとって安全な状態に保ちやすくなります。
この情報は一般公開されることはなく、本人確認と連絡の目的のみに利用します。
デベロッパー コミュニティについてさらに知るということに加えて、セキュリティを向上させ、アカウントをより安全に保つための措置を講じるため、Google Play Console へのログイン時に Google の 2 段階認証プロセスを必須にします。2 段階認証プロセスは、アカウント、アプリ、ユーザーを守るための追加の保護手段です。
2 段階認証プロセスの詳細とアカウントへの設定方法をご確認ください。
Google Play デベロッパー アカウント所有者は、本日よりアカウントの種類の入力と連絡先情報の確認を行うことができます。現時点では、アカウントの種類の入力は省略可能ですが、アカウント所有者が連絡先情報を更新するときは入力が必須になります。
2021 年 8 月より、新しいデベロッパー アカウントすべてにおいて、登録時にアカウントの種類の選択と連絡先情報の確認が必要になります。新しいデベロッパー アカウントの所有者は、2 段階認証プロセスも必須になります。
今年中に、すべての既存のデベロッパー アカウント所有者も、アカウントの種類の選択、必須情報の提供、連絡先情報の確認が必要になります。2 段階認証プロセスによるログインも必須になる予定です。
以上の変更と併せて、アカウントを健全な状態に保ち、重要な情報を見逃さないためのベスト プラクティスを改めてお伝えします。
Reviewed by Naoki Oyama - Developer Support Lead, Google Play, APAC and Hidenori Fujii - Head of APAC Developer Marketing, P&E
この記事は Purnima Kochikar による Android Developers Blog の記事 "Continuing to boost developer success on Google Play " を元に翻訳・加筆したものです。詳しくは元記事をご覧ください。
今年 3 月にお知らせしたように、デベロッパーが持続可能なビジネスを構築できるよう支援することは、Google Play のミッションです。先月の Google I/O ではそのミッションに基づき、ユーザーにアプリやゲームを見つけてもらいやすくする措置や、新しい 15% のサービス手数料ティア適用への登録を Goolge Play Console 上で開始することなど、複数のアップデートを発表しました。
※日本語字幕に対応しています
私たちは引き続き、様々なタイプのデベロッパーの皆さまが Google Play で成功するための様々な支援策を模索しています。そして、本日は追加で共有したいお知らせがございます。
ユーザーは、使用するデバイスに関わらず、魅力的なコンテンツを求めています。そして、最近リリースしたタブレット向けの Entertainment Space (英語) 、サムスン製のスマートウォッチが Wear OS を搭載するという発表、Android Auto (英語)プラットフォームのアップグレード、Google TV (英語)での新しいディスカバリー エクスペリエンスなどを通じて、これまで以上にデベロッパーがデバイスを跨いでユーザーにアプリを提供し、アピールできる機会が増えています。
Google Play は、モバイル以外の様々な重要なフォーム ファクタにもサービスを拡張できるよう、デベロッパーの皆さまを積極的に支援してきました。実際に長年にわたり、革新性あふれるエクスペリエンスを構築するための支援プログラムを提供してきました。
そして、2021 年 6 月 24 日(現地時間 6 月 23 日)より、さらに多くのデベロッパーの皆さまがベストなメディア エクスペリエンスを様々なデバイス上で実現するための支援策として、Play メディア エクスペリエンス プログラムを全世界で開始しました。ここでのメディアとは、以下の 3 種を指します。
上記の統合を通して、Google Play は、デベロッパーの皆さまが開発・提供しているアプリがユーザーに新たに発見されたり、再エンゲージメントしたりすることで、Google Play での成長を加速できるようサポートします。さらに、プログラム期間中はサービス手数料を 15% に引き下げます。これらの対応はすべて、デベロッパーの皆さまが最高の体験を構築できるようサポートするためのものです。
このプログラムにご興味のあるデベロッパーの方は、プログラムのガイドラインを確認のうえ、関心がある旨をお知らせください(英語でのご登録が必要です)。 参加資格を満たした皆さまには、追って詳しい情報をお伝えします。
なお、Play メディア エクスペリエンス プログラムは、その他既に存在する多数のデベロッパー向け支援プログラムのひとつです。ニュース パブリッシャー向けの 「Google で購読」、エンタープライズ 向けの各種 プログラム、Play Points などと同様に、ユーザーに向けたサービス内容を継続的に改善しつつ、投資を続けるデベロッパーの皆さまのニーズを満たすことを目指しています。
7 月 13 日、14 日(現地時間 7 月 12 日、13 日)にオンラインで開催する Google for Games Developer Summit では、Google が提供するプロダクトの最新情報をお伝えします。Android、Google Play、Cloud、Firebase、Google 広告など、優れたゲームの開発や、ユーザーへの効果的なアプローチに役立つセッションを 20 以上ご用意しています。
私たちは引き続き、皆さまのフィードバックに耳を傾けています。Google Play のすべてのステージで、皆さまのビジネスをサポートする為のさらなる方法を模索することを楽しみにしています。
この記事は Paris Hsu による Android Developers Blog の記事 "Android Studio Arctic Fox (2020.3.1) Beta" を元に翻訳・加筆したものです。詳しくは元記事をご覧ください。
Android Studio Arctic Fox のスプラッシュ画面
注:昨年末に発表した通り、Google では Android Studio のベースとなっている IntelliJ IDE の番号と整合性を持たせるために、バージョン番号体系を変更し、2020.3 となりました。その他にも独自のパッチ番号とわかりやすいコードネームを割り当てることで、覚えやすく簡単に参照できるようにしています。最初に Arctic Fox(現在ベータ版)、次に Bumblebee(現在カナリー版)のように、アルファベット順にコードネームを使用していきます。
デザイン、デバイス対応と管理、デベロッパーの生産性向上に重点を置いた Android アプリ開発用の公式 IDE 、Android Studio の最新リリース Arctic Fox (2020.3.1) Beta ❄️🦊を 2021 年 5 月 19 日(現地時間 5 月 18 日)に発表しました。現在 Beta チャンネルで公開していますのでダウンロードすると Google I/O 2021 で発表したすべての新機能を実際に使うことができます。
この 1 年間、さまざまな課題に対応しなければなかったにもかかわらず、革新的なすばらしいアプリを作り続けてきた世界中のデベロッパーコミュニティに触発されて、次の主に 3 つのテーマを強化する統合ツールの提供とアップデートに取り組んできました。
まとめると、今回のアップグレードは見逃せない内容になっています。✨ このベータ版には、これまでお伝えしてきた以外にも上記のテーマに関連した機能や改善が多数含まれていますので、以下の記事や動画をご覧ください。あるいは、記事のチェックを飛ばして、Android Studio Arctic Fox (2020.3.1) Beta を Beta チャンネルでダウンロードし、最新機能を今すぐ実際に使用してみてください。Android Studio の次期バージョンでも、引き続きデベロッパーの皆さんにとって最も重要なことに注力できるよう、フィードバックをお寄せください。
What's new in Android development tools (I/O 2021)
Android Studio Arctic Fox (2020.3.1) Beta の新機能を 3 つの主なテーマ別にすべてご紹介します。
Compose プレビュー
Layout Inspector の Compose 対応
プレビューとガターにある「デバイスへのデプロイ」アイコンを使用
これまでの内容をまとめると、Android Studio Arctic Fox (2020.3.1) Beta には、以下の新しい機能強化と新機能が搭載されています。
I/O では、上記の一覧に記載されていない他の新機能もご覧になったかもしれません。それらの機能については、Beta チャンネルでリリースする準備が整わなかったため、Android Studio (2021.1.1) Bumblebee Canary に搭載されます。
今回のリリースに合わせて、Android Studio チームは Android Studio に関して複数のセッションで発表を行いました。以下の動画をご覧いただくと、提供される最新機能や Android Studio の使用に関する役立つ情報を確認できます 📺。なお、すべての動画で日本語字幕に対応しています。ぜひ切り替えてご覧ください。
Android Studio Arctic Fox (2020.3.1) は重要なリリースとなっています。今が Beta リリースをダウンロードおよびチェックして、ワークフローに新しい機能を組み込む絶好の機会です。ベータ版リリースでは、ほぼ安定した機能を提供しますが、どのベータ版リリースにも言えるように、バグが残っている可能性があります。問題が見つかった場合は修正しますのでご連絡ください。Android Studio をすでにお使いの場合は、ナビゲーション メニューから Beta チャンネルでアップデートをチェックしてください([Help] > [Check for Update [Windows/Linux] , Android Studio] > [Check for Updates [OS X]])。ベータ版にアップデートすると、最新バージョンの Android Studio と Android Emulator にアクセスできます。
気に入った点、問題点、あったらいいなと思う機能に関するフィードバックをお寄せください。バグや問題が見つかった場合はご連絡ください。Android Studio 開発チームの Twitter と Medium もぜひフォローしてください。
Reviewed by Yuichi Araki - Developer Relations Team and Tamao Imura - Developer Marketing Manager, Google Play
この記事は Florina Muntenescu による Android Developers Blog の記事 "What's new in Jetpack" を元に翻訳・加筆したものです。詳しくは元記事をご覧ください。
Android Jetpack は、デベロッパーがベストプラクティスに従って、ボイラープレート コードを削減し、Androidのバージョンやデバイス間で一貫して動作するコードを書くためのライブラリ、ツール、ガイダンスを統合したものです。現在、Google Play の トップ 1000 アプリのうち 84 % がJetpack を利用しています。この記事では、Jetpack の最新のアップデートをまとめてご紹介します。
CameraX ライブラリは、デバイス固有の互換性の修正や回避策を含む、OS のバージョンを超えてカメラ機能にアクセスするための統一された API サーフェスを提供します。最新の改良点は、露出補正のサポートや、カメラの状態や機能に関するより詳細な情報へのアクセスなど、多数寄せられた機能要望にお応えした内容となっています。さらに、FPS レンジなどのカメラ設定を、カメラを動作中に Camera2Interop 経由で変更できるようになりました。また、ハイダイナミックレンジのプレビュー、ズーム比の調整、Android の Do Not Disturb モードへの対応など、最新のデバイスや OS の機能にも対応しています。特に重要なのは、パフォーマンスへの取り組みで、特に古いデバイスにおいて、画像の取り込みや初期化が高速化されています。
Hilt は、Dagger 上に構築されている、Jetpack 推奨の依存関係注入ソリューションです。安定版への移行の一環として、Hilt の ViewModel サポートはコア Hilt Android API に移され、SavedStateHandle が ViewModelComponent で利用可能なデフォルトの依存関係として追加されています。また、Hilt は Navigation および Compose と統合されています。適用範囲を宛先またはナビゲーション グラフ自体とした注釈付き Hilt ViewModel を取得できます。複数のデベロッパーの皆さんが、すでにアプリで Hilt を使い始めています。そのケーススタディは、こちらのブログ記事 (英語) をご覧ください。
ViewModel
SavedStateHandle
ViewModelComponent
Paging ライブラリを使用すると、データの小さなチャンクをロードおよび表示してネットワークとシステムのリソース消費を改善できます。このリリースでは、全体を Kotlin で書き直すことによって コルーチンおよび Flow を完全にサポートし、RxJava および Guava プリミティブを使用した非同期ロード、リポジトリおよびプレゼンテーション層の全体的な改善を提供します。
3.0 リリースでは Paging 2 と比べて使い勝手が大幅に改善され、書き直しは部分的および段階的移行を念頭に計画されたため、デベロッパーの皆さんはご自身のスケジュールに合わせて移行できます。詳細および実践については、Paging 3.0 のドキュメントおよび Paging 3.0 のCodelab をご覧ください。
Jetpack のレイアウト設計を柔軟に行うためのシステム ConstraintLayout、モーションおよびウィジェット アニメーションの管理を目的とした MotionLayout は現在安定版です。MotionLayout では、折りたたみデバイス、イメージ フィルタ、モーション エフェクトがサポートされています。デザインツールの新機能について詳細は、こちらの Google I/O セッションをご覧ください。
ConstraintLayout
MotionLayout
Security Crypto ライブラリを使うと、ファイルや SharedPreferences を安全かつ簡単に暗号化できます。SharedPreferences を暗号化するには、EncryptedSharedPreferences オブジェクトを適切なキーとスキームで作成し、このオブジェクトを標準の SharedPreferences オブジェクトのように使用します。
SharedPreferences
EncryptedSharedPreferences
val prefs: SharedPreferences = EncryptedSharedPreferences.create( context, "prefs_file_name", mainKey, prefKeyEncryptionScheme = AES256_SIV, prefValueEncryptionScheme = AES256_GCM,)// Use the resulting SharedPreferences object as usual.prefs.edit() .putBoolean("show_completed", true) .apply()
context,
"prefs_file_name",
mainKey,
prefKeyEncryptionScheme = AES256_SIV,
prefValueEncryptionScheme = AES256_GCM,
)
// Use the resulting SharedPreferences object as usual.
prefs.edit()
.putBoolean("show_completed", true)
.apply()
この1年間、Fragment ライブラリは内部の実装を整理して明文化されていない動作を削減するための大規模な変更を行いました。これにより、デベロッパーの皆さんは、アプリやゲームのベスト プラクティスに倣って信頼できるテストを記述しやすくなりました。これは、Navigation で複数のバックスタックをサポートするなど、将来的なライブラリの改善のための基礎となるもので、厳密化された API に対応するためには、いくつかの作業が必要になるかもしれません。実際に、ライブラリを更新した後のテストには細心の注意を払う必要があります。特に注意が必要なケースについては、Fragmentのリリースノートをご確認ください。
最新リリースでは、ActivityResult の統合も行われ、フラグメントから Activity の結果を登録することが可能になりました。 Fragment には、柔軟性があまり高くない onAttachFragment メソッドの代わりに、新しい FragmentOnAttachListener インターフェースも追加されています。Fragment または FragmentActivity でこのメソッドを上書きする既存のコードは引き続き機能しますが、新しいコードが柔軟性の高くない手法を誤って採用するのを防ぐため、onAttachFragment を非推奨にしました。
onAttachFragment
FragmentOnAttachListener
Fragment
FragmentActivity
// Obtain the fragment manager.May be a childFragmentManager,// if in a fragment, to observe child attachment.val fm = supportFragmentManagerval listener = FragmentOnAttachListener { fragmentManager, fragment -> // Respond to the fragment being attached.}fm.addFragmentOnAttachListener(listener)
// if in a fragment, to observe child attachment.
val fm = supportFragmentManager
val listener = FragmentOnAttachListener {
fragmentManager, fragment ->
// Respond to the fragment being attached.
}
fm.addFragmentOnAttachListener(listener)
ライブラリの機能が完成すると、安定化のためにベータ版に移行します。現時点では、重要な問題やコミュニティからのフィードバックに対してのみ、API を変更しています。
DataStore は、シンプルで非常に有用な API サーフェスを維持しながら、SharedPreferences の欠点を解決する堅牢なデータ ストレージ ソリューションを提供します。DataStore は、Flow と RxJava による Kotlin のコルーチンのようなベストプラクティスをサポートします。DataStore では、Preference DataStore 経由でキーと値のペアを格納したり、Proto DataStore 経由でプロトコル バッファがバックアップする型付きオブジェクトを格納できます。さらに、Kotlin Serialization のような独自のシリアル化ソリューションをプラグインすることもできます。
アルファ版ライブラリは、現在開発中のライブラリです。API の追加、変更、削除が行われる可能性がありますが、ライブラリのコンテンツはテストされていますので、高い機能性を備えています。
AppSearch は高性能で機能豊富なフルテキスト検索機能を提供する新しいデバイス内検索ライブラリです。SQLite と比較すると、AppSearch は複数の言語をサポートし、クエリ結果のランク付けがシンプルで、大きなデータセットのインデックス作成や検索の遅延がより少なくなります。
AppSearch 1.0.0-alpha01 は LocalStorage をサポートしています。これによって、アプリケーションは「ドキュメント」と呼ばれる構造化されたデータを管理し、それに対してクエリを実行することができます。アプリケーションは、「スキーマタイプ」を使って、構造がどのようなものかを定義します。例えば、メッセージは、件名、本文、送信者などのデータを持つスキーマタイプとしてモデル化することができます。
ビルダーを使用してスキーマ タイプのドキュメントを作成し、ストレージに追加します。"body:fruit" とクエリを実行すると、メッセージの本文に用語「fruit」があるすべてのドキュメント検索できます。
Android S では、AppSearch はアプリケーションのデータを他のアプリケーションと安全に共有し、追加のネイティブ ライブラリへのリンクを不要にすることで、アプリケーションのバイナリサイズを削減できる PlatformStorage も提供します。ライブラリがまだ Android S SDK を対象としていないため、現時点では Jetpack で PlatformStorage は使用できません。
デバイス全体の検索に統合するための Android S の中央ストレージ
Room は推奨されているデータ永続化レイヤであり、プラットフォーム上での使い勝手と安全性が向上します。
Room 2.4.0-alpha は自動移行をサポートしています。データベース スキーマが変更された時に、@AutoMigration を宣言して、どのバージョンからどのバージョンに移行したいかを示すと、Room が移行を生成してくれるようになりました。より複雑な移行を行う場合は、引き続き Migration クラスを使用できます。
@AutoMigration
Migration
@Database(- version = 1,+ version = 2, entities = { Doggos.class },+ autoMigrations = {+ @AutoMigration (from = 1, to = 2)+ } )public abstract class DoggosDatabase extends RoomDatabase { }
- version = 1,
+ version = 2,
entities = { Doggos.class },
+ autoMigrations = {
+ @AutoMigration (from = 1, to = 2)
+ }
public abstract class DoggosDatabase extends RoomDatabase { }
Room 2.3.0 安定版では、 Kotlin Symbol Processing が試験的にサポートされ、Kotlinコードのベンチマークでは、KAPTに比べて2倍の速度向上が見られました。また、enumとRxJava3のサポートも組み込まれています。
またRoom は、の実行時にコールバックを提供する QueryCallback クラスが導入され、ロギングなどのタスクがシンプルになりました。また、新しい@ProvidedTypeConverter アノテーションが導入され、型コンバータの作成がより柔軟になりました。
QueryCallback
@ProvidedTypeConverter
WorkManager ライブラリは、アプリが終了またはデバイスが再起動しても実行される延期可能な非同期タスクをスケジュールする方法として Android で推奨されています。すべてのタスクが確実に実行されるようにタスク照合の信頼性が向上し、さらに特定の Android OS バージョン向けのさまざまな回避策も提供されています。
WorkManager の機能の最新バージョンでは、マルチプロセス アプリのサポートが強化されています。作業リクエストのスケジュールを 1 つのプロセスに統合することで、多数のリクエストをスケジュールする際のデータベースの増大を抑制してパフォーマンスを向上するメリットがあります。
Android S SDKを対象としたバージョン 2.7(現在アルファ版)では、Android OS の新しいフォアグラウンド制限への追加サポートに対応しています。詳しくは、Effective Background Tasks on Android セッションをご覧ください。
Android Studio Arctic Fox で利用可能な Background Tasks Inspector は、最新のライブラリを使うと WorkManager のジョブを簡単に表示してデバッグできます。
Background Tasks Inspector
アプリ内の目的地間を移動するための Jetpack のフレームワークである Navigation ライブラリは、複数のバックスタックをサポートし、ボトムナビゲーションバーのように目的地が同じ深さにある場合にも簡単に対応できるようになりました。
Macrobenchmark ライブラリは、アプリの起動やスクロール パフォーマンスなどの統合された動作まで、Jetpack のベンチマーク範囲を拡張します。このライブラリは、継続的な統合テストでメトリクスを追跡するためにリモートで使用することも、プロファイリングの結果をAndroid Studioから表示するためにローカルで使用することもできます。詳細については、Google I/O のセッションをご覧ください。
Google アシスタントともっと密接した統合を希望しているデベロッパーのために、Google Shortcuts ライブラリは、既存の ShortcutInfo クラスを通じて、Google アシスタントやその他の Google サービスにアクションを公開する方法を提供します。
ShortcutInfo
ShortcutManager を介して一度に最大 15 個のショートカットを送信し、他のサービスの中から Google アシスタントに表示させ、音声やその他のインタラクションで利用できるようにします。
ShortcutManager
これを実装するには、ショートカットに Intentと機能バインディングを定義します。このバインディングは、Google サービスがユーザーに提供する最善の方法を見出すのに役立つ重要な情報を提供します。
// expose a "Cappuccino" action to Google Assistant and other servicesShortcutInfoCompat siCompat = ShortcutInfoCompat.Builder(ctx, "id_cappuccino") .setShortLabel("Cappuccino") .setIntent(Intent(ctx, OrderCappuccino::class.java)) .addCapabilityBinding( "actions.intent.ORDER_MENU_ITEM", "menuItem.name", asList("cappuccino") ) .build()ShortcutManagerCompat.pushDynamicShortcut(ctx, siCompat)
ShortcutInfoCompat siCompat =
ShortcutInfoCompat.Builder(ctx, "id_cappuccino")
.setShortLabel("Cappuccino")
.setIntent(Intent(ctx, OrderCappuccino::class.java))
.addCapabilityBinding(
"actions.intent.ORDER_MENU_ITEM",
"menuItem.name",
asList("cappuccino")
.build()
ShortcutManagerCompat.pushDynamicShortcut(ctx, siCompat)
アプリ内でユーザーが作成したすべてのコンテンツには 🎉 が含まれ、最新の絵文字をサポートすることは、あなたのアプリまたはゲームを ✨ にするために重要な要素です。API 19以降で最新の絵文字をサポートする EmojiCompat ライブラリは、従来の :emoji:emoji アーティファクトに代わる新しいアーティファクト emoji2:emoji2 に移行しました。新しい emoji2 ライブラリでは AppStartup ライブラリを使用た 🪄 自動設定が追加されています( 🐻❄️を表示するためのコード 👩🏿💻 は必要ありません)。
emoji2:emoji2
emoji2
AppCompat では、AppCompat 1.4 以降から emoji2 が追加されています。あなたのアプリまたはゲームがAppCompat を使用している場合、ユーザーは追加設定なしで最新の絵文字 ⭐ を見ることができます。AppCompat を使用していないアプリまたはゲームは emoji2:emoji2-views を追加できます。カスタム TextViews の場合は、emoji2:emoji2-views-helpers のヘルパーを使用するか、AppCompat のビューをサブクラス化することで、最新の絵文字をサポートすることができます。
emoji2:emoji2-views
TextViews
emoji2:emoji2-views-helpers
Jetpack Compose は、Android のネイティブ UI 開発用の最新ツールキットです。Android での UI 開発をシンプルにし、高速化します。Jetpack Compose は現在ベータ版で、7 月に安定版に移行する予定です。ここに掲載されているライブラリや皆さんがすでに使用している可能性のあるライブラリの多くは、Jetpack Compose との統合を目的とした機能を導入しています。Activity から ViewModel、Navigation、Hilt まで、これらすべてのライブラリを使うと、アプリに Compose をスムーズに導入できます。これらの使い方に関する詳細については、この Google I/O セッションをご覧ください。
Jetpack は、折りたたみ式デバイス、大画面デバイス、Wear デバイスなど、さまざまな形状での作業をしやすくします。大画面デバイスに対応するアプリ開発のための新しいガイドラインを導入し、、WindowManager や、SlidingPaneLayout などの Jetpack ライブラリを改善しています。詳しくは、こちらのブログ記事をご覧ください。
WindowManager
SlidingPaneLayout
以上、Jetpack の新機能を(比較的)簡単にご紹介しました。各ライブラリのアップデートの詳細については AndroidX リリースノートをご覧ください。また、Google I/O セッションでは、一部のライブラリについての詳細についてご説明しています。