デベロッパーの皆さまは、Google Play のパートナーです。デベロッパーの創造性と革新性を Google が提供するプラットフォームやツールと組み合わせることで、世界中の数十億人の人々に素晴らしい体験を提供しています。そのようなデベロッパーの皆さまからのフィードバックに注意深く耳を傾けることは、Google がリリースごとに Android を進化させ、モバイルアプリストアの改善を続けるうえで、重要な役割を果たしています。例えば 2019 年 4 月のブログ記事では、デベロッパーからのフィードバックをもとに Android API や Google Play ポリシー をアップデートしました。そして本日は、これまでいただいたフィードバックに対する追加の見解と、そのフィードバックに基づき Google Play と Android を改善する取り組みを以下に紹介します。

  • 各プラットフォーム(モバイル、PC、コンソール)において、デベロッパーがアプリの配信方法を複数のアプリストアから選択し、それぞれ健全な市場で各自のビジネスモデルを展開できる環境を作る取り組み

  • どのような場合に Google Play の課金システムを使用する必要があり、どのような場合にはその必要がないのかといったポリシーの明確化

  • Google Play のプラットフォームにおける全てのアプリ ( ファーストパーティおよびサードパーティ アプリを含む ) の平等な取り扱い

  • デベロッパーが顧客と直接つながり、対話できるようにする取り組み。Google Play のポリシーがイノベーションを可能にし、消費者の体験をより良いものにするために役立つ新しい技術を考慮したものとなるようにすること
 
これらの点について、Google Play の考えを共有します。
 

アプリストアの選択肢

 
Google は、デベロッパーがアプリの配信方法に関して選択肢を持つべきだと考えています。複数の選択肢があることで、消費者とデベロッパーのビジネスを巡り、ストア間に競争が生じます。Android において選択肢を提供することは、常にそのコアとなる考え方であり、キーボード、メッセージアプリ、ダイヤルアプリ、アプリストアなど、( Google 提供か他の開発者による提供かに関わらず)常に消費者が使いたいアプリを選べるようにしているのもこれが理由です。
 
Android はこれまでも、アプリを複数のアプリストアからインストールできるようにしてきました。実際に、ほとんどの Android 端末は 2 つ以上のアプリストアがプリインストールされた状態で出荷され、さらに消費者は追加でアプリストアをインストールすることもできます。また各ストアは、独自のビジネスモデルと消費者向け機能を決定できます。このオープン性は、デベロッパーと Google がビジネス上の条件で合意できなかった場合でも、Android のプラットフォーム上でアプリを配信する手段が残されていることを意味します。そのため、例えばフォートナイトは Epic のストアから直接配信されているほか、Samsung の Galaxy Store を含む他のアプリストアからも配信されています。
 
とはいえ、一部のデベロッパーより、別のアプリストアをデバイスへインストールする際において、ユーザー体験をより良くできないかという意見が寄せられています。このフィードバックに応えるため、Android 12(来年の Android リリース)に変更を加え、Android の安全性を損ねることなく、デバイスで他のアプリストアをこれまで以上に簡単に使用できるようにします。この機能はすでに開発がはじまっており、今後より多くの情報を共有する予定です。
 

支払いポリシーの明確化

 
先にお伝えしたように、Android 上のアプリストアはそれぞれが独自のビジネスモデルや消費者向けの機能を決めることができます。Google Play に対して、ユーザーは安心、安全でシームレスな体験を期待しており、デベロッパーはビジネスの構築と成長に役立つ強力なツールやサービスを求めています。Google Play のデベロッパーポリシーは、これらの期待に答えるために設けられており、Google Play の課金システムはその継続的な取り組みの基礎となっています。消費者は、信頼できるシステムを利用し、安全に、確実に、そしてシームレスに世界中のデベロッパーから購入できるというメリットを受けることができます。Google は、世界でもトップレベルの高度なセキュリティ インフラストラクチャにより、消費者の支払い情報を複数のセキュリティ レイヤーで保護しています。デベロッパーは、Google Play の課金システムにより、現地の任意の支払い方法を使って数十億の Android ユーザーと簡単に取引することができます。
 
これまでも、Play ストアでアプリを配信するデベロッパーは、デジタル商品のアプリ内購入を提供する場合、Google Play の課金システムを使用し、購入金額の一部を手数料として支払う必要がありました。明確にしておきたいのは、このポリシーは、Google Play 上の 3% 未満のアプリデベロッパーしか該当しないということです。Google Play が手数料をいただくのは、デベロッパーがユーザーに有料アプリをダウンロードしてもらうか、アプリ内でデジタル商品を販売する場合のみ該当し、それは公平なことだと考えています。また、このアプローチにより、プラットフォームへの継続的な再投資が可能になるだけでなく、このビジネスモデルが、私たちの成功とデベロッパーの成功を直接結び付けるのです。
 
ただし、Google Play の課金を使用する必要がある決済の種類に関して、ポリシーの文言がわかりづらい、より明確にする余地がある、という意見が寄せられていました。Google Play としても、すべてのデベロッパーに一貫して公平に適用されるようポリシーをわかりやすく、かつ最新のものにしたいと考えています。そこで今回は、支払いポリシーの文言をアップデートし、アプリでデジタル商品を販売するすべてのデベロッパーが Google Play の課金システムを使用する必要があることをより明確にしました。

繰り返しになりますが、これは新しいものではありません。長く存在しているこのポリシーは、これまでも常に同じルールを意図していました。かつ、今回の明確化は Google Play 上にアプリを持つ大多数のデベロッパーには影響しません。 過去12ヶ月間に Google Play 上でデジタル商品を販売していたアプリデベロッパーは 3 % に満たず、この 3% のうち大多数( 97% 近く)はすでに Google Play の課金システムを利用しています。しかし、すでに Google Play でアプリを提供しており、課金システムを統合するために技術的な作業が必要なデベロッパーに対しては、各社のロードマップに混乱を起こすことは意図していませんので、必要なアップデートを完了するため 1 年間( 2021 年 9 月 30 日まで)の猶予期間を設けます。そしてもちろん Google 自身が配信しているアプリのうち、Google Playの課金システムを未だ利用していないアプリに対しても、同様に必要なアップデートを行います。
 

平等な対応

 
Google Play のポリシーは、Google 自身が配信しているアプリを含む、Google Play で配信されるすべてのアプリに等しく適用されます。また、Google Play 上で プロモーションするアプリの選定は、サードパーティのアプリ、自社のアプリに関わらず、同じ基準が適用されています。実際に、優れたユーザー エクスペリエンスを提供する Google の競合他社によるアプリをエディターのおすすめのアプリとして定期的に紹介しています。同様に、Google Play のアルゴリズムは、Google の自社アプリとサードパーティのアプリやゲームを同じ基準のもとにランク付けしています。
 

お客様とのコミュニケーション

 
デベロッパーの皆さまからは、大きな制約を受けずに顧客と直接対話できることが非常に重要であると聞いています。アプリ デベロッパーである私たち自身も、心からそれに同意しており、ポリシーも常にそれを許可してきました。
 
それでもデベロッパーからは、E メールやその他のチャネルを介して、価格設定やオファー、アプリ外の支払い方法について直接顧客とコミュニケーションをとることができるかという問い合わせをいただくことがあります。ここではっきりとお答えします。Google Play は、アプリの外である限りは、デベロッパーがこういったコミュニケーションをとることに対してまったく制限を設けていません。たとえば、別の Android アプリストアやウェブサイト上で、Google Play よりも低価格でアプリを提供していることを謳ったとしても全く問題はありません。
 
私たちは、顧客と関係を維持することの重要性を理解しています。そのため、デベロッパーから顧客への返金や、その他のカスタマーサポートを直接提供することも常に認めています。
 

イノベーションを可能にする

 
デベロッパーは、常に素晴らしいものを生み出しています。デベロッパーからのフィードバックに基づき、私たちは常にアプローチを調整し、新しい形のイノベーションを実現するためのサポートを継続しています。たとえば、マイクロソフトが Android のアプリ「 Xbox Game Pass 」で Xbox のクラウドゲームを提供開始したように、最近のゲーム ストリーミングのイノベーションは、Google Play で利用できる新しいゲーム エクスペリエンスを生み出しています。
 

今後もフィードバックをお寄せください

 
私たちは、デベロッパー コミュニティから寄せられるすべてのフィードバックに心から感謝しており、Android のエコシステムがこれまでにも増してエキサイティングな場所になっていくと信じています。
 
Cookpad、AWA、Duolingo、Truecaller、Hyperconnect、Any.do や Viber などのデベロッパーが Android 上で成功を収め、ビジネスを成長させ、多様な消費者にリーチしている姿を見るのは、非常にエキサイティングなことです。消費者はそうしたサービスを享受しており、私たちはそうした成功をサポートするプラットフォームを構築できたことを嬉しく思っています。
 
別記事で、デベロッパーから寄せられるよくある質問をいくつか公開しています。そちらも併せてご覧ください。



Reviewed by Hidenori Fujii - Google Play Developer Marketing, APAC



私たちは、デベロッパーがビジネスを構築および成長させるのに役立つ強力なツールとサービスを提供し、同時にユーザーに安全、確実かつシームレスな体験をしていただけるよう日々尽力しています。本日は、デベロッパーから多く寄せられるフィードバックのテーマをいくつかご紹介します。本記事では、皆さまのお役に立つと思われる、デベロッパーからよく寄せられる質問に回答します。
 

Q:他の Android アプリ ストアやウェブサイトでアプリを配信できますか?


A:はい。自由な方法でアプリを配信していただけます。オープンエコシステムとして、ほとんどの Android 端末には複数のストアがプリインストールされており、ユーザーはその他のストアをインストールすることもできます。Android は、Google Play の課金システムを使用せずに、ウェブサイトやデバイスのプリロードや、その他の Android のアプリストアを通じてアプリを配信する自由と柔軟性をデベロッパーに提供しています。
 

Q:どのアプリが Google Play の課金システムを使用する必要がありますか?


A:デジタル商品のアプリ内購入を提供するすべてのアプリは、 Google Play で配信する場合、Google Play の課金システムを使用する必要があります。Google Play の支払いポリシーは、これまでも常にこのことを求めてきました。過去 12 ヶ月間で Google Play 上でデジタル商品を販売しているアプリデベロッパーは 3 % に満たず、この 3% のうち大多数 ( 97% 近く) はすでに Google Play の課金システムを利用しています。アプリへの変更を要する、これら少数のデベロッパーの皆さまには、 2021 年 9 月 30 日までを変更を行う猶予期間として設けています。また新規のアプリに関しては、2021 年 1 月 20 日以降、このポリシーを遵守している必要があります。

 

Q:多くの企業が、これまでの物理的なサービスをオンラインに移行する必要に迫られています(デジタルライブイベントなど)。これらのアプリは Google Play の課金システムを使用する必要がありますか?


A:新型コロナウイルスにより、多くの企業が、対面で行っていた体験やレッスンなど物理的なビジネスをデジタルに移行し、顧客であるオーディエンスを新たな方法で引き付ける努力をされていることは認識しております。今後 12 か月間は、これらのビジネスは支払いポリシーに準拠する必要はなく、Googleとしても、状況に応じた再評価を今後 1 年間にわたって継続していく予定です。そうした変化に直面しているデベロッパーの皆さまは、ぜひ Google へご意見をお寄せください。私たちは、オンラインで一貫して安全なユーザーエクスペリエンスを実現しながら、新しいユーザーへリーチし、オンラインでビジネスを成長させられるよう、さまざまな支援を提供して参ります。
 

Q:Google のアプリもこのポリシーに従う必要がありますか?


A:はい。Google Play デベロッパー ポリシー(デジタル商品のアプリ内購入に Google Playの課金システムを使用すべきという要件を含む)は、Google の自社アプリを含む Google Play 上のすべてのアプリに適用されます。
 

Q:別の支払い方法についてユーザーに伝えることはできますか?


A:はい。アプリの外において、他の支払い手段について、デベロッパーはユーザーに自由に伝えることができます。アプリの外であれば、メール マーケティングやその他のチャネルを使用して、サブスクリプション オファーや特別価格を提供することもできます。

Q:他のプラットフォームでのプロモーションについてユーザーに伝達することはできますか?


A:もちろんです。私たちもアプリデベロッパーであり、ユーザーとのコミュニケーションを制限することが望ましくないことを理解しています。Google Play と異なるプロモーションを行う場合でも、ユーザーに向けてメールやその他のアプリ外の方法で情報を伝達することができます。
 

Q:プラットフォームに応じて、アプリの機能、価格、エクスペリエンスを変えることができますか?


A:はい。サービスとビジネスはデベロッパー自身のものであり、すべてデベロッパー次第です。異なるプラットフォーム間で統一する必要はありません。アプリのさまざまなバージョンを作成して、さまざまなプラットフォーム、機能、料金モデルをサポートしていただいて構いません。

Q:Google Play で消費のみ( reader 機能のみ)のアプリを提供できますか?


A:はい。Google Play では、有料サービスの一部であっても、アプリを消費のみにすることができます。たとえば、ユーザーはアプリを開いてログインを行い、すでに別の場所で支払いを完了したコンテンツにアクセスすることもできます。


Q:アプリのカテゴリによって支払いポリシーは変わりますか?


A:いいえ。Google Play では、ビジネス向けアプリや一般消費者向けアプリ、音楽やメールといったカテゴリはすべて同様に扱われます。

Q:顧客に直接払い戻しを提供できますか?


A:はい。Google は、お客様との関係を維持することの重要性を理解しています。デベロッパーは、引き続きお客様に直接払い戻しやその他のカスタマーサポートを行うことができます。

Q:Google Play でクラウドゲームアプリを提供できますか?


A:はい。Google Play では、あらゆるデベロッパーからの、Google Play のポリシーに準拠したクラウド ゲームストリーミング アプリの申請をお待ちしています。

アプリ内購入のその他の例や、ベストプラクティスについては、Play Academy のコース(英語)にアクセスして、こちらの動画をご覧ください。


Reviewed by Hidenori Fujii - Google Play Developer Marketing, APAC


そしていよいよ、Google Play Console がベータ版を卒業します。従来の Play Console は、2020 年 11 月 2 日以降は利用できなくなります。この日以降、お使いのPlay Console のアカウントにログインすると自動的に新しい Play Console が表示されます。
 
まだ試していない方は、今すぐ新しいバージョンに切り替えることをお勧めします。play.google.com/console にアクセスしてみてください。
 
新しい Play Console はレスポンシブ デザインになっているので、どんな端末でも利用できます。新しいナビゲーションが導入され、重要な機能を簡単に探して理解することができます。また、リリース ステータス、ユーザー獲得パフォーマンス、ポリシー変更に関するガイダンスについて深く理解できる機能も追加しています。
 

  • ナビゲーションのリリースに関するエリアを改善しました。本番環境を一番上に表示し、テストトラックはすべてまとめました。内部アプリ共有は設定に移動しました。

  • 各種ブラウザでのスピードやパフォーマンスを向上させました。

  • 受信トレイを新たに導入しました。役立つ情報やポリシーのアップデート、お勧めの機能など、一人一人に合わせたメッセージが表示される場所です。

  • 新しい公開の概要ページでは、レビューの変化を確認できます。管理対象の公開を使うと、承認済みの変更を実際にいつ公開するかを決め、リリースを管理できます。

  • ユーザー獲得レポートは完全に再構築され、実績の時間変化がわかりやすくなっています。それに伴い、いくつかのコホートベースの指標を廃止したため、新しいコンソールでは利用できなくなります。このデータの履歴を保持したい方は、11 月 2 日までに古い Play Console からダウンロードしてください。詳細はこちら

  • 検索を使って必要なページや機能を簡単に探せるようになっています。

  • 既にお知らせしたとおり、すべての Play Console ユーザーで 2 段階認証が必須になります。詳細はこちら
 

新しい Play Console の詳細:



 
いつもフィードバックにご協力いただきましてありがとうございます。新しい Play Console があなたのビジネスのお役に立つことを願っています。


Reviewed by Hidenori Fujii- Google Play Developer Marketing, APAC



Android 11: 2020 年 9 月 9 日公式リリース!




数か月間のプレビューとベータ版リリースを経て、とうとうこの時がやってきました。2020 年 9 月 9 日にAndroid 11 を公式にリリースし、ソースコードを Android オープンソース プロジェクト(AOSP)にプッシュしました。

Android 11 の機能は、既にデベロッパーやユーザーの皆さんに様々な形でご紹介してきましたが、あらためて少し振り返ってみましょう。

  • UI の改善: 通知パネルの会話表示、バブル、同期 IME アニメーションなどを改善しました。

  • コントロールへのアクセス性向上: ユーザーがすべてのスマート デバイスにすばやくアクセスしてコントロールできる管理機能を強化しました。

  • プライバシーの強化: 「今回のみ」のアクセス許可、アクセス許可の自動リセット、対象範囲別ストレージの改善、バックグラウンド位置情報、バイオメトリック認証強度 API(これまでのリリース向けの新しい Jetpack バイオメトリック ライブラリの追加を含む)などを含みます。

  • デベロッパー向けの機能強化: 新しい Crash Reasons API、開発者向けオプション パネルでの動作の切り替え、ADB 増分インストール、プラットフォーム API の Kotlin NULL 可能性アノテーションの増加などを実現しました。

Google Play システム アップデートも、さらに機能が向上しました。対応するモジュールを増やし、エコシステム全体でコアシステム機能を頻繁にアップデートできるようになっています。今回のリリースで利用できる機能について、さらに詳しく確認したい方は、Stephanie Saad Cuthbertson によるデベロッパー機能についてのブログ記事や、Dave Burke によるユーザー機能についてのブログ記事をご覧ください。


Jetpack DataStore


Jetpack DataStore は、Shared Preferences の代わりに利用できる(さらに改善もされている)新しいライブラリです。Kotlin コルーチンと Flow を使っているので、非同期の読み取りや書き込みを簡単に行うことができ、はるかに進化しています。現在はまだアルファ版ですが、今後のために移行方法を確認しておきましょう。

DataStore には、2 種類の API およびアプローチが存在します。Preferences DataStore は本質的に SharedPreferences を完全に置き換えるもので、SharedPreferences と同じようにキーと値のペアを使って単純なデータを格納します。しかし、Preferences DataStore は適切な非同期読み取りと書き込みを自動的に扱えるので、SharedPreferences よりも強力で安定しています(SharedPreferences は同期書き込みを行うので、非同期処理を実現するには、UI スレッドで動作させないようにする方法を見つけなければなりません)。

2 つ目の API は Proto DataStore です。これを使うと、protobuf をベースとした型安全で高度なオブジェクト データ ストレージを利用するためのスキーマを作成できます。
まずは、Prefer Storing Data with Jetpack DataStore(Jetpack DataStore でデータを保管する)記事をご覧ください。次に、Preferences CodelabProto Codelab を確認し、内容を理解したらライブラリをダウンロードしてみましょう。


最近公開されたブログ記事と動画


直近の Android のプライバシーの変更点に対応する



デベロッパーの皆さんが直近のプライバシーの変更点について理解し、対応できるように、Fred Chung記事を書いています。ユーザーデータにアクセスする際の制御と透過性を向上する作業が続いている関係で、リリースのたびにこの領域にいくつかの変更が行われています。Android 11 も例外ではありません。このような変更の多くは targetSdk フラグを変更するまで有効になりませんが、将来的に内容を理解してコードを移行できるように、記事を読んで対応方法を把握しておきましょう。

この記事では、特に以下の内容を扱っています。


  • パッケージ アクセス: Android 11 は、端末上のパッケージの可視性を限定します。つまり、ユーザーの端末上にある他の任意のアプリについての情報にアプリからアクセスできなくなります。記事には、この仕組みの説明と実装ガイドへのリンクが含まれています。

  • 増分位置情報アクセス許可: Android 11 では、フォアグラウンドとバックグラウンドの両方の位置情報にアクセスする場合、段階的にアクセス許可をリクエストする必要があります(まずフォアグラウンドのアクセスをリクエストします。次にバックグラウンドのアクセスをリクエストすると、設定画面が開き、そこでバックグラウンド位置情報へのアクセス許可を付与します)。

  • フォアグラウンド サービス: 位置情報、マイク、カメラへのアクセスに利用。

  • リセット不可能な ID: この変更は、端末のリセット不可能な ID へのアクセスを防ぐことを目的として、いくつかのリリースを経て進化してきたものです。Android 11 では、getIccId() を呼び出しても有用な情報は返されません。そのため、他の手段を使って必要な情報を取得する必要があります(ヒント: 代わりに、リセット可能な ID を使います)。まずは、一意の識別子に関するベスト プラクティスに書かれているガイドをご覧ください。


Android GPU Inspector



今年、3D グラフィックスのパフォーマンス調整に役立つ新しいプロファイリング ツールについてお知らせしました。ただし、これは早期プレビューの形式のみで公開され、その後も継続して開発を行っていました。そしてこのたび、Android GPU Inspector が「オープンベータ版」形式で誰でも使えるようになりました(補足: 現在も依然としてベータ版で、チームはまだ開発を続けていますが、多くの方に試していただき、フィードバックを受け付ける準備は整いました)。

Android Studio の CPU プロファイラやスタンドアロンの systrace/perfetto ツールなど、私たちが提供している他のプロファイリング ツールに似ていますが、3D パフォーマンスの調整に役立つ GPU 固有の低レベル情報が含まれています(とりわけ、ゲームなど、パフォーマンスが重視されるグラフィックス アプリの開発に役立ちます)。

Android GPU Inspector は端末のドライバと連携して動作するので、現在のところ、サポートされる端末は Pixel 4 と Pixel 4 XL に限られています。ただし、将来的にはさらに多くの端末をサポートする予定です。ツールは、こちらからダウンロードできます。詳しくは、Android GPU Inspector オープンベータ版の記事と動画をご覧ください。

ADB (Android Developers Backstage) ポッドキャスト 新エピソード


ADB 148: [Constraint|Motion][Layout|Editor]



Sean McQuillan と私が、Nicolas RoardJohn Hoford を迎えて MotionEditor について話を聞きます。先日、MotionEditor は Android Studio 4.0 で安定版になりました。このツールについて話を進めながら、MotionLayout や ConstraintLayout などのデザインツール全般についても幅広く取り上げました。

Talking with Apples



Peter-John Welcome 氏のポッドキャストに Sean McQuillan が出演し、Jetpack Compose について語ります


またお会いしましょう



今回は以上です。次回も Android デベロッパーの世界の最新アップデートをお届けします。お楽しみに。


Reviewed by Yuichi Araki - Developer Relations Team and Hidenori Fujii - Google Play Developer Marketing, APAC


Share on Twitter Share on Facebook

詳細を知りたい方、サンプルコードやテキスト エディタのデモアプリを見たい方は、Native File System API: 簡単にローカル ファイルにアクセスするをご覧ください。
注: この API のインターフェースは、オリジン トライアルで利用できたものから大幅に変更されています。差分は、仕様リポジトリで詳しく説明しています。 本番バージョンの API の詳しい使い方は、今後数週間のうちに上に示した web.dev の記事で説明する予定です。

今回のリリースに追加されたその他の機能

PointerEvents v3 の Altitude と Azimuth

PointerEventsAltitudeAzimuth 角度が追加されました。端末で利用できるペアに応じて、altitude および azimuth 変換に tiltXtiltY が、tiltX および tiltY 変換に altitude と azimuth が追加されます。これらは、端末が一般的に測定する角度です。altitude と azimuth は、三角法を使って tiltXtiltY から計算できます。ハードウェアから見ると、tiltXtiltY を測定する方が簡単でコストもかかりません。
タッチペン アプリから見ると altitudeazimuth の方が合理的で、ユーザーにも直感的です。tiltXtiltY を使うには、デベロッパーが 2 つの仮想平面の交差角を視覚化する必要がありますが、ペンと画面の表面だけを見ればよいので、azimuthaltitude の方が視覚化しやすくなっています。
azimuthaltitude の追加により、API の直感性が向上します。tiltXtiltYaltitudeazimuth の間の変換と逆変換を提供することで、tiltXtiltY を使うアプリとの下位互換性が実現できます(新しい端末が altitudeazimuth のみを返す場合も同様です)。

パスワード変更用の well-known URL

ウェブサイトは、パスワード変更用の well-known URL(たとえば /.well-known/change-password)を設定できます。この URL の目的は、ユーザーがすばやくパスワードを変更できるように、パスワード変更用のページにリダイレクトすることです。Chrome が保存されたパスワードが侵害されたことを検知すると、この URL を使ってユーザーのパスワード変更をサポートします。詳細については、パスワード変更用の well-known URL を追加してユーザーが簡単にパスワードを変更できるようにするをご覧ください。

カスタム プロトコル ハンドラが URL を計算した場合の空白文字のエンコードの変更

navigator.registerProtocolHandler() ハンドラは、空白を "%20" に置換するようになります。これまでは、"+" に置換されていました。これにより、Chrome と Firefox などの他のブラウザの処理が統一されます。

CSS ::marker 疑似要素

<ul> 要素と <ol> 要素の数字と箇条書き記号をカスタマイズするための疑似要素が追加されます。この変更により、色、サイズ、箇条書き記号の形状、数字の種類をデベロッパーが制御できるようになります。

Document-Policy ヘッダー

Document Policy は、iframe のサンドボックス化と同じようにドキュメント単位でウェブ プラットフォームとの接点を制限します。ただし、Document Policy の方がはるかに柔軟で、以下のようなことを実現できます。
さらに、このヘッダーを使うと、テキスト フラグメントへのスクロール機能のプライバシー緩和策として、読み込み時のフラグメントやテキスト フラグメントへのスクロールをサイト側でオプトアウトできます。これは、Document Policy API の中で初めて搭載される機能です。

EME persistent-usage-record セッション

"persistent-usage-record session" という名前の 新しい MediaKeySessionType が追加されます。この種類のセッションでは、ライセンスとキーは永続化されず、セッションで利用するキーが破棄されたときにキーの利用記録が永続化されます。この機能は、詐欺検知のような目的で復号キーがどのように使われているかをコンテンツ プロバイダが理解する際に役立つ可能性があります。

FetchEvent.handled

Service Worker にディスパッチされた FetchEvent は読み込みパイプライン中に存在しますが、これはパフォーマンスの影響を受けやすくなっています。新しい FetchEvent.handled プロパティは、Service Worker がクライアントにレスポンスを返した際に解決される Promise を返します。これにより、Service Worker は、レスポンスが完了してからしか開始できないタスクの実行を遅らせることができます。

HTMLMediaElement.preservesPitch

audio 要素や video 要素の再生速度を調整したときにピッチを維持するべきかを決めるプロパティが追加されます。この機能は、クリエイティブ用途で希望されています(たとえば、ピッチを変更する「DJ デッキ」スタイルのアプリケーション)。また、1.00 に非常に近い速度で再生する場合、ピッチ維持アルゴリズムによってアーティファクトが生じるのを防ぎます。この機能は、Safari と Firefox で既にサポートされています。

Imperative Shadow DOM Distribution API

ウェブ デベロッパーがスロット要素への割り当てノードを明示的に設定できるようになります。これにより、Shadow DOM v1 で発生していた次の 2 つの問題が解消されます。
新しい API がどのようにこれらの問題を解消するかについては、Imperative Shadow DOM Distribution API の説明をお読みください。

window.location.fragmentDirective の移動

window.location.fragmentDirective プロパティは document.fragmentDirective移動しました。これは、テキスト フラグメント機能の変更です。

<fieldset> 要素の新しい display 値

<fieldset> 要素が CSS 'display' プロパティの 'inline-grid''grid''inline-flex''flex' の各キーワードをサポートします。

ParentNode.replaceChildren() メソッド

ParentNode のすべての子要素を渡されたノードで置換するメソッドが追加されます。これまでは、次の 2 つの方法でノードの子要素を新しいノードセットに置換することができました。

registerProtocolHandler() の分散ウェブスキームのセーフリスト

Chrome において、registerProtocolHandler() で上書きできる URL スキームのリストが拡張され、cabaldatdiddwebethereumhyperipfsipnsssb が含まれるようになっています。リストを拡張して分散型ウェブ プロトコルを含めることで、アクセスを提供するウェブサイトやゲートウェイから独立した一般エンティティへのリンクを解決できるようになります。詳しくは、Are we distributed yet?プログラム可能なカスタム プロトコル ハンドラをご覧ください。

Asynchronous Clipboard API の text/html サポート

現在、Asynchronous Clipboard API は text/html 形式をサポートしていません。Chrome 86 は、クリップボードを利用した HTML のコピーと貼り付けをサポートします。HTML は、クリップボードとの間で読み書きを行う際にサニタイズされます。この変更は、以下のようなユースケースを実現することを目的としています。
document.execCommand() に代わってコピーおよび貼り付けの機能を提供することも意図しています。

macOS Big Sur の VP9

ベースとなるハードウェアがサポートしている場合、macOS Big Surで VP9 動画コーデックを利用できます。デベロッパーが Media Capabilities API を使って再生のスムーズさや電力効率を検出すると、デベロッパーが何もしなくても、プレーヤーのロジックが高解像度帯で自動的に VP9 を優先するはずです。デベロッパーがこの機能をフル活用するには、複数解像度で VP9 ファイルをエンコードし、ユーザーや接続の帯域幅の変動に対応する必要があります。

WebRTC 挿入可能ストリーム

WebRTC の MediaStreamTrack をエンコードおよびデコードする際に、ユーザー定義処理手順を挿入できるようになります。これにより、アプリケーションはカスタムデータ処理を挿入できます。これによってサポートされる重要なユースケースとして、中間サーバーを経由して RTCPeerConnection 間で転送されるエンコード データのエンドツーエンドの暗号化があげられます。

サポートの終了と機能の削除

このバージョンの Chrome では、以下のサポートの終了および機能の削除が行われます。現在サポートが終了している機能および以前に削除された機能のリストは、ChromeStatus.com をご覧ください。

WebView からの WebComponents v0 の削除

Web Components v0 は、PC 版と Android 版の Chrome 80 で削除されました。Chromium 86 では WebView からも削除されます。これにより、Custom Elements v0Shadow DOM v0HTML Imports も削除されます。

FTP のサポート終了

Chrome では、FTP URL のサポートを終了して削除する作業が進んでいます。Google Chrome の現在の FTP 実装は、暗号化接続(FTPS)やプロキシをサポートしていません。ブラウザからの FTP の利用率はかなり低く、既存の FTP クライアント機能の改善に注力するのは現実的ではありません。また、影響するすべてのプラットフォームで、機能の豊富な FTP クライアントが利用できます。
Chrome 72 以降では、FTP によるドキュメント サブリソースのフェッチと、トップレベル FTP リソースのレンダリングのサポートが削除されています。現在、FTP URL を開くと、リソースの種類によって、ディレクトリ一覧またはダウンロードが表示されます。Google Chrome 74 以降のバグにより、HTTP プロキシを経由した FTP URL へのアクセスがサポートされなくなっています。FTP のプロキシ サポートは、Google Chrome 76 で完全に削除されました。
Google Chrome の FTP 実装に残された機能は、暗号化されていない接続でのディレクトリ一覧の表示とリソースのダウンロードのみとなっています。
サポート終了のスケジュールは次のとおりです。

Chrome 86

デフォルトで、FTP はほとんどのユーザーに対して有効なままですが、プレリリース チャンネル(Canary 版およびベータ版)で無効になり、安定版のユーザーの 1% で試験的に無効化されます。このバージョンでは、コマンドラインで --enable-ftp フラグまたは --enable-features=FtpProtocol フラグを使って再有効化できます。

Chrome 87

デフォルトで、FTP サポートは 50% のユーザーに対して無効化されますが、上記のフラグを使うと有効化できます。

Chrome 88

FTP サポートが無効化されます。

Reviewed by Eiji Kitamura - Developer Relations Team
Share on Twitter Share on Facebook

Google は、「社会課題をテクノロジーで解決に導く」 スタートアップを対象としたオンライン アクセラレーター プログラム「Google for Startups Accelerator Class 3 」を実施します。2020 年 9 月 15 日より参加スタートアップの応募を開始し、2021 年 1 月 よりプログラムを開始いたします。詳細なスケジュールについては プログラムのウェブサイトをご確認ください。

Google for Startups Accelerator ではこれまでも日本の経済や社会に貢献するさまざまなスタートアップへの支援を行ってきました。

過去に日本のアクセラレーター プログラムに参加された Selan は、子どもを対象としたバイリンガル講師によるお迎えサービスの取り組みにより、教育、女性の活躍のサポートに貢献されています。また、同じく過去の ヨーロッパのアクセラレーターに参加した mDoc は、慢性疾患のある人々がアプリを通じて治療を受けられるように支援することで、医療と健康の分野に取り組んでいます。

本プログラムはテクノロジーを用いて社会課題を解決に導くスタートアップを対象としています。

このプログラムは、すでに商品またはサービスを市場に投入し、市場的価値が見込まれ、スケールする将来性があるスタートアップを対象に、これからの成長に備えるためのサポートを提供します。テクノロジーを活用した社会、経済、環境といった様々な分野の問題解決への取り組みを加速し、ひいては、スタートアップの成長が日本経済のさらなる活性化につながることを期待しています。

ぜひご応募ください。

Google for Startups Accelerator 活用の利点

Google が社会課題解決型スタートアップを支援する理由:

Google はテクノロジーが社会をより良くしていくと考えています。私たちは社会の大きな課題を解決するためのアイデアを持つスタートアップをテクノロジーの力で支援したいと考えています。

対象となる課題エリア:

Google for Startups Accelerator が求めるチーム

募集概要



Posted by Takuo Suzuki - Developer Relations Team

Share on Twitter Share on Facebook


ConstraintLayout 2.0

しばらくの間、このライブラリはアルファ版やベータ版の形式で使われてきましたが、ついに安定版に移行しました。Sean McQuillan が、このリリースに関する記事を投稿しています。ConstraintLayout 2.0 には、以下のようなさまざまな機能が含まれています。
Flow 仮想レイアウトは、複数のアイテムをつなぎ、実行時にコンテナに十分なスペースがない時、次の行に送りたい場合に便利です。
Layer を使うと簡単に、複数のビューに対して同時に変換を適用できます。

MotionLayout は ConstraintLayout のサブセットで、高度な UI 遷移アニメーションを実現します。Android Studio に MotionLayout 用のデザインツールである Motion Editor が搭載されたため、印象に残る体験を簡単なプロセスで作ることができます。使い始めるにあたっては、Studio の新しい Motion Editor ツールに関する Scott Swarthout の記事や、Sean新しいサンプルをご覧ください。

11 Weeks of Android が完結!



第 11 週の UI に関するコンテンツを公開して、11 Weeks of Android が完結しました。この記事では、前回の Now in Android エピソード以降に取り上げた、ゲームと UI に関するトピックについてお知らせします。

第 10 週: ゲーム、メディア、5G

この週は、メディア コントロール新しい 5G 機能の利用、ゲーム開発に関するさまざまな情報について幅広く取り上げました。この週の詳しい内容については、まずまとめのブログ記事Pathway をご覧ください。投稿された動画はプレイリストで確認できます。また、Daniel GalpinAndroid Game Dev Show では、Android のゲーム テクノロジーに関する最新の動画をご覧いただけます。

第 11 週: UI


11 Weeks シリーズの最後の週は UI を取り上げました。キーボード アニメーションマテリアル デザイン コンポーネントをご紹介し、最後に Jetpack Compose アルファ版のリリースをお知らせしました。詳細やリンクは、まとめのブログ記事に掲載されています。モダン UI Pathway から記事や動画、Codelab をご確認ください。また、動画プレイリストで Jetpack Compose の詳しい情報をご覧ください。

Android 11 Meetups がほぼ終了



Android 11 に関する色々なことが仕上げの段階に入りました。 #11WeeksOfAndroid が完結し、夏のオンライン イベント シリーズである Android 11 Meetups も終わりに近づいています。この Meetups は楽しさあふれる国際的なシリーズで、世界中の少なくとも合計 57 か所でイベントが開催されました。どのライブにも参加できなかった方のために、Android 11 Meetups サイトにはたくさんの録画が投稿されています。
コミュニティのオーガナイザーの皆さん、トークやライブ Q&A に登場してくださった講演者の皆さん、そしてイベントにご参加いただいた多くの皆さん、どうもありがとうございました。
[編集部注] 日本では、第 7 回目のイベントを 9 月 15 日(火)10 時から主に今年 3 月下旬に発表された Android 向けゲームの開発ツール、9 月 29日(火)16時からは UI、デザインについての最新情報をご紹介します。ぜひこちらから事前登録をお済ませの上ご参加ください。Google Developers Japan YouTube チャンネルでは、アーカイブも公開しています

AndroidX 公開

いくつかのバージョンの Android ライブラリが公開されました。そのほとんどは、さまざまな開発段階にあるアルファ版やベータ版です。この記事では、いくつかの内容をピックアップして紹介します。
  • Concurrent 1.1.0: このライブラリは、ListenableFuture から Kotlin コルーチンへの変換を簡略化します。
  • Webkit 1.3.0: この新しいバージョンでは、ForceDarkStrategy や WebMessageListener API を利用できます。さらに、WebView がマルチプロセス モードで実行されているかどうかのチェックも可能になります。
  • ConstraintLayout 2.0.0: このリリースには、たくさんのすばらしい新機能が満載されています。その 1 つが、既に説明した MotionLayout です。
  • Security-Identity-Credential 1.0.0-alpha01: この新しいライブラリから、Android 11 の新しい認証情報 API にアクセスできます。また、API 24 までの古いリリース向けに、キーストアをバックエンドとした実装も提供します。

最近公開されたブログ記事と動画

構造化クラスの再定義

ART チームは、JVM TI(Java Virtual Machine Tool Interface)が実行時にクラスの構造を変更できる機能(メソッドやフィールドの追加など)を追加しました。これに関して、Alex Light 興味深い記事を公開しています。この変更により、Android Studio の変更の適用機能(アプリのビルドとインストールを高速に行う方法ですが、コードやリソースの変更内容に依存します)をさまざまな状況で使えるようになります。

Motion Tags… 動画シリーズ

Android Studio チームは、Motion Tags という新しい動画シリーズを始めました。ここでは、MotionLayout で高度なレイアウト アニメーションの作成に使うタグを詳しく解説します。現在のところ、4 つのエピソードが投稿されています。プレイリストを確認し、今後の投稿にもご期待ください。


ADB (Android Developers Backstage) ポッドキャスト 新エピソード




前回の Now in Android 以降、Android Developers Backstage に新しいエピソードが投稿されています。以下のリンクまたはお気に入りのポッドキャスト クライアントでご確認ください。
ADB 147: Jetpack Compose Alpha
Romain Guy と私は、ツールキット チームの Clara Bayarri、Matvei Malkov、Anna-Chiara Bellini を招き、Compose が生まれた背景から、API 設計のアプローチ、新しい UI ツールキットを構築するうえでの壁、チームにとっての「アルファ版」という言葉の意味まで、あらゆることを話しました。

またお会いしましょう

今回は以上です。次回も Android デベロッパーの世界の最新アップデートをお届けします。お楽しみに。


Reviewed by Yuichi Araki - Developer Relations Team and Hidenori Fujii - Google Play Developer Marketing, APAC

Share on Twitter Share on Facebook




Android 11 が公開されました!日本時間 9 月 9 日に、ソースを Android オープンソース プロジェクト(AOSP)にプッシュし、Android の最新バージョンを正式にリリースしました。Android 11 は、3 つのテーマ、すなわち人、管理、安全性にフォーカスして開発されています。中心のコミュニケーションへのアプローチ、ユーザーがすべてのスマート デバイスにすばやくアクセスしてコントロールできる管理、端末のデータの共有方法をより細かく制御できる安全性の 3 つです。詳しくは、こちらのブログ記事をご覧ください。  

デベロッパーにとって、Android 11 は新機能の宝庫です。会話通知、デバイスとメディアのコントロール、「今回のみ」のアクセス許可、強化された 5G サポート、IME の切り替えなどを確認しておきましょう。皆さんの開発作業を高速化するため、互換性の切り替え、ADB の増分インストール、アプリ終了理由 API、データアクセス監査 API、Kotlin NULL 可能性アノテーションなど、たくさんの新しいツールも追加しました。多くのデベロッパーの皆さんがAndroid 11 に対応したアプリを開発されることが楽しみです! 

9 月 9 日より、正式版の Android 11 が Pixel 2、3、3a、4、4a 端末から順次配信が開始されていますので、ご期待ください。配信前にダウンロードする方は、Android 11 デベロッパー サイトをご覧ください。  

人、管理、安全性

「人」

Android 11 は「人」を中心とした、高い表現力を持っています。スマートフォンで会話する方法を新たな発想で見直し、皆さんの生活に最も重要な「人」を認識して優先できる OS です。デベロッパーは、Android 11 を使ってさらに深い会話や個人間のやり取りを行うアプリを構築できます。


バブルと会話通知


管理

Android 11 では、ユーザーが端末につながっているすべてのスマート デバイスにすばやくアクセスして、1 か所からコントロールできます。デベロッパーは新しい API を使い、ユーザーによるスマート デバイスの表示やメディアの制御を実現できます。

 

デバイス コントロールとメディア コントロール


安全性

Android 11 では、機密性の高いアクセス許可をユーザーが細かく制御できるようにして透明性を向上させ、アップデートを高速化することで端末の安全を保てるようにしています。

 

こちらから、Android 11 のすべてのプライバシー機能について確認いただけます。


イノベーション


品質の向上



 


デベロッパーに優しく


Android 11 リリースに向けたアプリの準備

Android 11 はまもなくユーザーに公開されます。ぜひ、互換性テストを終えてアップデートを早めに公開していただくようお願いします。 


注意すべき大きな動作の変更点のいくつかを紹介します(これらは、アプリの targetSdkVersion によらず適用されます)。

 


Android 11 には、オプトイン可能な動作の変更点も含まれています。これらは、アプリのターゲットを新しいプラットフォームにした時点で反映されます。互換性のあるバージョンのアプリを公開した後、これらの変更点をできる限り早く評価することをお勧めします。互換性テストやツールの詳細については、Android 11 の互換性の週にお伝えしたドキュメントをご覧ください。詳しい技術解説は Android 11 デベロッパー サイトをご覧ください。 


新機能や新 API でアプリを強化する

準備ができたら、Android 11 に移行し、使用できる新しい機能や API について各種ドキュメントでご確認ください。こちらでは最初に着手すべき重要な機能をまとめています。以下の機能はすべてのアプリで対応することをお勧めします。 


該当するアプリでは、以下の項目にも対応することをお勧めします。


Android 11 のすべての機能については、developer.android.com/11 をご覧ください。 


Android 11 をインストールする

Android 11 は、9 月 9 日より、一部の Pixel、OnePlus、Xiaomi、OPPO、realme スマートフォンにロールアウトされます。今後数か月で、さらに多くのパートナーが端末のリリースやアップグレードを行う予定です。今年のベータ版プログラムに登録されている端末も含め、Pixel 2、3、3a、4、4a スマートフォンをお持ちの方には、まもなく OTA(無線)アップデートが届きますので、ご期待ください。  

Pixel 端末向けの Android 11 のファクトリー システム イメージも Android Flash Tool から利用できます。または、こちらからダウンロードできます。いつものように、最新の Android Emulator システム イメージは Android Studio の SDK Manager から取得できます。Treble 対応の端末で幅広くテストしたい場合は、こちらから Generic System Image(GSI)を入手できます。 

Android 11 のソースコードは、Android オープンソース プロジェクト リポジトリの Android 11 ブランチの下にあります。こちらをご覧ください


今後の予定について

プレビュー版の Issue Tracker はまもなくクローズし、Developer Preview やベータ版ビルドに対して記録されたオープン状態のバグの管理も終了します。しかし、フィードバックは引き続きお待ちしています。Preview の Issue Tracker に記録した問題がまだ解消されていないという方は、AOSP Issue Tracker で Android 11 に対してフィードバックをお寄せください

 今年のプレビュー プログラムに参加してくださった、たくさんのデベロッパーと先行ユーザーの皆さん、本当にどうもありがとうございました。お寄せくださったフィードバックのおかげで、Android 11 はあらゆる人にとってよりよいプラットフォームになっています。

 Android 11 に対応した皆さんのアプリを拝見できることを楽しみにしています。


Reviewed by Yuichi Araki - Developer Relations Team and Hidenori Fujii - Google Play Developer Marketing, APAC

Share on Twitter Share on Facebook

このマイルストーンは、ウェブのブラウジングを安全かつプライベートにするうえで大きな進展ではありますが、DNS-over-HTTPS はまだ登場したばかりです。さらに DNS の安全性を向上させるため、フィードバックに耳を傾け、携帯通信事業者やその他の ISP、DNS サービス プロバイダ、そしてオンラインの子どもの安全を擁護する団体などの関連団体と協力し合っています。


Reviewed by Eiji Kitamura - Developer Relations Team
Share on Twitter Share on Facebook


ユーザーやデベロッパーは ID の複雑さに悩まされており、それがデベロッパーの課題になっています。この課題に対処するため、新しい Google Identity Services Library の一部として、One Tap と Block Store に取り組んでいます。

ID についてもっと知りたい方のために、「Identity on Android: What’s new in sign-in」という動画を公開しています。この動画では、Vishal が Google Identity System の新しいライブラリについて説明します。

Facebook Messenger チームと Twitter のダイレクト メッセージング チームの 2 チームは、かなり早い段階から私たちと一緒に作業してきました。Twitter のストーリーはこちらから、どのように Facebook と協力して実装にあたったのかはこちらからお読みください。
人と ID の詳細は、Pathway動画のプレイリスト、この週のまとめのブログ記事をご覧ください。

第 2 週 - 機械学習


この週は、#AndroidDevChallenge の入賞者の発表から始まりました。すべての入賞アプリと、アプリがどのように ML Kit や TensorFlow Lite を使っているのかを確認しましょう。どのアプリも、機械学習がいかに強力な方法でユーザーの目的達成をサポートできるのかを示すことに重点を置いています。たとえば、視覚障がいを持つユーザーが混雑した場所を移動することをサポートするアプリや、学生の手話学習をサポートするアプリなどがあります。
先日、ML Kit を独立した SDK にして、Firebase アカウントがなくても利用できるようにしました。build.gradle ファイルに 1 行追加するだけで、アプリに ML 機能を組み込むことができます。
要望が多く寄せられていた機能がもう 1 つ追加され、画像のラベル付けと物体検知および物体トラッキングにおいて、Google モデルを独自のモデルと交換できるようになりました。
ユーザーの問題と ML の長所が交差する独自の場所を見つけることの重要性を確認し、ML プロダクトに関する意思決定に役立つ 「人にうれしいAIのための UXデザインガイド People + AI Guidebook(日本語・コミュニティによる翻訳版)」や、Read Along チームへのインタビューをご覧ください。

また、第 2 週はAndroid アプリにカスタムモデルを追加する作業が今までになく簡単になったことにも注目しました。以下の Codelab をご確認ください。


詳しくは、機械学習の Pathway動画のプレイリストまとめのブログ記事をご覧ください。


第 3 週 - プライバシーとセキュリティ



プライバシーとセキュリティ」ブログ記事でお知らせしたように、ユーザーデータへのアクセスに対する制御と透過性を強化しました。Android 11 にはさまざまなプライバシーの改善が導入されています。その 1 つである1 回だけの アクセス許可では、アプリが端末のマイクやカメラ、位置情報に 1 回だけアクセスすることを許可できるようになります。これらの新しい変更点を組み込み、プライバシーを尊重するアプリを構築する方法について確認しましょう。この動画では、さまざまな Android セキュリティ アップデートについて学ぶこともできます。

その他の特筆すべきアップデートは、次のとおりです。

  • アクセス許可の自動リセット: Android 11 をターゲットにしたアプリでは、ユーザーが長期間アプリを使わなかった場合、システムがアプリに関連付けられたすべての付与済みのランタイム アクセス許可を「自動リセット」し、ユーザーに通知します。

  • データアクセス監査 API: Android 11 のデベロッパーは、保護された個人データをアプリがどのように利用しているかを透過的に把握できる新しい API にアクセスできます。アプリのプライバシーと安定性を向上させる Android 11 の新ツールもご覧ください。

  • 対象範囲別ストレージ: Android 11 では、API レベル 30 をターゲットとするすべてのアプリで、対象範囲別ストレージが必須となります。詳細を確認し、ストレージに関するよくある質問 をご覧ください。

  • Google Play システム アップデート: Google Play システム アップデートは、Project Mainline の一環として Android 10 で導入されました。これにより、ユーザーによるコア OS コンポーネントのアップデートが簡単になります。

  • Jetpack Biometric ライブラリ: このライブラリは、下位互換性を確保するため、Android 11 の新しい BiometricPrompt 機能を含むようにアップデートされています。

「プライバシー、信頼性、セキュリティ」の Pathway動画のプレイリストプライバシーとセキュリティのベスト プラクティスについてのドキュメントをご覧ください。

第 4 週 - Android 11 の互換性


Android 11 Beta 2 を公開し、Platform Stability と呼ばれる新しいリリース マイルストーンに到達しました。これは、デベロッパーに対して、すべての API とシステム動作が確定したことを明確に示すためのものです。デベロッパーにとってのこのマイルストーンの意味や Android 11 のスケジュールなど、Android 11 Beta 2 と Platform Stability の詳細をご覧ください。また、第 4 週のあと、最終となる Android 11 Beta 3 を公開しました。

Android 11 は 9 月 9 日に公式版をリリースしています。アプリを Android 11 に対応させるために、以下のドキュメントをご覧ください。


Accelerating Android Updates」というブログ記事では、Android のアップデート可能アーキテクチャを拡大することで最新 OS の普及率を高める継続的な取り組みについて考察しています。また、LeBian SDK を開発している Excelliance Tech も取り上げました。同社は最近、Android OS との互換性を向上させるため、非 SDK インターフェースから安定した公式 API に移行しました。Excelliance Tech のストーリーをご覧ください。

詳しくは、Android 11 の互換性 Pathway動画のプレイリスト、この週のまとめのブログ記事をご覧ください。

第 5 週 - 言語


Android 11 ベータ版では、非同期作業に Kotlin の使用が公式に推奨されるようになりました。Kotlin をまだ使ったことがない方は、以下をご覧ください。


また、Kotlin ケーススタディのページで最新のケーススタディやデータをご確認ください。Google Home ケーススタディAndroid での Kotlin の現状についての動画も掲載されています。さらに、初心者の方向けに、Android Basics in Kotlin コースを新設しました。

Java 言語のデベロッパーの方は、Support for newer Java language APIs の動画をご覧ください。さまざまな Android のバージョンでいかに新しい OpenJDK ライブラリを利用できるようにしたかご説明しています。Android 11 では、I/O プリフェッチによってアプリの起動時間をさらに高速化するため、Android ランタイムのアップデートも行っています。
Android 11 には、プロファイルに基づいた最適化(PGO)を行うツールの改善や Android Studio 4.0 でのネイティブ依存性管理の向上など、ネイティブ ツールチェーン全般のアップデートが含まれています。

また、Android Studio の D8 および R8 コンパイラに対する集中的な改善も続けており、R8 shrinker の Kotlin サポートを強化しています。詳細はこちらをご覧ください
詳しくは、言語の Pathway動画のプレイリスト、この週のまとめのブログ記事をご覧ください。

第 6 週 - Android Jetpack


Android Jetpack の新機能に興味がある方は、What's new in Android Jetpack の動画をご覧ください。多数のライブラリのアップデートについての概要と、 Jetpack の導入を行うためのヒントをご説明しています。

  • Hilt などのメジャーリリースについて深く掘り下げて説明しています。使い始める際に参考になるチートシートや、実際に私たちのサンプルで依存性注入に Hilt を使うように移行した手順も紹介します。ボイラープレートが減るということは、楽しみが増えるということです。

  • Paging 3.0 の詳細をご覧ください。このライブラリは、Kotlin コルーチンを使って完全に書き直されており、エラー ハンドリングの改善、変換機能の向上などの機能強化が行われています。

  • CameraX ベータ版について学びましょう。皆さんに代わってさまざまな端末や OS バージョンのエッジケースを管理してくれます。

今年は、Navigation 2.3 のリリースでいくつかの大きな改善も行いました。これにより、Android の UI 原則を維持しつつ、アプリの異なる画面間を簡単にナビゲートできるようになりました。

Android 11 では、ユーザーが機密性の高いアクセス許可をさらに細かく制御できるようにする作業を続けています。新しい ActivityResult API には、共通インテントなどのための型安全なコントラクトが含まれています。こういった変更により、アクセス許可のリクエストが簡単になります。今後さらに、アクセス許可を簡単に扱えるようにする予定です。
AppStartup ライブラリの最新リリースや、WorkManager の新機能についても知っておきましょう。

詳しくは、Jetpack Pathway動画のプレイリスト、この週のまとめのブログ記事をご覧ください。

第 7 週 - Android デベロッパーツール


こちらの動画で Android デベロッパー ツールの新機能の概要をまとめています。また、こちらの動画ではデザインツールの最新アップデートをご説明しています。

Layout Inspector がアップデートされたレイアウトのデバッグについてもご確認ください。 さらに、 Jetpack Compose Design ツールの最新動向や、Android Studio の新しい Database Inspector の使い方もご覧いただけます。Android Studio で Jetpack Hilt を利用するための最新開発ツールも紹介します。
Android デベロッパー ツールのビルドシステムについては、以下を参考にしてください。


仮想テストに関する最新情報は、Android Emulator に関するこちらのブログをお読みください。最後に、パフォーマンス ツールの最新の変更点について、System Trace に関するパフォーマンス プロファイラ コンテンツをご覧ください。Android Studio 4.1 による C++ メモリ プロファイリングについても詳しく紹介しています。
詳しくは、Android デベロッパー ツール Pathway動画のプレイリスト、この週のまとめのブログ記事をご覧ください。


第 8 週 - アプリの配布と収益化


新しい Google Play Console ベータ版についてのウェビナーを実施したり、最近の Android App Bundle の改善と新規アプリのスケジュールについてお知らせしました。2021 年の下半期には、Google Play で新しいアプリやゲームを公開する際に Android App Bundle の使用が必須になる予定です。同じタイミングで、以前の APK 拡張ファイル(OBB)のサポートを終了し、Play Asset Delivery が、150 MB 以上のゲームを公開する際の標準オプションになります。また、インスタント対応にはインスタント対応 App Bundle による公開を必須とし、以前の Instant App の ZIP フォーマットのサポートを終了する予定です。デベロッパーが新しいアプリ内レビュー API を使うと、アプリの中で評価やレビューの登録を依頼できます。

Google Play Billing でユーザーの信頼を高めるため、忘れずに定期購入の透明性向上に関するポリシーを遵守してください。さらに、定期購入者を獲得して維持するために役立てていただくよう、機能セットを拡張した Play Billing Library 3 をリリースしました。2021 年半ばには、これが必須となる予定です。

先月、9 つの新しいマーケットで Google Play Pass がリリースされました。Google Play Pass と Google Play の直接課金の両方を使っているデベロッパーは、米国での平均で Google Play Pass から 2.5 倍の収入を得ています。さらに、Google Play ストアの収益が減ることはありません。こちらから詳細を確認し、お申し込みください。

詳しくは、アプリの配布と収益化の Pathway動画プレイリスト、この週のまとめのブログ記事をご覧ください。

第 9 週 - スマートフォン以外の Android


この週のハイライトをチェックしましょう。


詳しくは、Android TV 大きな画面についての Pathway、スマートフォン以外の端末に関する動画プレイリスト、この週のまとめのブログ記事をご覧ください。

第 10 週 - ゲームとメディア


いくつかのゲームデベロッパー向けの最新情報を公開し、「11 Weeks of Android」のスペシャル エピソード The Android Game Developer Show を公開しました。


アプリで MediaStyle と有効な MediaSession トークンを利用すると、Android 11 の新しいメディア コントロールを活用することもできます。メディアの再開をサポートする方法を確認しましょう。再開するには、MediaBrowserServiceCompat を使ってアプリを検出可能にして、EXTRA_RECENT ヒントを使ってコンテンツの再開をサポートし、onPlay および onGetRoot コールバックを処理します。また、MediaRouter Jetpack ライブラリの使い方や、アップデートされた UAMP サンプルもご覧ください。

さらに、アプリで 5G を活用する主な方法もいくつか紹介しました。Android 11 には、新しい API や既存の API のアップデートが追加され、5G の機能を活用するために必要なすべてのツールがそろいました。たとえば、強化された帯域幅の推定 API5G の検出機能、携帯通信会社の新しい従量制の確認フラグなどです。5G 端末やネットワーク接続がなくても、Android エミュレータでこれらの API の開発やテストができるようになっています。Android 5G の Web ページに、上記のすべてと関連情報が掲載されています。
詳しくは、「ゲームとメディア」の Pathway、動画プレイリスト、まとめのブログ投稿をご覧ください。ゲーム デベロッパー向けのすべてのツールやリソースの最新情報は、d.android.com/games からアクセスできます。

第 11 週 - UI


最後の週には、4 つの新しい Codelab9 つの新しいサンプル新しいドキュメント、Compose チームからのポッドキャストをリリースしました。関連動画は以下からご覧ください。


Android 11 の新機能として、オンスクリーン キーボードの開閉時にアプリでシームレスな画面遷移ができるようになりました。この機能をアプリに追加する方法は、 動画やブログ記事サンプルアプリをご覧ください。

私達はマテリアル デザイン ガイドラインに従ってアプリに一貫性を持たせ、あるアプリで学んだパターンを別のアプリでも使えるよう推奨しています。マテリアル テーマ(種類形状)、ダークテーマ、マテリアル デザイン コンポーネント(MDC)ライブラリを使ったマテリアルのモーション システムの詳細をご覧ください。まだ MDC に移行していない方は、移行ガイドを確認してください。

新しい MDC-Android Compose Theme Adapter などのライブラリを使うと、移行が楽になります。このライブラリは、MDC XML テーマを Compose の `MaterialTheme` に変換します。
詳しくは、Compose の Pathway、モダン UI Pathway動画プレイリスト、この週のまとめのブログ記事をご覧ください。

その他の関連ドキュメント


#11WeeksOfAndroid 動画コンテンツの全プレイリストはこちらからご覧いただけます。Twitter YouTube をフォローし、メーリングリストをサブスクライブすると最新のニュースをメールで受け取れます。ご覧いただき、ありがとうございました!



Reviewed by Yuichi Araki - Developer Relations Team and Hidenori Fujii - Google Play Developer Marketing, APAC

Share on Twitter Share on Facebook