2021/10/4にAndroidのOS「Android 12」がリリースされました。
アプリを開発する上での変更点はこちらの公式サイトにまとまっておりますが、気になった点をご紹介します。
・新しい Bluetooth の権限
「BLUETOOTH_SCAN」、「BLUETOOTH_ADVERTISE」、「BLUETOOTH_CONNECT」が追加されました。
また、位置情報を利用しないアプリでも、位置情報の利用許可権限である「ACCESS_FINE_LOCATION」の設定が今まで必要でしたが不要となりました。
開発者としては利用許可ダイアログを表示するための処理の追加が不要になりますし、アプリ利用者も余計な利用許可ダイアログが表示されなくなるので良いですね。
各権限の内容です。
■BLUETOOTH_SCAN
アプリが Bluetooth デバイスを探す場合に権限を追加します。
■BLUETOOTH_ADVERTISE
アプリが現在のデバイスを他の Bluetooth デバイスから検出可能にする場合に権限を追加します。
■BLUETOOTH_CONNECT
アプリがすでにペア設定されている Bluetooth デバイスと通信する場合に権限を追加します。
・おおよその位置情報
アプリ利用者が位置情報の利用の選択時、位置情報の取得精度について「正確な位置情報の取得」、または「おおよその位置情報の取得」の選択が可能となりました。
ユーザのプライバシーの観点からこのような選択ができるようになったと思います。
アプリが「Android12」に対応する場合、権限に「ACCESS_FINE_LOCATION」のみを設定している場合、Logにエラー情報が出力されるようになるようです。そのため、「ACCESS_COARSE_LOCATION」も設定を追加する必要があります。
また、最近作成したアプリに、ある施設の来場者の正確な位置情報を管理者が把握する機能がありましたが、端末へのアプリのインストール時には「正確な位置情報を取得」を選択するようにしていただく必要があります。選択しないと本当は施設内にいるのに、アプリの表示は施設外へでていってしまっている可能性がありますので。
各権限の内容です。
■ACCESS_FINE_LOCATION
高精度な位置情報の取得。電力消費が激しい。
■ACCESS_COARSE_LOCATION
おおよその位置情報の取得。電力消費が少ない。
・オーバースクロール効果
オーバースクロールイベント時の視覚的なアニメーション動作が変更になりました。
ドラッグイベントでは視覚要素がストレッチしてから元に戻るようになり、今みている部分が現在表示画面コンテンツ内の終わり部分にいるかどうかがわかりやすくなりました。
私も良く使う「ListView、ScrollView」等以下のクラスに適用されるようです。
■RecyclerView
■ListView
■ScrollView
■NestedScrollView
■HorizontalScrollView
■ViewPager
■ViewPager2
もちろん、この効果を無効とする設定もできるようです。
「Android 12」の気になった変更機能についてご紹介しました。
まだ社内のアプリを「Android 12」対応しておりませんが、今後「Android 12」向けの対応が必要となりますので近い将来に実施します。また対応時に戸惑った点があればご紹介いたします。
お問い合わせ - お気軽にお問い合わせください -

株式会社 パブリックリレーションズ 〒064-0807 北海道札幌市中央区南7条西1丁目13番地 弘安ビル5階 011-520-1800 011-520-1802