ITMS-90809問題でUnityをアップデートしたらAdMobが表示されなくてハマる



長くなるので最初に問題の概要と解決を書きます。

問題1.アプリをAppStoreにアップロードしたらAppleからITMS-90809:WebViewやめろメールが来た。

解決法:
https://issuetracker.unity3d.com/issues/ios-apple-throws-deprecated-api-usage-warning-for-using-uiwebview-when-submitting-builds-to-the-app-store-connect
↑ここにこの問題を修正したバージョンが載ってるのでそのバージョンにUnityをアップデートする。
私の場合2018.4.16f1 を使うといけた

問題2.Unityをアップデートしてビルドしたらテスト広告は表示されるのに本番IDの広告がiPhoneで表示されない。と思ったらiPadでは表示される。なにコレ?

解決策:スマートバナーを使ったら表示された

BannerView bannerView = new BannerView(adUnitId, AdSize.SmartBanner, AdPosition.Top);

問題3.Xcodeでビルドしたら
GADUNativeExpressAd.m cannot be found

解決策:
Assets/Plugins/iOS/GADUNativeExpressAd.h
Assets/Plugins/iOS/GADUNativeExpressAd.m
Xcodeでこいつらを削除。

問題4.↑上の問題を解決してビルドしたら今度は
library not found for lgoogleutilities

解決策:Unityでビルドして出来たファイルで
hogeApp.xcodeproj じゃなくて
hogeApp.xcworkspace の方を開く

問題5.↑上の問題を解決してビルドしたら今度は
80 duplicate symbols for archtecture arm6

解決策:
a.最新Google Mobile Ads Unity Pluginをダウンロード
b.AssetのGoogleMobileAdsとPlayServicesResolverとPluginsフォルダをUnityから削除。
c.最新のやつをインポートしてビルド
d.ビルドするときreplaceかappendか聞かれるとreplaceで一旦置き換える。この時最初はDestinationがなんたらでエラー出るけど2回目は出なかった
e.出来たhogeApp.xcworkspaceを開いてxcode起動。その時duplicate symbolsのエラーが出てるけどビルドしたら消える。
f.最新Google Mobile Ads SDKをダウンロードしてxcodeのフレームワークに追加。最新のAdsSDKには4つフレームワークあるけど入れるのはGoogleMobileAds.Frameworkだけで他の訳分からんの入れたらビルド時にduplicate symbolsのエラー。

問題6.xcworkspaceからプロジェクト開くと証明書関連がなんかおかしくなる

解決策:
debug—Apple Development
Any iOS SDK—iOSDeveloper
Release—Apple Distribution
Any iOS SDK—iOSDeveloper
ReleaseForProfiling—Apple Distribution
Any iOS SDK—iOSDeveloper
ReleaseForRunning—Apple Distribution
Any iOS SDK—iOSDeveloper
この設定にしたらいけた

問題7.ArchiveのあとValidateしようとしたら
appstore connect operation error
一旦戻ってもう一回やろうとしたら
no app store connect account

解決策:Macを再起動


今回のITMS-90809の問題はたくさんエラーが出て迷走したけどやることは問題1と2だけで良かった。つまりUnityアップデートしてAdMobはスマートバナーを使う。これだけで良かったぽい。
なんで迷走したのかといえばアップデートしてビルドしてもiPhoneで本番広告が表示されなかったからで、ああ最新のバージョンは最新のAdsSDKやら全部最新の入れないとダメなのねと思ってしまいPluginとか全部再インポートしたらxcodeが激おこエラーの嵐。
最終的には無事アップロードできたので良かったけどもうほんま疲れた~^^;


コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です