👏

Quest3アプリ用にどうしてもTarget API Level 32でビルドしたい

に公開

詰まったこと

  • AndroidのTarget API Levelを34以上にしないとビルドできない場面が発生
  • エラーを調べると使用しているライブラリに対してcompileSdkVersionが低いらしい
  • しかし、MetaのダッシュボードにアップロードするならTarget API Levelを32以下にしなければいけない...

何も考えずにAPIレベル32でビルドしたらこんなエラーが出た

...
Execution failed for task ':launcher:checkReleaseAarMetadata'.
> A failure occurred while executing com.android.build.gradle.internal.tasks.CheckAarMetadataWorkAction
   > 7 issues were found when checking AAR metadata:
...

解決方法

  1. 一旦Target API Level 34でビルドする
  2. Project Settings > Player > Publishing SettingsでCustom Launcher Grade TemplateをオンにしてAssets/Plugins/Android/launcherTemplate.gradleを生成
  3. launcherTemplate.gradleのcompileSdkVersionの部分を変更する
    // compileSdkVersion **APIVERSION**  <- 元々書いてあったもの
    compileSdkVersion 34   // これに書き換える
  1. Target API Level 32に変更してもう一度ビルドする

参考

https://tech.framesynthesis.co.jp/unity/metaquest/

Discussion