‘android:exported’ プロパティ セットは使用されていません。このファイルは Android 12 以降にはインストールできません。詳細: developer.android.com/about/versions/12/behavior-changes-12#exported
Unityで制作したアプリをGooglePlayConsoleにてアップロードしようとした際に出たエラーです。
今回はこちらを解決する際に実施した内容について紹介します。
では、行ってみましょう!
環境
PCは、M1MacBookAir
Unityのバージョンは、Unity2020.3.16fになります。
エラーが起きるタイミング
Unityでのビルドは成功するものの、GooglePlayConsoleにて、APKファイルをアップロードする際にエラーが発生します。
エラー内容は「’android:exported’ プロパティ セットは使用されていません。このファイルは Android 12 以降にはインストールできません。詳細: developer.android.com/about/versions/12/behavior-changes-12#exported」
このエラーに対しての解決に至った方法について二つ紹介します。
僕の場合ですと、二つの方法を取りましたが、もしかすると②の方法だけでも解決する可能性が高いです。
解決法①
Custom Main Mainfestのチェックをつけたあと、Assets/Plugins/Android/AndroidManifest.xmlを書き換えるという方法になります。
BuildSettings > PlayerSettings > Publishing Settings > Buildという項目に対象のチェックボックスは存在します。
チェックが入っていなければ、チェックをするとAssets/Plugins/Android/AndroidManifest.xmlというパスでファイルが一つ生成されます。
このファイルを開いて、下記部分に「android:exported=“true”」を書き加えます。
下の図はすでに書き終えたものになりますので、参考にしてみてください。
これだけでも解決するという記事も多かったですが、僕の場合、エラー解消には至りませんでした。
次の2個目の方法の方がクリティカルにエラー解消できました。
解決法②
バージョンが古いパッケージを削除するという方法によってエラー解消ができました。
具体的には「Package Manager」から「Notification」を削除したら、アップロードが無事行えるようになりました。
Package Managerは、Windows > Package Managerから確認することができます。
以下の図のような操作です。
これで現れるウィンドウにて、Notificationのパッケージを削除したのです。
今回制作していたアプリはNotificationという通知機能は採用していなかったので、削除対応で問題はありませんでした。
しかし、アプリによっては通知機能が必須という場合もあるのと思います。
おそらくその際は、Notificationをアップデートするなどの対応で、エラー解消が行われると思います。
リリースに成功したアプリ
最終的に今回発生したエラーを解消させてリリースしたアプリがこちらになります。
ツマミになる話を元にしたルーレットアプリで、飲み会などでぜひ使って欲しいアプリとなっています。
まとめ
今回は、’android:exported’ プロパティ セットは使用されていません。このファイルは Android 12 以降にはインストールできません。詳細: developer.android.com/about/versions/12/behavior-changes-12#exportedというエラーの解消法について紹介してきました。
リリースしたいのにできない、なんならよくわからないエラーってビビりますよね。
正直もっと詳細なエラーログにして欲しいところです。
解決もかなり苦労しましたし、まさかパッケージという部分ってのは発想としてありませんでした。
Notificationを消すという単純なもので、なんとかリリースはできたので良かったですが、これがもっと苦労して作ったアプリとかだったら落ち込み度が半端なかったと思います。
リリースだけできないっていうとこれまでの努力が水の泡になるんじゃないかという焦りがありますからね。
今回の記事で、一人でもアプリ開発の壁を越えられたという方がいれば嬉しいです。
では、皆さんの開発ライフがより良いものになることを祈っています。
コメント