このブログ投稿は、 Android 11 に関する重要な内容を毎週取り上げる #11WeeksOfAndroid シリーズの一部です。第 6 週は、Android Jetpack がテーマです。


2018 年、私たちは Android Jetpack をリリースしました。Android Jetpack は、デベロッパーがベスト プラクティスに従ってボイラープレート コードを減らし、異なる Android のバージョンや端末でも動作するコードを書けるようにするためのライブラリ群です。

これまで目にしてきた Android Jetpack の成長と、デベロッパーの皆さんが共有してくださったすばらしいフィードバックに、私たちはとても感激しています。AppCompat や Lifecycle などのコアライブラリを除いても、トップ 1000 アプリの 47% が 2 つ以上の Jetpack ライブラリを使っています。私たちのここ数年の業務は、皆さんが注力すべきコードに集中できるように、Android デベロッパーにとって基本的な部分を簡単にするため、既存ライブラリに多くのアップデートをリリースしてきました。また、高品質なアプリを簡単に作れるように、新しいライブラリのリリースも行っています。

関連動画


昨年も、多くのアップデートをリリースしました。Jetpack の新機能全般については、#Android11 ベータ版リリースの際のトークをご覧ください。このライブラリへの多くのアップデートを簡単に紹介するとともに、Jetpack を使いはじめる方法もご説明しています。






Hilt などのメジャーリリースについては、こちらの動画をご覧ください。また、チートシートや、実際に私たちのサンプルで依存性注入に Hilt を使うように移行した手順も紹介しています。ボイラープレートが減るということは、楽しみが増えるということです。





Paging 3.0 は、コルーチンをベースに Kotlin ファーストで書かれた最初のライブラリの 1 つです。Paging ライブラリには、皆さんから要望された機能が追加されています。たとえば、エラー ハンドリングの改善、マップやフィルタなどの簡単なリスト変換、セパレータやヘッダー、フッターなどの共通機能のサポートです。RxJava、LiveData、ListenableFuture のサポートや、Paging 2 との下位互換性も追加したので、簡単に移行できます。






アプリでカメラを使っている方は、現在ベータ版の CameraX を使えば、皆さんに代わってさまざまな端末や OS バージョンのエッジケースを管理してくれます。




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




Android 11 のアクセス許可について



Android 11 では、ユーザーが機密性の高いアクセス許可をさらに細かく制御できるようになっています。同時に、デベロッパーの皆さんができる限り簡単に Android 11 の要件に合ったアプリやゲームを開発できるようにすることも非常に重視しています。ここ数回の Android 11 Beta のリリースにはプライバシー関連の変更点が含まれています。それに合わせて、Android Jetpack を使ってアプリで簡単にアクセス許可を扱えるようにしています。新しい ActivityResult API には、共通インテントなどのための型安全なコントラクトが含まれています。こういった変更により、アクセス許可のリクエストが簡単になります。今後さらに、アクセス許可を簡単に扱えるようにする予定です。


Android Jetpack の情報をチュートリアルで確認する



Android Jetpack に関するハイライトを確認したい方は、チュートリアル形式で動画や関連ブログ記事・コードラボをまとめて確認できる Android Jetpack の Pathway をご覧ください。Pathway は、モジュールを順番に完了する形式になっており、最後にはクイズをご用意しています。クイズに合格した方には、もれなくバーチャルの Jetpack バッジが贈られ、Google Developer Profile に掲載されます。その他 Jetpack ライブラリの詳細や最新アップデートを簡単に確認できる新しいライブラリ エクスプローラもご用意しています。

#11WeeksOfAndroid 第 6 週 Android Jetpack のまとめ



Jetpack ライブラリは、高品質な Android アプリを簡単に構築するためのベスト プラクティスであり、確固としたガイダンスを提供しています。Navigation や Workmanager には新機能を、CameraX には安定性向上のためのアップデートを、Biometrics には堅牢性を追加しています。さらに、Dagger との共同作業による Hilt や、アプリの起動時間を短縮するライブラリなど、新しいライブラリもリリースしました。
ぜひこれらのライブラリを試していただき、感想をお聞かせください。皆さんの改善への協力をお待ちしています!

関連情報・ドキュメント


#11WeeksOfAndroid 動画コンテンツの全プレイリストはこちらから、それぞれの週の詳しい内容はこちらからご覧いただけます。毎週新しい分野を取り上げますのでご期待くださいTwitterYouTube のフォローもお願いします。


編集部注:日本で 8 月 4 日 に Android Studio 4.0 と Jetpack のオンラインイベントを行います



8 月 4 日(火)16 時から、2020 年 6 月に リリースした Android Studio の安定版 4.0 に関するノウハウや、新しいデバッガーの利用、ならびに Jetpack の最新情報をスペシャリストがオンラインでお伝えする Android 11 Meetups 第 4 回目を日本(日本語)で開催します。

Android 11 Meetups は、6 月 23 日  から 9 月 29 日にかけて、計 8 回に渡って開催されている、アプリ開発企業のエンジニアやプロダクト担当の皆さまを主な対象としたオンラインセミナーシリーズです。ぜひこちらのウェブサイトで登録・参加(視聴)ください


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



ML Study Jams “Road to TF Certificate 2020”


Google では、8 月 18 日から 9 月 13 日 10 月 4 日 までの期間中 TensorFlow User Group の協力の下、ML Study Jams “Road to TF Certificate 2020” を開催します。

本プログラムは、TensorFlow デベロッパー認定資格の取得を目指す開発者の皆さんが、オンライン上で試験に必要な勉強をしたり、意見交換をすることで、一緒に受験勉強を進めることができるものです。

Google では本プログラムを通じて、受験者がチューターに質問できるコミュニケーション チャンネルを用意し、受験したい方を応援します。

また、8 月 5 日(水)に、TensorFlow のユーザー グループである TensorFlow User Group(TFUG)によるオンライン ミートアップを開催します。

TensorFlow User Group Meetup #11

このミートアップは、本認定資格をテーマとしたものです。Google の TensorFlow Developer Advocate である Khanh LeViet による認定資格のご案内や、実際に認定資格を受験した TFUG オーガナイザーによる体験談、そして ML Study Jams 事務局による ML Study Jams for TF Certificate のご案内といった内容となっています。

TensorFlow デベロッパー認定資格に興味のある方は、ぜひこのミートアップにご登録・ご参加ください。


TensorFlow デベロッパー認定試験について


先日のブログで少しご紹介した通り、今年、新たに TensorFlow デベロッパー認定試験が開設されました。機械学習を使って自分のレベルを確認してみたい、もしくはさらに高いレベルにチャレンジしたいという方は、この夏、こちらの認定試験に向けた勉強を始めてみましょう。(認定制度については、こちらのブログや、tensorflow.org/certificate をご覧ください。 )

受験日ですが、日本からは以下の 3 つです。

・9/17(木)
・9/26(土)
・10/4(日)

10/4(日)までに受験され、合格された方には、素敵なノベルティをお送りします。


試験の出題範囲


認定試験は、オンライン学習サービス Coursera にある、こちらの 4 つのコースが試験の出題範囲となっています。試験は、英語で問題を読み、設問に答えたり、コードを書いたりする必要があります。


デジタル修了書を手に入れましょう


「TensorFlow デベロッパー認定資格」に合格すると、デジタル修了書を手にすることができます。この修了書は、LinkedIn などのオンライン プロファイルにアップロードすることができる他、機械学習エンジニアとして、さらなるキャリア アップをはかりたい方にも活用していただくことができます。ぜひ挑戦してみましょう。

合格したら


「TensorFlow デベロッパー認定資格」に合格したら、専用フォームに入力して報告をしてください。フォームへのリンクは後日お知らせします。報告して下さった方には、ノベルティを進呈します。

本プログラムのお申し込み


本プログラムへのご参加は、こちらのページよりお申し込みをお願いします。

皆様のご参加をお待ちしております。



Posted by Takuo Suzuki - Developer Relations Team


この記事は Argos の Senior Digital Product Lead である Rob Sargent の寄稿記事 " How Argos is using Google Maps Platform to give customers what they want, wherever they are" を元に翻訳・加筆したものです。詳しくは元記事をご覧ください。

編集者注 : この投稿は、英国最大手の小売事業者の 1 つで、オンライン ショップでも実店舗でも、突出した利便性、幅広い選択肢、価値を届けることを理念とする Argos の、Senior Digital Product Lead である Rob Sargent によるものです。


Argos では洗濯機からゲーム機、洋服まで、89,000 点以上の商品を販売しており、大変広い顧客層を対象としています。そのため、顧客の利便性向上に非常に注力しています。

例えば、英国で 2,000 以上の店舗展開をしている企業は他にはありません。また、欲しい物を求めて実店舗で商品棚をあちこち回る代わりに、あらかじめオンライン上や店頭に設置したカタログから欲しい商品をオーダーし、支払カウンターで受け取ることができるので、顧客は、短時間で楽に買い物を済ませられます。こうした工夫によって、Argos の店舗には年間 2,900 万人ものお客様が来店されます。

Argos のルーツは実店舗にありますが、オンライン ショッピング普及の波にも、うまく適応してきました。Argos のウェブサイトには、年間 10 億人が訪問します。現在、オンライン販売が売上全体に占める割合は 70% で、顧客の利便性を高めるために最大限の努力をしています。例えば、購入した商品の配達は日にちだけでなく時間帯まで指定することが可能です。



私は Argos のデジタル制作部門の責任者ですが、デジタルロケーション サービスの構築にも携わっています。我々のサービスでは、商品在庫が今、どこにあり、どこへ届ける必要があるかを追跡できる機能が必要です。Argos では、従来の小売業モデルにありがちな、一か所に集中した物流倉庫は持っていません。複数の地域や店舗に分散して在庫を保管し、必要な時にそれぞれの店舗から発送することで、より短期間での配達を可能にしています。

これらのサービス実現に向けて、ロケーション サービスが重要であり、信頼できるマッピング ソリューションが必要です。私たちの答えは Google Maps Platform でした。顧客が商品を手に入れるまでに、あまりに遠くまで移動したり、あまりに長時間待ったりということがないようにしたいのです。また、Argos のオンライン顧客の中には、購入せずに商品ページを閲覧しているだけの人もいます。そんな顧客のために、現在地からアクセスしやすい店舗の位置を表示する店舗検索機能を含む、インタラクティブ マップを開発しました。また、顧客が商品ページにある在庫チェック機能を使って、欲しい商品の在庫がある店舗を特定できるようにもしました。

Argos は 2016 年に、大手小売業のセインズベリーズ グループの一員となりましたが、その際に、姉妹企業で使われている新たな技術やソリューションを知る機会に恵まれました。それがきっかけとなり、Google Maps Platform を導入して店舗検索機能や在庫確認機能などのロケーション サービスを強化できました。Argos のエンジニアは、Maps Javascript API Maps Static API を利用して、読み込みが速く、効率的で使い易い地図機能を構築しました。顧客からの反応は極めて良く、旧バージョンの店舗検索に比べて、顧客はより長くウェブサイトに滞留し、より緊密なやり取りをするようになりました。さらに、私たちは店舗検索機能の「直帰率」(顧客が地図だけ見て Argos のウェブサイトから離れる割合)を測定しました。Google Maps Platform を導入したことで直帰率は従来に比べると 12% も減りました。つまり、年間 400 万人の訪問者が、Argos のウェブサイトにそのまま留まって利用を続けるようになったのです。

Google Maps Platform を使って、オンラインと実店舗での買い物を融合する 


私たちは Google Maps Platform を使ってインタラクティブ マップを改善すると共に、顧客にとって便利な機能をさらに強化しました。「クリック & コレクト サービス」を使うと、顧客はオンラインで商品を選び、支払いを済ませ、その後、配達を自宅で待つ時間がない場合は、自分が指定する店舗で、商品を受け取ることができます。さらに「プレイス & リザーブ サービス」を使うと、商品の取り置きを依頼し、代金は受け取りの際に支払うことができます。




2020 年前半に新型コロナウィルスがパンデミック化したことで、英国政府はロックダウンを実施し、Argos の店舗も閉鎖するに至りました。しかし、セインズベリーズ グループ傘下だったことが幸いし、セインズベリーズ のスーパーを商品受け取り拠点として使うことができました。不要不急の外出禁止の期間中は、国民にとって必要な日用品を確実に供給する一方で、なるべく自宅にいることを推奨することが重要でした。そのため、配達が不可能な場合でも、顧客にクリック & コレクト サービスを使ってもらい、オンラインで商品を選び、支払いを済ませば、食料品と一緒に迅速かつ安全に購入した商品を受け取ってもらうことができました。

Argos は、セインズベリーズ グループ 傘下となったことで、顧客の商品受け取り拠点として、これまでになく多数のスーパー マーケットや小規模店舗のネットワークを利用できるようになりました。2021 年の終わりまでには、これらすべての店舗をインタラクティブ マップ上に表示できるようにする予定です。また、Directions API を使って、ウェブサイト訪問者のために、最寄り店舗の位置だけでなく経路案内も表示されるようにしていきます。私たちはすでに Google Maps Platform を使って、多様な面で顧客の利便性を高めてきましたので、今後も引き続き、さらなる利便性向上へと邁進していきます。

Google Maps Platform に関する詳しい情報はこちらをご覧ください。ご質問やフィードバックはページ右上の「お問い合わせ」より承っております。

Posted by 丸山 智康 (Tomoyasu Maruyama) - Google Maps テクニカル アカウントマネージャ

この記事は Developer Advocate の Alex Muramoto の記事 "Meet the Google Maps Platform Developer Experts" を元に翻訳・加筆したものです。詳しくは元記事をご覧ください。


Google Developer Experts (GDEs) は、Google が提供する中で最も良く知られているデベロッパー向けプログラムです。GDE は、世界各地で、さまざまな技術分野を専門とする約 700 名の非 Google 社員を認定しており、それぞれの地域や世界全体のデベロッパー コミュニティに貢献する彼らの取り組みをサポートします。GDE は、ウェブ テクノロジーから Android、Google アシスタント、そして Google Maps Platform まで、幅広いトピック領域に関するエキスパートであり、対面やオンラインで、あらゆるメディアを通じて、知識と熱意を拡散しています。

Google Maps Platform のエキスパートとして認定された GDE は 12 か国以上に存在します。Google と緊密に連携して製品や機能をテストし改善するとともに、あらゆるスキルレベルのデベロッパーたちが、Google Maps Platform の 17 種類の API と SDK から最大の価値を得られるよう助けています。今回、Google Maps Platform 誕生 15 周年を記念して、Google Maps Platform を専門とする GDE 12 名にインタビューしました。Google Maps Platform を熱烈に支持する理由、他のデベロッパーを助けるために Google Maps Platform GDE プログラムに参加した理由を聞きました。以下が彼らの答えです。



安藤 幸央
@yukio_andoh
東京

「地図さえあれば、どこにだって行けます。そして、Google マップは、地図には終わりがないこと、そして地球は丸いのだということを思い出させてくれました!」





ダイアナ ロドリゲス
@cotufa82
アメリカ合衆国 ノースカロライナ州 ダーラム

「ジオ ロケーションが大好きです!これまで、長年にわたって、出発地から目的地までの人の安全な移動、貨物追跡、最近では地図と WebGL を機能統合するプロジェクトなどに従事してきました。コミュニティとつながり、新しくてエキサイティングな方法論を共有するのが大好きで、それを実現するために Google Maps Platform を使うのが楽しくてたまりません!」





カテリナ スクルーンペルー
@psybercity
ギリシャ アテネ

「私は、地図にとても夢中なんです。PTSD(心的外傷後ストレス障害)を抱え、それによる閉所恐怖症と広場恐怖症にも苦しんでいるため、常に、自分の正確な居場所(そして、そこから素早く脱出する方法)を把握していないと気が済まないのです。Google マップに関わるようになったのも、それがきっかけでした。知識を拡散したいという欲求も、結果的なものでした。Google マップによってできる様々な素晴らしい事を発見したため、他の人たちにも、私と同じくらい Google マップを好きになって欲しい、という気持ちに突き動かされているのです。」





アラン ショタール
@AlainChautard
アメリカ合衆国 カリフォルニア州 サクラメント

「長年、Google Maps Platform を使って、強力なデータ視覚化ツールの制作を手掛ける人たちを助けてきました。マッピングした情報によってデータへの新たな視点が生まれ、より良い意思決定の助けとなることに、今も驚き続けています。」





ホセ グテレス
@eusoj
メキシコシティ

「Google Maps Platform を使ってデータを視覚化し、人々が自分の暮らす地域で何が起きているかを見られるようにすることが、私が最も夢中になっている仕事の一つです。」





クリスティーナ シマコーヴァ
@KristiSimakova
ノルウェー オスロ

「様々な投影法、最短距離の見つけ方等、地図というものにどれほど興味深い挑戦が含まれているか、気づいている人は少数です。しかし、誰でも、解決すべき興味深い問題を地図の中に見つけることができるのです。」


ベン ホン
@bencodezen
ワシントン D.C.

「地図は人々に、自分の現在地だけでなく、次に向かう先である目的地についても理解させてくれます。Google Maps Platform を活用して、信じられないほど素晴らしい経験を構築するデベロッパーの仕事を支援するチームの一員であることを、とても誇りに思います。」


ホーミン タム
香港

「あらゆるアプリケーションに地図を導入したかったのと、Google Maps Platform を使いたい他のデベロッパーのために、学習曲線による障壁を無くしたかったのです。」


ジョエル フンベルト ゴメス パレデス
@DezkaReid
メキシコ ベラクルス

「自分の周りの世界を探求し、様々な視点でそれを視覚化するとともに、コミュニティとその方法を共有したいのです。世界中のあらゆる場所で場所で、実に様々な事が起きているからです。」


マーティン クレッペ
@aemkei
ドイツ ハンブルク

「Google Maps API が 15 年前にリリースされて以来、ずっと使ってきました。その後、Ubilabs という会社を創業し、今、多くのクライアント企業がデータを現実世界と連携するのを支援しています。 GDE だからこそ、今後追加される API についての情報を得られるとともに、クライアントからのフィードバックも、 Google にいち早く送り返すことができます。」


アルファ ヤン
@imstand
上海

「Google Maps Platform を使って、個々のデータの背後にある位置次元の意味を探求し、全てのアプリケーションや個人にとって有益かつ可用性あるものにしています。」


スティーブン グレイ
@frogo
ロンドン

「一枚の写真が千の言葉ほど雄弁に語るのであれば、一枚の地図には、さらに桁違いの情報量が含まれています。地図によって、どれほど多くの物語を語ることができるのかは、まさに驚異です。私は 8 年前から GDE を続けていますが、デベロッパーコミュニティが大好きで、地図から最大限の価値を引き出す方法について彼らと話し合うことが大好きです。Google Maps Platform には、赤いピンを表示する以外にも、実に様々な用途や機能があるのです!」

Google Maps Platform に詳しい GDE からヒントやアイデアを受け取りたい方は、彼らをソーシャル メディアでフォローしてください。Google Maps Platform の API や SDK についてより詳しく知りたい方は、こちらのドキュメントをご覧ください。

Google Maps Platform に関する詳しい情報はこちらをご覧ください。ご質問やフィードバックはページ右上の「お問い合わせ」より承っております。

Posted by 丸山 智康 (Tomoyasu Maruyama) - Google Maps テクニカル アカウントマネージャ


この記事は Maps Support Program Manager である Mery Pardo の記事 "15 Google Maps Platform best practices" を元に翻訳・加筆したものです。詳しくは元記事をご覧ください。

次の 15 年もコラボレーションしていけることを願って、Google Maps Platform 利用に関する 15 のベスト プラクティスをまとめました。皆様のプロジェクトや事業の構築に役立てば幸いです。

1.API キーを安全に利用する

API キーのセキュリティを設定することで、Google Maps Platform を安心して利用することができます。作成するすべてのキーに利用目的に応じた制限をかけることを推奨します。API キーのセキュリティ設定方法については、こちらの開発者向けドキュメントをご覧になるか、動画をご覧ください。

2. 予算アラートと割り当てを設定する

次回の請求書を見て仰天することがないよう、予算を設定しておきましょう。予算を設定しても、API 利用が中断されることはありません。設定した閾値を超えて使用するとアラートが送信される仕組みになっています。予算アラートに関するルールを設定して、予算に対する現時点までの支出額を追跡することも可能です。予算管理に関して詳しくは、こちらをご覧ください。

予算を超過しないよう確実にコントロールするもう 1 つの方法は、割り当てを設定することです。割り当て制限とは、プロジェクトが API ごとに作成できるリクエストの数の上限を決めることで、1 日あたり、1 秒あたり、1 秒あたりのユーザー数などのパラメータが設定可能です。詳しくは、このガイドまたは動画をご覧ください。

3. 詳しいドキュメントを参照する

ドキュメントは利用を始める際の情報として役立ちます。よくある質問は、ユーザーから最も頻繁に寄せられる質問に詳しく答えています。Google Maps Platform API や SDK のすべての機能に関して、詳細な説明と参考文献を提供しています。

4. コミュニティ主導のヘルプを活用する

StackOverflow にあるアクティブな Google Maps Platform の開発者コミュニティなど、コミュニティ主導型のサポートも活用できます。ここは、アプリケーションの開発、デバッグ、メンテナンスに関する技術的質問をするのに最適な場所です。

5. 必要な時はエキスパートのサポートを受ける

Google Maps Platform のエキスパートによる顧客サポートを活用することも可能です。ケースを報告するには、Google Cloud Platform Console の Google Maps Platform サポート ページにアクセスし、上部のドロップダウン メニューから、質問に関連性のあるプロジェクトを選択するだけです。平日なら重要度 1 の質問には 1 時間以内の回答、重要度の低い問題には 24 時間以内の回答を期待できます。

6. 自分自身や他の開発者のために問題を報告する

Issue Tracker に、既出および報告済みの問題のリストを作成して更新しています。ここでは、報告済みのバグや、機能へのリクエストが閲覧できると共に、チームが問題を調査できるように新たにコメントを追加できます。まずは Issue Tracker にリクエストを送信してください。サンプルのコードやスクリーン ショットも送信していただけると、問題を特定して速やかに回答するのに役立ちます。

7. Google Maps Platform を改善するため、機能に関するアイデアを共有する

Google Maps Platform を使用していて、より使い易く高品質なものにするための追加機能を思いついた場合、Issue Tracker にアイデアを投稿することができます。

8. プロジェクトに複数のチームメンバーを追加する

プロジェクトに複数のチームメンバーを追加し、Google Cloud Platform の組織リソースを使うことを検討してください。組織変更があっても、常に適切な責任者がアサインされ続けるようになります。

9. Google Maps Platform からのアップデートに登録する

Google Maps Platform の API のアップデート、サービス利用規約の変更のお知らせを受け取る他、ポータルで予定を組んだメンテナンス作業のウィンドウをサポートする等、さまざまなことができます。メール通知グループに登録して、一括窓口からすべてのアップデートを受け取ってください。万一サービス中断が発生した場合、Google Cloud Console の Maps Support にバナー メッセージが表示されるので、リンクをクリックすれば、リアルタイムに問題の状況を見ることができます。

10. Google Maps Platform クレジットを申請する

申請要件を満たす組織は、Google Maps Platform クレジットを申請して取り組みへの助成を得ることができます。非営利、スタートアップ、クライシス レスポンス、報道機関のいずれかに該当する場合、この制度を活用できる可能性があります。申請要件と申請方法についての詳細は、公共プログラムについてのページをご覧ください。

11. ソーシャル メディアでフォローしてチュートリアル、ニュースなどを受け取る

Google Maps Platform の YouTube チャンネルに登録して、役立つチュートリアル、製品デモ、ユーザー投稿のストーリーなどを視聴してください。また、Twitter でフォローして最新ニュースを受け取ってください。

12. Google Maps Platform のオープンソースなユーティリティ ライブラリを使う

SDK と API に加えて、JavaScriptAndroidiOSNode.js など各種 OS 対応のオープンソースなユーティリティ ライブラリを提供しています。これらのライブラリを使えば、マーカー クラスタリング やヒートマップ作成などの役立つ追加機能が利用できます。

13. GitHub をチェックする

Google Maps Platform GitHub org には、最初に役立つ情報の他、便利に使えるオープンソースのサンプル アプリやライブラリが満載です。プル リクエストも大歓迎ですので、私たち同様オープンソースが好きな方からの投稿をお待ちしています!

14. 新機能を試してみる

皆さんが簡単に機能実装できるように、コンスタントに新機能をリリースするとともに、製品の品質改善を図っています。最新ツールと機能を使って、ユーザーのエクスペリエンスを常に改善していきましょう。最新機能について詳しくは、こちらをご覧ください。

15. 実装を最適化する

パフォーマンス改善からコスト削減まで、戦略の完全なリストを見たい方は、最適化ガイドをご覧ください。 現実世界のゲーム構築、ウェブサイトに店舗検索機能を追加、必需品目を提供するプラットフォームを強化する事例など、ベスト プラクティスから目的達成の方法を学べるので、ユーザーにとって快適なサービスを構築することに集中できます。

Google Maps Platform に関する詳しい情報はこちらをご覧ください。ご質問やフィードバックはページ右上の「お問い合わせ」より承っております。

Posted by 丸山 智康 (Tomoyasu Maruyama) - Google Maps テクニカル アカウントマネージャ


Kotlin とコルーチン

Kotlin は、Android API の中核で、こだわりのある最先端の言語です。Kotlin は世界中の Android デベロッパーから高い評価を得ています。その理由として、表現力の高さ、高品質なアプリの記述に役立つこと、既存の Java コードベースを簡単に利用できることなどが挙げられます。現在は、Play ストアのトップ 1000 アプリの 70% 以上で Kotlin が使われています。今年、SlashDataTM は、ここ 2 年間の割合ベースで最も急速に拡大している言語コミュニティが Kotlin であると発表しています。Android 11 ベータ版では、さらに Kotlin を普及させるため、Android の非同期処理方法として、公式にコルーチンを推奨しました。




コルーチンを使うと、非同期コードが書きやすく、読みやすく、理解しやすくなります。コルーチン ライブラリは安定しており、既に多くの Jetpack ライブラリと密接に統合されています。皆さんの中には、RoomLiveDataWorkManager などをお使いの方もいるでしょう。コルーチンをまだ使ったことがない方は、Android Coroutines: How to manage async tasks in Kotlinや、チュートリアル形式で動画や関連ブログ記事・コードラボをまとめて確認できる最新のコルーチン学習 Pathwayコルーチン デベロッパー ガイドをご覧ください。

Kotlin スタートガイド

Android Jetpack の Kotlin ファーストなライブラリから Android Studio の各種ツールとの密接な統合まで、Android と Kotlin は深く関わりあっています。Kotlin を使い始めるのに、今以上に適したタイミングはありません。しかし皆さんからは、チームを説得して Kotlin を採用するのはそう簡単ではない、という声が多く寄せられています。Kotlin は Java プログラミング言語と 100% 互換性があります。しかし、チームのメンバーには、時間を費やして新しい言語を学ぶ価値があるかどうか、他のプロダクトやテクノロジーよりも Kotlin を優先させるべきかどうかわからないという方もいるかもしれません。

こういった質問に答えるため、今週は、Google Home チームによる新しい事例紹介を公開しました。Google Home チームは、この 1 年をかけてすべての新機能開発を Kotlin に移行することで、同期間比で NullPointerException を 33% 削減しました。これは、DuolingoZomatoCash App など、世界中の Android チームから寄せられた声とも一致しています。つまり、Kotlin はチームの大小を問わず、生産性とアプリの品質向上の両面で価値をもたらします。Kotlin の最新の事例紹介やデータについては、新しい Kotlin 事例紹介ページをご覧ください。




初心者の方向けに、Android Basics in Kotlin コースを新設しました。プログラミングを学び始めたばかりの方は、Android Basics コースを受講すれば、関数や変数などのプログラミングの基本的な概念や、Kotlin による「Hello World」から各種 Android アプリの構築方法まで学べます。

Java プログラミング言語と C++

3 年前に Kotlin の公式サポートを発表したときも、Java や C++ の Android デベロッパーがたくさんいることを忘れてはいませんでした。Android 11 リリースでも、この 2 つの言語についてサポートの改善を続けています。Android 11 ベータ版では、OpenJDK 9、10、11 のたくさんの新 API を使って Java ライブラリのサポートをアップグレードしています。さらに、Android Studio 4.0 で Java ライブラリの desugar を導入し、古い Android 端末でもたくさんの新しい Java API を簡単に活用できるようにしました。また、古い端末で java.time のサポートを要望していた皆さんの強い声を受けて、これを実現しました。新しい API の活用方法についての詳しい情報は、Murat Yener の動画、Support for newer Java language APIsをご覧ください。Android 11 では、I/O プリフェッチによってアプリの起動時間をさらに高速化するため、Android ランタイムのアップデートも行っています。




C++ デベロッパーのエクスペリエンスの改善も続いています。Android 11 には、プロファイルに基づいた最適化(PGO)を行うツールの改善や Android Studio 4.0 でのネイティブ依存性管理の向上など、ネイティブ ツールチェーン全般のアップデートが含まれています。

改善が続くツールチェーン

また、Android Studio の D8 および R8 コンパイラに対する集中的な改善も続けています。Android Studio は、アプリのメモリ フットプリントを小さく保ち、ユーザーのインストール率や維持率向上に役立つ R8 shrinker をビルトインでサポートしています。さらに先日、R8 で Kotlin リフレクションを使う Kotlin のライブラリやアプリのサイズ縮小にも対応しました。詳しくは、Mads Ager と Morten Krogh-Jespersen による最新の Medium への投稿をご覧ください。

関連情報・ドキュメント

#11WeeksOfAndroid 動画コンテンツの全プレイリストはこちらから、それぞれの週の詳しい内容はこちらからご覧いただけます。毎週新しい分野を取り上げますのでご期待くださいTwitterYouTube のフォローもお願いします。ご覧いただき、ありがとうございました!


Reviewed by Yuichi Araki - Developer Relations Team and  Hidenori Fujii - Google Play Developer Marketing APAC
Share on Twitter Share on Facebook


2020 年 10 月 8 日(木)に 「Google Cloud Anthos Day」を開催します。 開発エンジニア、インフラ エンジニア、運用エンジニア向けにマイクロ サービス、DevOps、コンテナの利用やクラウドネイティブなアプリケーションの先進事例などを提供するイベントです。

実際に Kubernetes 環境でアプリやサービスの開発を実践されている先進的な企業を迎え、それぞれのアプリケーションのモダナイゼーションや、Kubernetes の事例についてお話しいただきます。

また、深い専門知識をもつ Google Cloud のエンジニアが、Google Kubernetes Engine (GKE) や Anthos をはじめとした Google Cloud Platform を利用し、どのようにアプリやサービスのコンテナ化をするのか、開発、運用の実際について解説します。

開催概要
名 称 : Google Cloud Anthos Day
日 時 : 2020 年 10 月 8 日(木)
会 場 : オンラインにて開催

※ プログラムやスピーカーなどの詳細内容については未定です。
決定次第、イベント WEB サイトにて公開します。

事前お申込みはこちら
以下のリンクよりご覧ください。
https://goo.gle/anthosday1008bg

スピーカー募集
Google Cloud Anthos Day で登壇をご希望の方は、下記よりお申し込みフォームを送信ください。お申し込み後、後日事務局よりご登壇の可否についてご連絡いたします。
締め切り:2020 年 7 月 31 日(金)17:00
https://forms.gle/YZwc2aS7qJeNvL6P6

Posted by Takuo Suzuki - Developer Relations Team

Share on Twitter Share on Facebook



7 月 21 日(火)にトップ 20 選出作品の開発者の皆さまと審査員がオンラインで集い、Google Play | Indie Game Festival 2020 の最終審査を行いました

今年は例年にも増して全体的にクオリティが高く、また、カジュアル ゲームから作家性の高いものまで多様な作品が並びました。そのため、審査およびトップ作品の決定という観点では、簡単に決めることが非常に難しく、さまざまなバックグラウンドを持った審査員全員で長い時間をかけて選考を行いました。

そして本日、Google Play | Indie Games Festival 2020 のトップ 3、トップ 10 ならびに特別賞の受賞作品を審査員からのコメントと合わせて発表いたします。なお、本記事ではスペースの都合上 1 受賞作品につき  1 コメントのみご紹介しますが、トップ 20 各作品への審査員全員のコメントは、後日デベロッパーの皆さんへ個別に直接イベント事務局からお伝えします。

受賞された皆さま、おめでとうございます!

審査員 :

※(五十音順、敬称略)



社外審査員 :


安藤 武博
株式会社シシララ 代表取締役 ゲーム DJ

日高 幸子
ココネ株式会社
執行役員デザイン管掌プロデューサー

田中 泰生
芸者東京株式会社 CEO

特別賞審査員 :


上田 太地【東宝賞審査員】
東宝株式会社 映像本部 映像事業部 部長

根本 真也【avex 賞審査員】
エイベックス・テクノロジーズ株式会社  
Cloud Entertainment 事業グループ  Mobile Game ユニット マネージャー 

細野 修平【ジャンプ+デジタル賞審査員】
株式会社集英社 アプリ漫画雑誌『少年ジャンプ+』編集長

Google 審査員 :


Chongsa Kim (キム チョンサ)
Head of Japan Games Business Development, Google

五十嵐 郁
Business Development Manager, Google


Google Play | Indie Games Festival 2020 トップ 3

※(五十音順、敬称略)





GIGAFALL-ギガフォール- への審査員からのコメント : 田中 泰生
遠藤雅伸さんがゼビウスを作ったときの話を彷彿とさせる世界観から来る、シューティングというものが感じられ、飽きずにプレイし続けることができます。30 年に 1 人くらいの割合で、まさに遠藤さんのような逸材が現れたように思うほどです。すごく好きなゲームです。

メットボーイ! への審査員からのコメント : 五十嵐 郁
子供の頃やっていたゲームを彷彿とさせるレトロな雰囲気のデザインですが、操作感はスマートフォンに最適化されていて中毒性があります。キャラクター、世界観、ゲーム性などどれも魅力的です。ランキングシステムが充実していて、都道府県ごとの順位が見られるのも「燃え要素」の一つです。

忘れないで、おとなになっても。への審査員からのコメント : 日高 幸子
ストーリーもさることながら、グラフィックの効果でゲームの世界にとても引き込まれました。デザインの世界観も、ドットの 3D 化という角ばった表現にも関わらず、柔らかく暖かい表現が印象に残ります。キャラクターも四角いですが、脳内補完がとても捗るわかりやすい設定で感情移入もでき、まだストーリー途中までしかプレイできていませんが、結末まで知りたくなりような引きがあります。

Google Play | Indie Games Festival 2020 トップ 10

※(五十音順、敬称略)





グミシューターへの審査員からのコメント : 日高 幸子
タイムアタックシューティングというよりは、可愛いシューターとエフェクトに、全てのレベルでこだわっているような印象を受けました。色づかい、サウンド エフェクト、アニメーションなどすべてが可愛らしく、グミのような透明感が SF を彷彿とする世界観にマッチしています。
タイトル画面の後から、押しっぱなしで敵を倒し続けられることが爽快です。プレゼンテーション動画を見た後に、「バックジャンプの距離」の重要さに感心しました。

スノーマン・ストーリーへの審査員からのコメント : 日高 幸子
切ない世界観でストーリーがしっかりと読みたくなり、読めば読むほど切ない気分になります。
デザインは、可愛らしいドット絵とコマアニメーションで絶妙なレトロ感があります。アウトラインと陰影感のあるドット打ちで、SFC 世代としては懐かしい気持ちになりました。親しみがあるというところも含めてしっかりと世界に引き込まれる作品です。

Zelle -ツェレ-への審査員からのコメント : 安藤 武博
とても怖かったです。イラストや絵の感じは、もっとうまく描こうと思えば描けたのではないかと感じましたが、わざと歪ませることで怖さを出しているように思います。仕上がり具合の不気味さがこのゲームの怖さを増していて、絵の感じが奇妙で、連載漫画のような面白さがあります。

ホームファイターへの審査員からのコメント : Chongsa Kim (キム チョンサ)
Hap さんの世界観に新たな一面が吹き込まれた作品で、楽しくプレイしました。多くの人が共感できる原体験に着目したのは、本当に素晴らしく、なにより出てくるおもちゃがとても魅力的で懐かしさに溢れており、作家性を強く感じました。操作性もシンプルながらユニーク。駆け引き感もありテンポよく楽しめ、BGM やサウンド エフェクトも世界観と合っていてさすがの一言です。

ボクと博物館への審査員からのコメント : 五十嵐 郁
個人的にあまり博物館というものに馴染みがなかったのですが、完成度高くユーザー フレンドリーなデザインによって、ここまですんなり世界に没入できた体験は驚きでした。恐竜のデザインがかなり正確で魅力的なのも相まって、中毒性が高いです。海外ユーザーからの評価も高く、グローバル共通の感覚に根ざしたゲームだと思います。

モンスタートレーダーへの審査員からのコメント : 田中 泰生
このゲームをプレイした時、良い意味で「ずるいな」と思いました。モンスターを集めると、人間の脳がハックされるのですが、このプレイをやり続けさせるというのはよく考えられています。本作が トップ 20 として選ばれるゲームであるのは、ある意味、プロとしてしっかりと当たるように作られているし、時間を奪われる(ほどハマった)審査員がいたというのも納得です。プロのゲーム作家としてこのようなゲームを作る人を尊敬します。素晴らしいです。

World for Two への審査員からのコメント : 安藤 武博
この作品は、とにかく美しいの一言に尽きるゲームです。世界設定や世界観への没入度が、徐々にではなく、始まった瞬間からとても深いところに入っていきます。最近遊んだゲームの中であまりないプレイ感覚を得られました。RPG は、登場人物と街が増えるだけで製作期間が大幅に延びます。アンドロイドと博士の物語としてストーリー展開を絞るなど、工数を工夫しているように思いつつも、工数を度外視しているような書き込みを行っているところなどが、心の琴線に触れました。


Google Play | Indie Games Festival 2020 avex 賞

※(敬称略)




審査員からのコメント : 根本 真也
ゲームの中の街並みや空など、懐かしさを感じるゲームです。
懐かしさを感じながらも、主人公を取り巻く「謎」がどんどん出てきて、ストーリーに引き込まれていきます。町もコンパクトにまとまっていて、RPG にありがちな人探しや次に進む煩わしさが無くドンドン進めていけます。ストーリーや雰囲気を含めて映像化が想像できる作品です。


Google Play | Indie Games Festival 2020 ジャンプ+デジタル賞

※(敬称略)





審査員からのコメント : 細野 修平
ゲームのシステムが面白く、ついついハマってしまう仕組みになっています。UI がもう少し改善され、とっつきやすい見え方を演出できれば、さらに可能性が広がると思います。さまざまな IP とコラボできそうな立て付けにもワクワクしました。


Google Play | Indie Games Festival 2020 東宝賞

※(敬称略)





審査員からのコメント : 上田 太地
インディーゲームの枠を超えていて、素直に完成度が高いと感じました。ゲームの基礎になる戦略がしっかりしていて面白いので、UI などをさらに磨けば海外でもヒット作になるのではないでしょうか。デザインも古き良きドット絵の RPG のようで感じが良く、また、どこを狙うのかの駆け引きが面白くて領土を広げながら視野を広げるため、達成感、没入感が高いです。ゴジラで作ったら面白そうです。

以上、受賞作品の発表でした。Google Play ストアの Indie Games Festival 2020 特集ページも、受賞作品発表に合わせて更新しました。ぜひこちらもご覧ください。





今年も Google Play | Indie Games Festival を開催できましたのは、本イベントにご興味をお寄せいただいた皆さま、インディーゲーム デベロッパー、プレイヤーコミュニティの皆さま、そしてインディーゲーム業界を盛り上げたいという熱意のもと参加いただいた、社外ならびに特別賞審査員の皆さまのおかげです。ありがとうございました!

Google Play は今後も、インディーゲームをはじめ、あらゆるゲームやアプリを開発する皆さまをさまざまな形で支援していきます。



Posted by Tamao Imura - Developer Marketing Manager, Google Play
Share on Twitter Share on Facebook


2020 年 9 月 24 日(木)に 「Google SaaS Day」を開催します。 本セミナーは、SaaS 事業者や、オンラインやアプリを活用したサブスクリプション型のビジネスを展開する企業のプロダクト開発に携わる方・マーケティングに携わる方が対象となっております。

近年、日本においても SaaS や サブスクリプション型ビジネス が急速に拡大し、参入企業数も増え、競争が厳しさを増しています。Google Cloud Japan と Google Japan は、テクノロジーでの差別化は勿論のこと、マーケティングによる差別化を両輪で回すことの重要性を提唱しています。

そこで、Google Cloud Japan と Google Japan が "One Google" として、クラウドとデジタル マーケティングを活用してビジネスの成長を支援するため、先進的な取り組みをされている顧客企業を迎え、先進的なアプリケーション開発の方法、クラウドを活用したデータの統合的な分析、機械学習の活用による経営判断の高度化、自社にとってライフタイム バリュー(LTV)の高い顧客、ユーザーと深くエンゲージする手法などについて共有する場をご提供します。

開催概要
名 称 : Google SaaS Day
日 時 : 2020 年 9 月 24 日(木)
会 場 : オンラインにて開催

※ プログラムやスピーカーなどの詳細内容については未定です。
決定次第、イベント WEB サイトにて公開します。

事前お申込みはこちら
以下のリンクよりご覧ください。
https://goo.gle/saasday924bg

スピーカー募集
Google Cloud SaaS Day で登壇をご希望の方は、下記よりお申し込みフォームを送信ください。お申し込み後、後日事務局よりご登壇の可否についてご連絡いたします。
締め切り : 2020 年 7 月 31 日(金)17:00
https://forms.gle/5zzufQrTHNS7a67d6



Posted by Takuo Suzuki - Developer Relations Team

Share on Twitter Share on Facebook



ロボホンは、二足歩行が可能なモバイルロボットで、音声をメインのインターフェースとしています。また、OS として Android を搭載しており、アプリの追加でできることが増えていくロボットです。

発売当初は、一般のお客様向けに発売しておりましたが、現在は企業や自治体など法人用途でもご活用頂いております。その用途の 1 つが「プログラミング・AI 教育」です。

本記事では、TensorFlow Lite を活用したロボホンの教育ソリューションについてご紹介いたします。

シャープは、プログラミング教育ソリューションとして、「ロブリック」というアプリケーションを販売しています。これは Google Blockly をベースにしたブロックプログラミングのアプリケーションで、ブロックを組み合わせると、ロボホンが動いたり話したりします。2018 年 6 月の販売開始から多くの自治体にご採用頂き、主に小学校のプログラミング教育にご活用いただいております。

これまで「プログラミング的思考」の育成に向けたソリューション提供に取り組んで参りましたが、これからの「AI-Ready な社会」に向けて、AI 人材の育成に取り組んでいきたいと考え、AI 教育ソリューションを開発し、2020 年 2 月に実証実験を実施致しました。当ソリューションは、音声認識、対話生成、画像認識などの AI 技術を実体のあるロボホンを通して学習することで、子どもたちに AI に対する興味関心を持たせることを目的としたソリューションです。

この AI 教育ソリューションの重要な機能の 1 つが、機械学習を体感してもらうための TensorFlow Lite を使った画像分類の機能です。子どもたちがロボホンのカメラを使って、ロボホンに 5 つまでの被写体を登録して覚えてもらうと、ロボホンがそれぞれの被写体を見分けることができるようになります。

ロボホンとパンダを見分けるプログラム例


この機能を通して、すでに社会に実装されている機械学習による画像認識の仕組みを説明し、子どもたちが今後この仕組みをどう活用していくか考えるきっかけを与えることが目的です。

授業としての画像認識学習の問題点
AIによる画像認識を生徒に体験してもらうには、データセットを 0 からトレーニングをしたり、ある程度出来上がっているものに追加トレーニングしたりする方法が考えられます。しかし、授業でトレーニングをしようとすると、
  • 十分な数のトレーニング用の画像データを準備するのが難しい
  • 準備できたとしてもそのデータを学習させるための時間が必要になる
という問題が発生します。

また、ロボホンという機械学習にとっては強力とは言えないハードウェアを利用するため、データ学習に必要な時間がさらに長くなってしまうという問題もあります。



トレーニング済みデータセットの利用
そこで、授業中の学習時には、事前トレーニングや最適化されたモデルを使って画像識別をすることで、ロボホンのカメラでとらえた画像の特徴ベクトルを指定の枚数分保存しておき、評価時には、k 近傍法を使ってどの保存済みデータに最も近いかを取得する方法で授業という限られた時間の中でトレーニングの過程や機械学習を体験できるようにしました。

今回利用した事前トレーニング済みデータセットは、量子化モデルの Mobilenet_V1_1.0_224_quant
になります。これは、
  • Android アプリで契約者のロボホンに配信する
  • クラウドを利用せず、ロボホン内で処理する
という要件で開発をしていたため、モデルサイズとパフォーマンスの方に重点を置いてこのデータセットを選択しました。

画像識別のサンプル
今回作成したアプリでは、 

このような画像の場合、
[wood rabbit (34.1%), hare (17.6%), fox squirrel (17.6%)]
のように画像識別されます。

また、

このような画像の場合は、
[tiger cat (80.0%), tiger (11.0%), tabby (5.5%)]
のように画像が識別されます。



学習時には、これらの識別後の情報をそれぞれ、指定された枚数ずつ、保持しておきます。
評価時には、ロボホンのカメラからの入力画像を、学習時と同じように画像識別し、学習時に保存したどの画像に最も近いかを近傍法を利用して取得するようにしています。

TensorFlow Lite の採用
TensorFlow Lite を採用した理由としては、さまざまな環境上で動かすことができ、ロボホンで利用している Android もサポートされていたこと、また、サンプルが用意されており、使い方なども多数インターネット上で情報を得ることができるなど、とても使いやすいツールと感じたからです。

授業での使いやすさ
もともとは、ロブリックとは別のアプリとして開発していましたが、
  • 別アプリとした場合、操作方法を覚え直す必要がある
  • プログラミング教育の一連の流れとしてブロックプログラミングの発展形として AI 教育をスムーズに導入できる
  • 機械学習用のブロックとその他のブロックを組み合わせることでより楽しく学習することができる
などのメリットを鑑みてロブリック用のブロックとして取り込みことにしました。
また、機械学習用のブロックは、
「X 番を Y 回勉強する」「X 番を忘れる」「AI 用のカメラを ON/OFF にする」「X 番と Z 思った」(まあまあ思った、とても思った、など、自信の強さをパラメータとする)
というように子供でもわかり易い言葉を使い、カメラの画像をロボホンの背中の画面だけでなくブラウザ上にも表示することで、画面を見ながらカメラの画角を調整できるなど、シンプルで直感的な UI を目指しました。

より多くの子どもたちに AI 教育ソリューションを
前述の通り、2020 年 2 月に東京都小金井市立前原小学校 5 年生にて、AI 教育ソリューションの実証授業をしました。

子どもたちは、思い思いの画像を登録し、その画像を見つけると、オリジナリティあふれるセリフをロボホンが話すプログラムを作っていました。実体のあるロボットを通して、プログラムが体感できることに対して、子どもたちが目を輝かせながら取り組んでいたことがとても印象的でしたし、トライアンドエラーの過程で、自ら気付き、修正していく姿に未来への希望を感じました。

私たちシャープはこれからこのソリューションをより多くの子どもたちに体験してもらえるよう準備を進めています。今後も未来を生きる子どもたちに向け、教育分野への取り組みを進めて参ります。




Posted by Khanh LeViet - Developer Relations Team and Takuo Suzuki - Developer Relations Team

Share on Twitter Share on Facebook


Cloud OnAir は、Google Cloud の製品についてわかりやすく解説し、 最新の情報などいち早く皆様にお伝えするオンライン番組です。


この夏の Cloud OnAir では、オンラインで開催中の Google Cloud Next ’20: OnAir について、Google Developer Expert の方々をゲストにお招きして深堀していきます。Google Cloud Next ’20: OnAir での重要なトピックやおすすめのセッション、Google Cloud Platform の最新情報などを、日本のデベロッパーならではの独自目線で熱く語っていただきます。


7 月 30 日 〜 9 月 10 日 全 6 回を放送予定!


お申し込みはこちら




Posted by Takuo Suzuki - Developer Relations Team
Share on Twitter Share on Facebook


このブログ投稿は、 Android 11 に関する重要な内容を毎週取り上げる #11WeeksOfAndroid シリーズの一部です。第 4 週は、Android 11 の互換性がテーマです。

大事なお知らせ


Android 11 Beta 2 がユーザーやデベロッパーの皆さんに向けて公開され、Android 11 は 2020 年第 3 四半期に予定されている最終リリースに向けて引き続き急速に開発が行われています。デベロッパーの皆さんにとっては、今がアプリの準備をすべきタイミングです。その点に留意して、アプリの互換性テストを始めたり Android 11 の新しいツールを使ったりする際に役立つ関連情報をお知らせします。


Platform Stability


Android 11 では、Platform Stability と呼ばれる新しいリリース マイルストーンを追加しました。これは、デベロッパーに対して、すべての API とシステム動作が確定したことを明確に示すためのものです。Android 11 Beta 2 で、Android 11 は Platform Stability に到達しました。これは、最終の互換性テストとアップデートを行う絶好のタイミングです。Android 11 Beta 2 リリースと Platform Stability のブログ記事で、このマイルストーンの意味を詳しく解説しています。また、Android 11 のスケジュールでもこのマイルストーンについて説明しています。




 アプリの互換性


Android 11 Beta 2 リリースと Platform Stability のブログ記事でもお伝えしたように、Android 11 の互換性とは、ユーザーが期待するアプリの機能がすべて Android 11 で正常に動作すると確認されたことを意味します。確認を始めるにあたって必要なものは、アプリと、Android 11 を実行する端末かエミュレータだけです。

アプリの互換性確認の目的は、Android 11 でアプリをテストし、アプリの機能を維持するために最低限の変更を行い、Android 11 の最終リリースまでに互換性を確保したバージョンをユーザーに公開することです。ほとんどの場合、targetSdkVersion を変更したり、新しい API でコンパイルしたりしなくても対応できるはずです。

アプリやゲームだけでなく、SDK やライブラリ、ツール、フレームワークを開発している皆さんにとっても、今が Android 11 でテストを行い、互換性のあるバージョンをリリースすべきタイミングです。そうしないと、皆さんのプロダクトを使っているアプリやゲームのデベロッパーの作業が、Android 11 と互換性があるバージョンを入手できるまで、滞ってしまう可能性があります。

アプリの互換性の詳細については、移行ガイドやアプリに影響する可能性がある動作の変更点リストをご覧ください。


アプリをテストするためのツール



互換性テストを始めるにあたって活用できるいくつかの新しいツールを取り上げました。ブログ投稿「Testing app compatibility in Android 11」で詳しく説明しています。

1 つ目の互換性フレームワークは、アプリに影響する可能性があるプラットフォームの変更点を管理する際に役立つ新機能です。これにより、変更点に関する標準メタデータ、targetSdkVersion に基づく標準変更条件、アプリに影響する変更点を特定する際に役立つ標準ログ出力が提供されます。デバッグ可能なアプリで開発者向けオプション、[Settings]、adb のいずれかを使用して、動作の変更を切り替えることができます。この機能は、変更点を切り出して個別にテストする際に役立ちます。

端末間や API レベル間のリグレッションを切り分けるのは、時間がかかる複雑な作業になる可能性があります。Android Studio 4.2 では、複数の物理端末や仮想端末でインスツルメンテーション テストを並列実行し、すべての結果を 1 つのテスト マトリクスで比較できます。そのため、短時間に多くの端末でテストを行って問題を早期に発見できます。

Android Generic System Image(GSI)は、Android 11 のテストを多様な端末に展開する際にうってつけです。これを使い始める際に役立つ Android GSI コードラボの更新版をリリースしました。GSI を使うと、Android 9 以降のロックフリーな Treble 互換端末に、Android 11 の汎用バージョンをインストールできます。これには、Pixel 端末だけでなく、世界中の Android エコシステムで使われている多くの人気端末も含まれます。



開発者向けオプションのアプリの互換性切り替え


エコシステムのアップデートとアプリの互換性


  • Accelerating Android Updates」というブログ投稿では、Android のアップデート可能アーキテクチャを拡大することで最新 OS の普及率を高める継続的な取り組みについて考察しています。Project Treble や Google Play システム アップデートなどのテクノロジーにより、短時間で多くの端末にアップデートを配信できるようになり、エコシステム全体の整合性が増しています。
  • Project Treble で行ってきた作業で、新規端末と既存端末への Android の新バージョンの導入が劇的に高速化、簡素化されています。さらに、端末メーカーが独自のデベロッパー プレビュー プログラムを実行できるようになり、場合によっては Android 自体の開発が進む中で同時進行させることもできます。こういったプログラムは、端末メーカーが OS のアップデートを短時間で準備し、早い段階で Android デベロッパー コミュニティと協力し合うために役立ちます。
  • Google Play システム アップデート(Project Mainline)の目的は、Android エコシステムのさまざまな端末のコア OS コンポーネントを直接アップデートし、エコシステム全体のセキュリティ、プライバシー、整合性を向上させることです。Android 11 では、アップデート可能なモジュールを追加し、アクセス許可、メディア、NNAPI などのアプリに面する重要な領域の動作を標準化しています。

その他の改善には、Generic Kernel Image(GKI)と Virtual A/B のほか、シームレスなアップデートとストレージ要件の縮小によるメリットを組み合わせた新しい OTA(無線)アップデート メカニズムなどがあります。これらの機能を Android 11 端末に導入するため、端末メーカーと緊密に連携して作業を進めています。

今後これらの機能は、さまざまなプラットフォームのバージョンや端末に対してアプリの互換性を確保するための開発およびテストのコスト削減に役立つことでしょう。

Excelliance Tech の事例



アプリの互換性に関する予期しない問題が起きる一般的な理由は、アプリやゲームが Android の非 SDK インターフェースを使っているからです。Android 11 では、アプリでパブリック API の使用に移行してもらうための長期的な作業を続けています。

Excelliance Tech は最近、開発している LeBian SDK で、非 SDK インターフェースから安定した公式 API に移行しました。Android チームとの共同作業の成果として、リソース読み込み用の新しいパブリック API も誕生しました。Android 11 ですべてのデベロッパーが使うことができる ResourcesLoader API です。

Excelliance Tech の事例は、こちらのブログ投稿でご覧いただけます。



Excelliance Tech チーム



関連動画



Android 11 の互換性について計画を立ててアプリをテストする際に役立つ 3 つの動画を投稿しました。プレイリストはこちらからご覧ください。

以下の動画は、Android の年間リリース スケジュールと、それぞれのフェーズのデベロッパーにとっての意味を簡単にまとめてお話しています。



次の動画は、Android 11 のデベロッパーがテストやデバッグに使える新機能である互換性フレームワークを紹介しています。このフレームワークの概要、役立つ理由、使い方を説明しています。具体例を通して、特定の変更点を有効化する方法、アプリでその変更点をテストする方法、ログ出力を調べてアプリに影響した変更点を特定する方法についてお伝えしています。



最後は、複数の端末で同時にインスツルメンテーション テストを実行する Android Studio の新機能についての動画です。Android Studio はアプリの互換性テストを行う最適なツールです。端末セットの設定方法、端末でテストを実行する方法、そしてテスト マトリックスに移動して結果の比較と分析を行う方法を説明しています。




Android 11 の互換性についての情報をチュートリアルで確認する


Android 11 の互換性について概要を確認したい方は、チュートリアル形式で動画や関連ブログ記事・コードラボをまとめて確認できる Android 11 の互換性 Pathway をご覧ください。Pathway は、モジュールを順番に完了する形式になっており、最後にはクイズをご用意しています。クイズに合格した方には、もれなくバーチャル バッジが贈られます。このバッジは、Google Developer プロフィールに保存されます。ぜひ Android 11 互換性の限定バッジを手に入れてください。


#11WeeksOfAndroid 第 4 週 Android 11 の互換性のまとめ


私たちは Android をリリースするたびに、アプリの互換性テストの影響を少なくするための作業を行っています。Android 11 では、互換性テストを簡単にするために、新しいプロセスやデベロッパー ツール、リリース マイルストーンを追加しました。今週提供したリソースが互換性テストを始めるうえで役立つことを期待しています。デベロッパーの皆さんのために、ポイントをまとめます。


  1. Android 11 は Platform Stability に到達し、アプリに面するすべての API と動作が確定しました。
  2. アプリやゲームのデベロッパーの方は、すぐに互換性テストを始め、今年の Android 11 最終リリースまでにアップデートをリリースする必要があります。
  3. SDK・ライブラリやツールの開発者は、それらを利用する開発者の作業を止めないように、できるだけ早くテストを完了して互換性を確保したバージョンをリリースする必要があります。
  4. 便利な新しいツールや関連情報・ドキュメントもご用意しています。以下のハイライトをご覧ください。さらに詳しい内容は、developer.android.com/11 で確認できます。


関連情報・ドキュメント



#11WeeksOfAndroid 動画コンテンツの全プレイリストはこちらからご覧いただけます。毎週新しい分野を取り上げますのでご期待くださいTwitterYouTube のフォローもお願いします。以下は、Android 11 の互換性の週で紹介した関連情報・ドキュメントへのリンクです。

ブログ投稿




動画




コードラボ




チュートリアル




Reddit AMA



  • Android プラットフォーム チーム AMA


関連ドキュメント




編集部注:日本で 8 月 4 日 に Android Studio 4.0 と Jetpack のオンラインイベントを行います



8 月 4 日(火)16 時から、2020 年 6 月に リリースした Android Studio の安定版 4.0 に関するノウハウや、新しいデバッガーの利用、ならびに Jetpack の最新情報をスペシャリストがオンラインでお伝えする Android 11 Meetups 第 4 回目を日本(日本語)で開催します。Android 11 Meetups は、6 月 23 日  から 9 月 29 日にかけて、計 8 回に渡って開催されている、アプリ開発企業のエンジニアやプロダクト担当の皆さまを主な対象としたオンラインセミナーシリーズです。ぜひこちらのウェブサイトで登録・参加(視聴)ください。


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

Share on Twitter Share on Facebook