Android12

2021.09.08

WEB/アプリ開発

【今秋リリース!】Android 12最新情報~ユーザー編・開発者編~

近年、スマートフォンは著しく成長を遂げており、人々の暮らしに密接した様々な仕様や機能がリリースされています。現在スマートフォンではアップル社が開発・提供するiOSとグーグル社が開発・提供するAndroid OSの2つが広く一般的に利用されています。今回は2021年10月20日に正式にリリースされたAndroid 12について、ユーザー側と開発者側のそれぞれの追加機能・変更点などをご紹介します。

1. Android OSとは

white iphone 5 c on white table

Android OSはGoogle社がLinuxを携帯端末に改良して作ったOS(モバイルオペレーションシステム)で、ソニー販売機種のXperia(エクスペリア)やサムスン販売機種のGalaxy(ギャラクシー)などの端末に使われています。

Android OSのアップデートはおおよそ1年単位で行われています。前回のリリースであるAndroid 11は2020年9月8日にリリースされました。そして2021年10月20日にリリースされたのが今回ピックアップするAndroid 12です。

Android 12はBeta版リリース後、正式にリリースされました。

2. Android 12アップデートポイント~ユーザー編~

それでは、今回リリースされたAndroid 12の変更点について、まずはユーザーサイドで見ていきましょう。

2-1. デザインカスタマイズ

Android 12では「Material You」というこれまでのAndroidにないデザイン変更がされます。Material Youは、壁紙に合わせてデバイスの見た目を変えたり、ボタンや文字・時計などカスタマイズすることが可能です。Android 12では好きな壁紙を選択すると自動的にどの色がメインなのかを判別して、その色をシステム全体に適応することができます。自分好みの仕様に仕上げることが可能になりました。

2-2. クイック設定パネル

このMaterial Youの採用によりクイック設定パネルが大きく変わります。壁紙に合わせてクイック設定パネルで利用することができる機内モードや、ダークテーマ・夜間モードなど各ボタンの画面の明るさを調節できるスライダーの色が変化します。

新しいボタンも追加され、すべてのアプリに対してカメラやマイクの使用を制限することができるボタンやGoogle Payやホームコントロールが追加されます。不要なボタンはカスタマイズすることも可能です。ダイナミックでパーソナルなものになったと発表されています。

2-3. ウィジェットデザイン

Google The Keyword(https://blog.google/products/android/android-12-beta/

Android 12のデザイン変更に伴ってウィジェットも更新されます。新しいウィジェットは角が丸みを帯びているデザインになっており、カスタマイズしやすい仕様になっています。

2-4. 処理速度/省電力化

Android 12では見た目部分のアップデートだけではなく、中身の仕様も大きくアップデートしました。コアシステムサービスに必要なCPU時間が最大22パーセント短縮することができます。また、システムサーバーでのビックコアの使用を最大15パーセント減らすことが可能です。今回のアップデートによって以前のOSと比べてもより省電力になったため、電池持ちも良くなるとされています。

2-5. セキュリティ

また、Android12では、システムやアプリケーションがカメラとマイクを使い始めると、画面の右上の部分のそれぞれのアイコンが表示されグリーンに変化します。これによって有害なアプリケーションは、盗撮・盗難しようと試みてもユーザーはすぐにわかるようになっているので安心できます。

その他にもスクリーンショットのマークアップツールの進化や、Wi-Fiパスワードをニアバイシェアで共有できる機能も実装される予定です。

資料請求・お問い合わせバナー

3. Android 12アップデートポイント~開発者編~

MacBook Pro showing programming language

アプリを提供する会社やアプリ開発を行うエンジニアにとってもOSのアップデート情報は必ず押さえておかなくてはいけない情報です。新規アプリの開発にあたってはもちろん、既存のアプリは新OSに対応させていく必要があるためです。Android 12のアップデートでどのような変更点があるのかを見ていきましょう。

3-1. カスタム通知

以前までのOSでは通知欄の表示や動作が独自レイアウトにカスタマイズが可能であった反面、デバイス間での互換性に問題が生じるケースがありました。Android 12では標準のテンプレートが提供されることにより通知欄の視覚的な一貫性が担保されるように変更されました。

3-2. Android アプリリンク

Androidアプリリンクの検証方法の変更によってデベロッパーとエンドユーザーがより細かく制御できるようになります。

3-3. おおよその位置情報

Android 12 をターゲットとするアプリでは、アプリが ユーザーはアプリがおおよその位置情報しか取得しないようにリクエストできます。

ユーザーのプライバシーを尊重して、ACCESS_COARSE_LOCATION のみをリクエストすることが推奨されています。おおよその位置情報にしかアクセスできない場合でも、ほとんどのユースケースには対応できます。

  • 正確: ACCESS_FINE_LOCATION 権限によって指定される位置情報の精度を提供
  • おおよそ: ACCESS_COARSE_LOCATION 権限によって指定される位置情報の精度を提供

3-4. アプリの休止状態

アプリが Android 12 をターゲットとしていて、ユーザーが数か月にわたってアプリを操作しなかった場合、付与されたすべての権限が自動的にリセットされ、アプリが休止状態になります。

休止状態になった場合保存容量に合わせて最適化が行われ、アプリのキャッシュ内のファイルはすべて削除されます。また、バックグラウンドでの動作やアラートの実行ができなかったり、プッシュ通知を受信できなかったりという状態になります。休止状態を無効にする場合にはユーザーにリクエストを送る必要があります。

3-5. モーションセンサーのレート制限

アプリが Android 12 をターゲットにしている場合、ユーザーの機密に該当する可能性がある情報を保護するため、特定のモーションセンサーや位置センサーからのデータのリフレッシュレートに制限が課されます。このデータには、デバイスの加速度計、ジャイロスコープ、地磁気センサーによって記録された値が含まれます。

3-6. データアクセスの監査

Android 11(API レベル 30)で導入された Data Access Auditing API を使用すると、アプリのユースケースに基づいてアトリビューション タグを作成できます。これらのタグを使用することで、特定の種類のデータアクセスをアプリのどの部分で実行するかを簡単に指定できます。

3-7. コンポーネントのエクスポートの安全性を改善

Android 12 をターゲットとするアプリに、インテントフィルタを使用するアクティビティ、サービス、またはブロードキャストレシーバが含まれている場合は、それらのアプリ コンポーネントで android:exported 属性を明示的に宣言する必要があります。

3-8. ペンディング インテントの可変性

Android 12 をターゲットとするアプリでは、アプリが作成する個々の PendingIntent オブジェクトの可変性を指定する必要があります。この追加要件により、アプリのセキュリティが強化されます。

特定の PendingIntent オブジェクトが可変または不変であることを宣言するには、PendingIntent.FLAG_MUTABLE フラグまたは PendingIntent.FLAG_IMMUTABLE フラグをそれぞれ使用します。

3-9. フォアグラウンド サービスの起動に関する制限

Android 12 をターゲットとするアプリは、バックグラウンドで動作しているとき、少数の特殊なケースを除いて、フォアグラウンド サービスを起動できなくなりました。アプリがバックグラウンドで動作しているときにフォアグラウンド サービスを起動しようとすると、(少数の特殊なケースを除いて)例外が発生します。アプリがバックグラウンドで動作しているときに作業のスケジュールを設定して開始するには、WorkManager の使用する必要があります。

3-10. 正確なアラームの権限

正確なアラームが設定されているものの、特別なアプリアクセスが付与されていない API をアプリが使用しようとすると、SecurityException が発生しますので、マニフェストで SCHEDULE_EXACT_ALARM 権限をリクエストする必要があります。

3-11. 通知トランポリンの制限

アプリのパフォーマンスと UX を改善するため、Android 12 をターゲットとするアプリは、通知トランポリンとして使用されるサービスまたはブロードキャスト レシーバからアクティビティを開始できなくなりました。つまり、ユーザーが通知または通知内のアクション ボタンをタップした後、アプリはサービスまたはブロードキャスト レシーバ内で startActivity() を呼び出すことができません。

3-12. スプラッシュ画面のAPI

以前にAndroid11かAndroid11以下でカスタムスプラッシュ画面を実装した場合、Android12以降で正しく表示されるようにアプリをSplashScreen APIに移行する必要があります。

4. まとめ

今回はAndroid 12のアップデートについてご紹介させていただきました。

機能面でのアップデートも多いことからアプリを通してできることも今後増えていくとみられています。

5. アプリ開発の相談ならバイタリフィへ

バイタリフィバナー

バイタリフィではスマートフォン向けのアプリやシステムのスクラッチ開発をはじめとして、AI対応チャットボットの提供ベトナムでのオフショア開発などを、ご提案から企画、開発、開発後の保守運用までワンストップで提供しております。

新規でのアプリ開発はもちろん、すでに開発されたアプリの機能追加などの改修も可能です。ご相談は無料ですので是非お気軽にお問い合わせください!

お問い合わせはこちら

5-1. 関連記事