はじめに
UnityでAndroid14から15へアップデートする際、またスムーズにいかなかったので、
エラー内容と解決法を紹介できればと思います。
Unityバージョンは2022.3.45f1で行いました。
エラー:Unable to detect SDK in the selected directory.
ファイル参照先も存在し中身まであったにも関わらず、SDKが無いと怒られました。
こちらはUnityを再インストールし、プロジェクトを再起動すると解消されました。
インストール時に何か失敗していたのでしょう。
エラー:Cannot parse project property android.enableR8='' of type 'class java.lang.String' as boolean. Expected 'true' or 'false'.
android.enableR8という変数にtrue,falseではない不正な値が入っているとのことです。
該当箇所をコメントアウトし、修正しました。
gradleTemplate.properties
# android.enableR8=**MINIFY_WITH_R_EIGHT**
エラー:Play Billing Library のバージョンを更新したはずなのに適応されない
Android14へアップデートした際にPlay Billing Libraryを7へ対応させたのですが、なぜか今回は5.2.1になってると言われました。
mainTemplate.gradle
dependencies {
configurations.all {
exclude group: 'com.android.billingclient', module: 'billing'
}
def billingVersion = "7.0.0"
implementation("com.android.billingclient:billing:$billingVersion") {
force = true}
}
明示的に書いているのになぜか適応してくれません。
なんと公式ドキュメントに解決方法が載っていました。
どうやら他のライブラリが5.2.1に書き変えてるようなので強制的に7.0.0へ対応させます。
以下をそれぞれ追記しました。
MainTemplate.gradle
dependencies {
android {
+ defaultConfig {
+ manifestPlaceholders = [playBillingClientVersion: "7.0.0"]
+ }
}
}
AndroidManifest.xml
<application >
+ <meta-data
+ android:name="com.google.android.play.billingclient.version"
+ android:value="7.0.0"
+ tools:replace="android:value" />
</application >
おわりに
まだまだビルド時のエラーには手こずりますね。
慣れていきたいもんです。