UnityでAndroidアプリビルド時、AdMobとProguardが干渉する件

UnityでAndroidアプリをビルドする際にPlayerSettingsでMinify(apkファイルの難読化やサイズ減を実現する処理)の方法を尋ねられますが、ProguardによるMinify処理を行った場合にAdMobが表示できなくなる不具合が起こる件について。

Proguardの除外設定を行う

「/Asset/Plugins/Android/proguard-user.txt 」というファイルを配置して、AdMobに関するメンバを除外する設定を記述します。

-keep public class com.google.android.gms.ads.** {
   public *;
}
-keep public class com.google.ads.** {
   public *;
}
-keep class com.google.unity.** {
   public *;
}

または

-keep class com.google.android.gms.** {
    *;
}
-dontwarn com.google.android.gms.**

Proguardファイルの参照

PlayerSettingsのMinifyのところに「User Proguard File」という項目があるのでチェックします。

これで動くようになりましたが、他のアセットで何かしらの悪影響がある可能性もゼロではなく、リリース直前にこういう現象に振り回されるのは避けたいところ。出来るだけ早めにProguard適用してテストを繰り返したいですね・・・

1 Star2 Stars3 Stars4 Stars5 Stars (まだ投票されていません)
Loading...

    コメント