日本のデベロッパーの方へ Google Play や Android に関する最新情報をお届け
Android 開発の最新情報をご紹介する「Now in Android」#27
2020年10月22日木曜日
この記事は Chet Haase による Android Developers - Medium の記事 "
Now in Android #27
" を元に翻訳・加筆したものです。詳しくは元記事をご覧ください。
Android 開発の最新ニュースやトピックをご紹介する Now in Android。今回は Android Studio 4.1、MAD Skills シリーズ、Kotlin Vocabulary の追加、Play 請求サービスのサブスクリプション、生体認証、MotionLayout タグ、最近公開されたブログ記事・動画・関連ドキュメント、ポッドキャスト エピソードをご紹介します。
Android Studio 4.1: 現在安定版
先日、Android Studio 4.1 の
安定版ビルド
がリリースされました。このリリースについては、安定版前のリリースが進んでいるときのエピソードでもお伝えしましたが、いくつかの注目機能について振り返ってみましょう。
Database Inspector:
IDE からオンデバイス データベースの状態を確認したり、変更を行ったりできます(Jetpack Room または直接 SQLite クエリを使います)。
新しいプロジェクト テンプレート:
マテリアル デザイン コンポーネントを使うようにアップデートされています。
統合エミュレータ ウィンドウ:
別のウィンドウでなく、IDE 内で直接エミュレータを実行できます。「統合」せずして統合開発環境と呼ぶことはできません。
Dagger/Hilt コード ナビゲーション:
ガター部分にアクションが追加され、そこをクリックすると、コードの Dagger や Hilt の型について詳しく確認できます。
ML モデルのバインディング:
Studio がインポートした TensorFlow Lite モデル用のコードを生成してくれるので、アプリのコードから簡単にモデルを利用できます。
このリリースの詳細は、
Yacine Rezgui
の動画や
Scott Swarthout のブログ記事(英語)
、
Android Studio リリースノート
で確認できます。または、
ダウンロード
してお試しください。
新連載シリーズ MAD Skills
M
odern
A
ndroid
D
evelopment(最先端の Android 開発)について取り上げる、 MAD Skills という新シリーズを立ち上げました。このシリーズでは、言語(Kotlin)、ツール、(Android Studio)、API(Jetpack のサブセット)、配信(Android App Bundle)などのさまざまな MAD について紹介する動画やブログ記事を公開します。数週間ごとに、具体的なトピックを扱うミニシリーズがスタートする予定です。
10月第 2 週から、Navigation コンポーネントについてのシリーズをお届けします。第 1 回のエピソードでは、私が
API やツールの概要
についてお話しします。第 2 回のエピソードでは、
ダイアログを開く
方法を紹介します。10 月第 3 週は、SafeArgs とディープリンクを扱うエピソードを投稿する予定です。
これまでに投稿された動画は
MAD Skills プレイリスト(英語)
で確認できます。毎週新しいエピソードが投稿されるので、随時こちらをご覧ください。いつまで続くのかと言うと… まだ予定は未定です。ただ、取り上げるべき技術コンテンツはたくさんあるので、しばらく続くことになるでしょう。
記事形式でコンテンツを読みたい方のために、記事で説明していない内容について取り上げた動画を公開するときは、
Medium の Android Developers
にも記事を投稿します。今後の MAD 記事にご注目ください。
Kotlin Vocabulary
好評の Kotlin Vocabulary シリーズに、いくつかの新しいエピソードが追加されました。
デフォルト引数
Florina Muntenescu
が
ブログ記事(英語)
と
動画
を投稿し、Kotlin の デフォルト引数 の仕組みについて解説しています。デフォルト引数は、Kotlin の強力な言語機能です。オーバーロード関数の数を減らし(4 つではなく 1 つのコンストラクタだけで
View.java
を実現できることを想像してみてください)、一般的に妥当なデフォルト値が存在する場合にコードを簡単に呼び出せるようになります。
by の活用: Kotlin の委譲
Murat Yener
も
ブログ記事(英語)
と
動画
を投稿し、Kotlin の 委譲機能について説明しています。委譲は、別のコードに処理を渡すときに使います。この記事では、 クラス委譲 (クラスの処理を完全に別のクラスに委ねる場合)と プロパティ委譲 (プロパティの基本的な get/set 機能を別のオブジェクトに委ねる場合)の例を示しています。
Kotlin は、インフラと言語キーワード(by)だけでなく、いくつかの組み込み委譲機能(by lazy など)も提供しています。しかし、記事で取り上げているのは、「仕組み」の段階までとなっています。組み込みの委譲に関する説明は、今後の記事でご紹介します。
Play 請求サービスのサブスクリプション
定期購入者の獲得と維持に関して、
Caren Chang
が Play 請求サービスの新しい機能と要件をサポートする方法を
説明する記事を投稿しました(英語)
。
この変更は、11 月 1 日より適用されます。
アプリで定期購入商品を販売している方は、対応が必要になる可能性がある点について確認しておきましょう。
編集部注:定期購入プラットフォームに関するすべての変更点について、
日本語で解説しています
。
Google Play で定期購入者を獲得して維持するための新機能と Play Billing Library バージョン 3
必ず要件をご確認の上、対応期限である 2020 年 11 月 1 日までに各機能のテストをお済ませください。
生体認証
Isai Damier
が Android の生体認証に関する 2 回シリーズの記事を投稿しました。
パート 1 では、生体認証の組み込みを検討すべき理由について説明しています。たとえば、ユーザーがアプリに頻繁にログインしなければならない場合、生体認証を提供すると必要な操作をすばやく簡単に行えます。インストール後に一度だけログインすればいいアプリなら、(おそらくパスワードによるログインは面倒なので)生体認証は従来のパスワードによるログインに比べて、ユーザーのセキュリティを向上させつつ便利なログインの仕組みを提供する方法になるかもしれません。
Android の生体認証 — パート 1(英語)
この記事では、BiometricPrompt API(
AndroidX Biometric ライブラリ
の一部)を使って認証を扱う方法もご紹介しています。
Android の生体認証 — パート 2(英語)
パート 2 では、いくつかの API の使用方法を詳しく説明するとともに、ユーザー認証の推奨デザインについて解説します。
編集部注:Android 11 の画面ロックと生体認証を含む認証機能については「
Android 11 のロック画面と認証の改善
」で詳しくご説明しています。
Motion Tags: KeyPosition
Motion Tags シリーズに、KeyPosition について説明したエピソードを投稿しました。KeyPosition タグは、MotionLayout アニメーションのレイアウト情報を指定します。これまでのエピソードは、
Motion Tags プレイリスト
からご覧ください。
ADB (Android Developers Backstage) ポッドキャスト 新エピソード
Android Developers Backstage に新しいエピソードが投稿されています。以下のリンクまたはお気に入りのポッドキャスト クライアントでご確認ください。
ADB 150: Aaptly Named
Tor Norbye
と
Romain Guy
、そして私が、フレームワーク チームの Ryan Mitchell から、aapt2 ツールの動作の仕組みなど、リソースについて話を聞きました。
またお会いしましょう
今回は以上です。次回も Android デベロッパーの世界の最新アップデートをお届けします。お楽しみに。
Reviewed by
Takeshi Hagikura - Developer Relations Team
and Hidenori Fujii - Google Play Developer Marketing APAC
Android 開発の最新情報をご紹介する「Now in Android」#26
2020年10月9日金曜日
この記事は Chet Haase による Android Developers - Medium の記事 "
Now in Android #26
" を元に翻訳・加筆したものです。詳しくは元記事をご覧ください。
Android 開発の最新ニュースやトピックをご紹介する Now in Android。今回は ターゲット API 要件、AndroidX、Android Basics コース Unit 2、Play Store と Billing の記事、ゲーム デベロッパー向けのテクスチャ マッピング、RecyclerView、パフォーマンス、認証、最近公開されたブログ記事・動画・関連ドキュメント、ポッドキャスト エピソードをご紹介します。
アプリのアップデートでターゲット API 29 以降が必須に
11 月 2 日より、
すべてのアプリのアップデートは API レベル 29 以降をターゲットにする必要があります。
ほとんどのアプリは既にこのアップデートを完了されていますが、まだ未対応の方は今が絶好のタイミングです。
詳しくは、
Google Play のターゲット SDK 要件を満たす方法についてのガイド
をご覧ください。
AndroidX リリース
AndroidX
では、いつものように
アルファ版
、
ベータ版
、
RC 版
でいくつかの中間バージョンのアップデートが行われています。しかし、
安定版
がリリースされたライブラリもありますのでご活用ください。
Media 1.2.0
: このリリースでは、AudioAttributesCompat のサポートの改善、
Mediarouter
を使う場合のボリューム コントロールのサポート、
Media2
との相互運用性に関する修正が行われています。
Exif 1.3.0
: このバージョンでは、いくつかの重要なバグ(メモリ不足状態を引き起こすものなど)の修正に加え、WebP ファイルに EXIF メタデータを書き込む機能が追加されています。
コース: Android Basics in Kotlin
Android Basics in Kotlin
コースの
Unit 2
が公開されました。このコースを受講すると、開発経験がなくても、無料でソフトウェア開発、Android、Kotlin のすべてを同じコースで学ぶことができます。
Unit 1: Kotlin Basics for Android
では、クラス、オブジェクト、条件文などの基礎的内容や、Android アプリでイメージやテキストを使う方法について解説します。
Unit 2: Layouts
では、XML レイアウト、マテリアル デザイン、ユーザーの入力の受け取り、RecyclerView の使用など、UI の考え方を紹介します。これらの機能などを搭載した 2 種類のアプリを作ります。
Google Play の最新情報と関連記事
Google Play についての最新記事が公開されました。デベロッパーの皆さんは、ぜひご確認ください。
Google Play ストアと課金システム
Google Play ストアを使って配信を行っているアプリ、ゲームのデベロッパーに向けて、Sameer Samat (Vice President、 Product Management)が Play ストアを利用する際の要件やポリシーを改めてまとめた記事を公開しました。たとえば、Play ストアや他のアプリストアでの配信、デジタル商品のアプリ内購入に Google Play の課金システム を使う際の留意点などについて説明しています。
デベロッパーからのフィードバックを受け、Google Play をより良くします
また、Google Play の課金システムやそれに関連したポリシーについてさらに詳しくご理解いただけるよう、Mrinalini Loew がよくいただく質問とそれらに対する回答を公開しました。
Google Play の支払いに関するよくある質問にお答えします
さらに Google Play の課金システムの実装方法について詳しく知りたい方は、
Caren Chang
のシリーズ記事をお読みください。(英語)
Working with Google Play Billing — Part 1
Working with Google Play Billing — Part 2
Google Play Console
Play Console を使っている方なら、新しいバージョンのコンソールを見たことがあるはずです。新しい Play コンソールは、
6 月にベータ版を公開しました
。一般的なベータ版プロダクトと同じように(少なくとも理想どおりに進めば)、Play Console は今から 1 か月後の 11 月 2 日にベータ版が 終了し、安定版がリリースされます。そして古い Play Console は使えなくなり、すべてのユーザーが新しいバージョンを使うことになります。
この新しいバージョンでは、大幅に改善された UI や操作(完全に再設計されています)など、さまざまな機能が提供されます。
リリース前に新しいコンソールを確認したい方は、
play.google.com/console
にアクセスしてみてください。または、11 月 2 日に 新しい コンソールが唯一 の選択肢となるまで、ハラハラしながら待ってから使い始めるのもいいかもしれません。
2020 年 11 月 2 日より全デベロッパーに新しい Google Play Console を適用します
ゲーム デベロッパーの皆さんへ
先日、Android 向けのゲームを開発しているデベロッパーのためのコンテンツを投稿しました。
テクスチャ圧縮フォーマットのターゲット指定
テクスチャ圧縮はゲームに役立つ技術です。異なるフォーマットを使い分けることで、ダウンロードやランタイムのサイズを縮小しつつ、実行時のパフォーマンスを向上させることができます。ただし、すべての端末がすべてのテクスチャ フォーマットをサポートしているわけではありません。では、デベロッパーはどうすればいいでしょうか。
Play Asset Delivery
を使うと、App Bundle で複数の種類のテクスチャ フォーマットを使えるようになり、ユーザーの端末の機能に応じて適切なバージョンがダウンロードされます。
Daniel Galpin
による
こちらの記事
では、テクスチャ圧縮の簡単な概要と、新しいゲーム配信機能のメリットを活用する方法について詳しく説明しています。動画で見たい方のために、
Daniel
の
Game Dev Show
でも同じ内容を紹介しています。
GPU Inspector のテクスチャ カウンター
テクスチャとゲーム開発について、Francesco Carucci が
Game Dev Show
に動画を投稿しました。この動画では、新しい Android GPU Inspector ツールの機能を使って、テクスチャの利用に関連したパフォーマンスの問題の調査方法を紹介しています。
テクスチャはゲームが描画するグラフィックの主役なので、パフォーマンスの問題でも主役になる場合があります。この動画では、GPU Inspector を使う例と、帯域幅やキャッシュ、フィルタリングに関する問題について、またこれらの問題がこのツールでどのように明らかになるのかについて説明しています。
その他の最近公開されたブログ記事と動画
RecyclerView の基本
Meghan Mehta
が RecyclerView についての
記事を投稿しました
。RecyclerView については、
RecyclerView ガイド
や、
Kotlin
と
Java
両方のサンプル、そしてもちろん
関連ドキュメント
など、既に多数の情報があります。しかし、テキストの項目やシンプルな概要などを表示する基本的な RecyclerView を作るだけなら、この記事がぴったりかもしれません。また、ベースとなるサンプルコードも確認したい方は、この記事の
GitHub プロジェクト
もご覧ください。
パフォーマンスに関する誤解を解消する
Calin Juravle
は、Android アプリのパフォーマンスを改善する方法について、いくつかの誤解を取り上げる(そして解消する)記事を公開しました。たとえば、Kotlin と Java のアプリのサイズや起動時間の比較、フィールドと getter/setter の比較、ラムダと内部クラスの比較、オブジェクト プールの利用について解説しています。詳しくは
記事をご覧ください
。
この記事の中で一番重要なポイントをお伝えしましょう。それは、どの最適化に時間をかけるかを決める前に、アプリのプロファイリングを行うこと、つまりデバッグ版でないものを使うことです。アプリのプロファイリングを先に行わないと、ユーザーの時間を節約するのではなく、自分の時間を無駄にすることになりかねません。
セキュリティと認証
Android セキュリティ チームは、
さまざまな階層の認証について説明した記事
を投稿しました。さらに、Android P、Android 10、Android 11 に導入されているバイオメトリック API についても詳しく説明しています。
またお会いしましょう
今回は以上です。次回も Android デベロッパーの世界の最新アップデートをお届けします。お楽しみに。
Reviewed by
Yuichi Araki - Developer Relations Team
and Hidenori Fujii - Google Play Developer Marketing APAC
ラベル
#11WeeksOfAndroid
18
#Android12
1
#AndroidDevJourney
1
#androiddevsummit
5
#GoogleIO
19
#WeArePlay
9
12l
1
5 star apps
1
Ads
1
advertising
1
AGDE
1
AGDK
2
AGI
1
AI
3
AI Announcements beginner Explore Generative AI
1
AI Announcements beginner Explore Generative AI、
1
Android
110
Android 10
1
Android 11
1
Android 12 Beta 5
1
Android 12L
1
Android 13
3
Android 14
7
Android 14 Beta 4
1
Android 14 ベータ版4
1
Android 15
4
Android App Development
42
Android app excellence
1
Android Architecture
1
Android Architecture Components
1
Android Auto
4
Android Automotive OS
1
Android Dev
2
Android Dev Summit
1
Android Dev Summit 2021
1
Android Developer
31
Android Developers
49
Android Development
8
Android Development Tools
1
Android fitness
1
Android for cars
5
Android Game Development Kit
1
Android Games
2
Android health
3
Android Jetpack
10
Android O
1
Android photo picker
1
Android SDK
1
Android SDK Upgrade Assistant
1
android security
7
Android Stu
1
Android Studio
35
Android Studio Bumblebee
1
Android Studio Chipmunk
1
Android Studio Dolphin
2
Android Studio Dolphin Beta
1
Android Studio Electric Eel Canary
1
Android Studio Giraffe
1
Android Systemui
1
Android Tools
2
Android TV
4
Android TV OS
1
Android10
1
Android11
19
Android12
13
android13
6
Android14
2
Android15
2
Android9
1
androidbasics
1
AndroidDev
1
AndroidDevChallenge
4
AndroidGoogle Play
1
androidstudio
3
AndroidX
4
announcement
3
Announcements
12
aosp
1
APIs
1
App
2
App Bundle
2
app development
3
app lifecycle
1
app performance
1
App quality
3
App Security
1
appexcellence
2
appexcellencecasestudy
1
appquality
2
apps
2
AppWidgets
1
Architecture
2
Assistant
1
attestation
1
Authentication
3
Best Apps 2020
1
best apps 2022
1
best apps 2023
1
Best games 2020
1
best games 2022
1
best games 2023
1
Best Practices
2
Beta
2
Biometrics
1
Buildbetterapps
2
CameraX
1
case study
6
ChromeOS
1
Cloud photos
1
coding productivity
1
compatibility
3
Compose
20
Compose Animation Previews
1
Conversation API
1
conversations
2
COVID-19
3
credential manager
1
Custom Model
1
Dagger Hilt
1
dark theme
1
Delegation
1
Dependency Injection
1
Design Patterns
1
Develop
1
Developer Preview
14
Developer Review
1
developer stories
4
developers
1
Developers Story
5
device explorer
1
devices
2
Edge-to-edge
1
events
2
Explore
2
Featured
151
Featured Game Development
1
Featured Google Play Policy
1
features
2
Firebase
2
Firebase Remote Config
1
foldables
7
form factors
3
game
19
Game Development
6
Game Mode API
1
games
2
gaming
1
GDG
1
Gemini
2
Get Inspired
2
get started
1
glance
1
Google AI Studio
1
Google Developers
1
Google for Games Developer Summit
2
Google I/O
5
Google Pixel Fold
1
Google Pixel Tablet
1
Google Play
120
Google Play App Safety
1
Google Play Billing
2
Google Play Billing Library
1
Google Play Console
3
Google Play developer distribution agreement
1
Google Play Developer Policies
3
google play developers
5
Google Play Devs
2
Google Play Game Services
1
Google Play Games
6
Google Play Indie games accelerator
2
Google Play Indie Games Festival
1
Google Play Integrity API
1
Google Play Latest
1
Google Play Pass
1
Google Play Points
1
Google Play SDK Index
1
Google Play Store
4
GoogleIO
3
GPS
1
Gradle sync
1
Health Connect
1
Health Connect API
1
health data
1
How to build Android app
1
I/O Extended
2
I/O Extended Japan
2
Identify
1
IGF2020
6
IGF2021
9
Indie developers
1
Indie Game
16
Indie Games
1
Indie Games Festival
17
Indie Games Festival 2020
7
Indie Games Festival 2021
9
indies
5
Insights
1
Japanese
15
Japanese Developer
9
Jetpack
17
Jetpack Compose
22
Jetpack Compose 1.2
1
JetpackCompose
5
key
1
keymaster
1
keymint
1
keystore
1
Kotlin
21
Kotlin Android Extensions
1
Kotlin Beginners
3
Kotlin Symbol Processing
1
Kotlin Vocabulary
2
Large Screens
6
large_screens
1
latest
133
Learn
1
learn Android
1
lifull
1
live edit
1
Location
1
Location Data
1
Machine Learning
1
Mad Skills
3
MADSkills
3
Material Design
4
material you
4
Media
8
mikan
1
ML
1
ML Kit
1
mobile
2
Model Maker
1
Modern Android Development
1
monetization
3
multiplatform apps
1
Navigation
1
nonce field
1
notifications
2
Now in Android
27
Open source
1
Optimization
1
organization account
1
passkeys
2
people
2
People API
1
Performance
8
permissions
1
Pixel
3
Platform_Update
13
Platform_Updates
1
play
1
Play Billing
1
Play Console
21
Play Store
1
Policies
6
Policy
11
policy compliance
8
policy violations
8
privacy
29
Privacy Sandbox
2
privacy sandbox on android
1
Programming
1
provisioning
1
Requirements
3
Resources
1
safety
3
sandbox
1
Security
12
stable
1
Story
3
subscriptions
5
success stories
3
Tablets
6
tapple
1
TensorFlow
2
TensorFlow Lite
1
Testing
1
Tools
1
training
2
UI
2
UX
1
wear
1
Wear OS
15
Wearables
1
wearos
3
webinar
2
Windowinsets
1
Women in Gaming
1
Workmanager
2
ベータ版4
1
ブログ アーカイブ
2024
9月
8月
7月
6月
5月
4月
3月
2月
1月
2023
12月
11月
10月
9月
8月
7月
6月
5月
4月
3月
2月
1月
2022
12月
11月
10月
9月
8月
7月
6月
5月
4月
3月
1月
2021
12月
11月
10月
9月
8月
7月
6月
5月
4月
3月
2月
1月
2020
12月
11月
10月
9月
8月
7月
6月
5月
4月
3月
2月
1月
2019
12月
9月
7月
6月
4月
3月
2018
8月
Feed
Follow @googledevjp
"プロダクトに関するご意見は
プロダクトフォーラム
にお願いします"