iOSアプリにちょっと修正を加えてアップロードしたら、こんなメッセージを受けました。
最新の配信で、1つ以上の問題が確認されました。配信は成功しましたが、次の配信では以下の問題を修正してください。ITMS-90809: Deprecated API Usage – Appleは2020年12月以降、UIWebView APIを使用したアプリアップデートの投稿を受け付けなくなります。詳細は https://developer.apple.com/documentation/uikit/uiwebview を参照してください。問題を修正したら、新しいバイナリをApp Store Connectにアップロードしてください。よろしくお願いします。App Store チーム
UIWebViewを利用していると表示されるのですが、アプリ本体はwkWebviewにしばらく前から移行してるので、何かのライブラリが原因のようです。
プロジェクトのディレクトリでfindしてみたらadmobのライブラリのようです。
Binary file ./Pods/Google-Mobile-Ads-SDK/Frameworks/frameworks/GoogleMobileAds.framework/GoogleMobileAds matches
admobのリリースノートにも、2020‑02‑28(7.56.0)で対応されてます。
Warning: Calling this method may negatively impact your Google mediation performance. This method should only be called if you include Google mediation adapters in your app, but you won’t use mediate through Google during a particular app session (for example, you are running an A/B mediation test).
cocoapod経由でアップデートします。
pod update Google-Mobile-Ads-SDK
Updating local specs repositories
CocoaPods 1.8.4 is available.
To update use: `sudo gem install cocoapods`
For more information, see https://blog.cocoapods.org and the CHANGELOG for this version at https://github.com/CocoaPods/CocoaPods/releases/tag/1.8.4
Analyzing dependencies
Downloading dependencies
Installing Google-Mobile-Ads-SDK 7.57.0 (was 7.25.0)
Installing GoogleAppMeasurement (6.1.2)
Installing GoogleUtilities (6.5.2)
Generating Pods project
Integrating client project
Pod installation complete! There are 3 dependencies from the Podfile and 11 total pods installed.
アップデートしたところ、admob関連でアプリが落ちるので、調べてみると
*** Terminating app due to uncaught exception 'GADInvalidInitializationException', reason: 'The Google Mobile Ads SDK was initialized without an application ID. Google AdMob publishers, follow instructions here: https://googlemobileadssdk.page.link/admob-ios-update-plist to set GADApplicationIdentifier with a valid app ID. Google Ad Manager publishers, follow instructions here: https://googlemobileadssdk.page.link/ad-manager-ios-update-plist'
*** First throw call stack:
(
0 CoreFoundation 0x000000010a7f81ab __exceptionPreprocess + 171
1 libobjc.A.dylib 0x0000000109e8df41 objc_exception_throw + 48
2 CoreFoundation 0x000000010a7f80f9 -[NSException raise] + 9
3 myapp02 0x0000000104cffabb GADApplicationVerifyPublisherInitializedAnalyticsCorrectly + 414
4 myapp02 0x0000000104cb05d6 GADEnvironmentIsSupported + 1020
5 libdispatch.dylib 0x000000010da893f7 _dispatch_call_block_and_release + 12
6 libdispatch.dylib 0x000000010da8a43c _dispatch_client_callout + 8
7 libdispatch.dylib 0x000000010da8f352 _dispatch_queue_override_invoke + 1458
8 libdispatch.dylib 0x000000010da961f9 _dispatch_root_queue_drain + 772
9 libdispatch.dylib 0x000000010da95e97 _dispatch_worker_thread3 + 132
10 libsystem_pthread.dylib 0x000000010df529f7 _pthread_wqthread + 220
11 libsystem_pthread.dylib 0x000000010df51b77 start_wqthread + 15
)
libc++abi.dylib: terminating with uncaught exception of type NSException
Google Ad Managerで配信している場合に必要な設定が増えているようです。
info.plistにGADIsAdManagerAppのキーを作成して、YESを設定