Google Mobile Ads Unity Plugin v5.4.0 を使っているときに、AdMobバナー広告のイベント(HandleOnAdFailedToLoad)で、実機で実行したときに
SDK tried to perform a networking task before being initialized.
というエラーメッセージが出た。
原因は、先の記事「[Unity - iOS] AdMobプラグインを使ったときにビルドしても「.xcworkspace」が出力されないときの対処法」にて、「External Dependency Manager」のバージョンを
v1.2.161 -> v1.2.164
に上げてしまったことが原因だった。
v1.2.164->v1.2.163
にバージョンを下げたことで広告が表示されるようになったので、手順をメモ。
手順
(1) Packages 内の「External Dependency Manager」のバージョンを確認
AdMobのプラグインでは「v1.2.161」だったけど、最新の「v1.2.164」に上げた状態になっていた。
(2) Package Managerを使ってバージョンを「v1.2.163」に戻す
先に記事にてGoogleのレジストリを登録していたので、「My Registories」を選択。
「External Dependency Manager」の「v1.2.163」を選択し、「Update to 1.2.163」を押して実行する。
(3) Package内を確認。
ちゃんとバージョンがv1.2.163に変わったことを確認。
これで広告が表示された。
何でもかんでも最新版がいいとは限らないんだなー。
2021年03月24日
[Unity - iOS] AdMobバナー広告で「SDK tried to perform a networking task before being initialized」となる時の対処法
posted by be-style at 00:09| Comment(0)
| Unity
2021年03月23日
[Unity - iOS] AdMobプラグインを使ったときにビルドしても「.xcworkspace」が出力されないときの対処法
AdMobプラグイン(v5.4.0)を導入してビルドしたとき、「.xcworkspace」が出力されずに困ったときがあったので、メモ。
環境
・Unity2020.3.0f1
・XCode12.4
・AdMobプラグイン for Unity v5.4.0
目指す形は、「iOS Resolver Settings」というメニューから、「Xcode Workspace - Add Cocoapods to Xcode workspace」を設定すること(下図)。
事前チェック
Unityメニュー > Assets > External Dependency Manager > iOS Resolver
が存在しないことを確認。
もしこのメニューが存在するなら、以下の導入手順は不要です。
上図にある「Xcode Workspace - Add Cocoapods to Xcode workspace」が設定できていれば問題解決です。
External Dependency Manager 導入手順
(1) Packages に「External Dependency Manager」が入ってないことを確認。
(2) AdMobプラグインからインポートする
AdMobプラグイン for Unity v5.4.0から「GoogleMobileAds-v5.4.0.unitypackage」をダウンロードして、「External Dependency Manager」をUnityプロジェクトにインポートする。
(3) Assetの内容を確認
すると、「External Dependency Manager」がAssets配下にインポートされます。
(4) Unityが依存関係を解決してくれる
(3)が終わると、自動で「Package Manager Resolver」が立ち上がるので、何も考えずに「Add Selected Register」を選択。
(5) 「External Dependency Manager」をPackageに移す
(4)が終わると、「Migrating Packages」が立ち上がり、バージョンを「v1.2.161->v1.2.164」に上げると言われるので、何も考えずに「Apply」を押す。
※(4)の操作が、AdMob広告が表示されなくなる原因になるとは思ってもいなかった、
※v1.2.164ではなくv1.2.163だと問題なかった。そのときの対応は別記事にて。
すると、 「External Dependency Manager」をPackageに移ったことが確認できる。
(7) iOS Resolverを立ち上げる
Unityメニュー > Assets > External Dependency Manager > iOS Resolver > Settings
というメニューが出来ているので、選択する。
(8) ビルド時に「.xcworkspace」が出力されるように設定する
これで、iOS用にビルドしたときに「.xcworkspace」が出力されるようになった。
気づくのに苦労した。。。
Package Mangerから「External Dependency Manager」を入れる方法
上記はAdMobプラグインを使った方法だったけど、Package Managerを使って入れることも出来た。
Edit > Project Settings > 左メニューのPackage Manager を選択。
を入力して、Applyボタンを押す。
Window > Package Manager にて、レジストリを「My Registories」にすると、先ほど設定したGoogleのレジストリが表示される。
ここから、「External Dependency Manager」をインストールすることができた。
_/_/_/_/_/_/ 注意! _/_/_/_/_/_/
Package Managerからインストールする際、上記(3)の状態のように「Assets」内にも「External Dependency Manager」があると重複してしまいPackageManagerがおかしくなる。
必ず「Assets」内の「External Dependency Manager」を先に削除しておくこと。
環境
・Unity2020.3.0f1
・XCode12.4
・AdMobプラグイン for Unity v5.4.0
目指す形は、「iOS Resolver Settings」というメニューから、「Xcode Workspace - Add Cocoapods to Xcode workspace」を設定すること(下図)。
事前チェック
Unityメニュー > Assets > External Dependency Manager > iOS Resolver
が存在しないことを確認。
もしこのメニューが存在するなら、以下の導入手順は不要です。
上図にある「Xcode Workspace - Add Cocoapods to Xcode workspace」が設定できていれば問題解決です。
External Dependency Manager 導入手順
(1) Packages に「External Dependency Manager」が入ってないことを確認。
(2) AdMobプラグインからインポートする
AdMobプラグイン for Unity v5.4.0から「GoogleMobileAds-v5.4.0.unitypackage」をダウンロードして、「External Dependency Manager」をUnityプロジェクトにインポートする。
(3) Assetの内容を確認
すると、「External Dependency Manager」がAssets配下にインポートされます。
(4) Unityが依存関係を解決してくれる
(3)が終わると、自動で「Package Manager Resolver」が立ち上がるので、何も考えずに「Add Selected Register」を選択。
(5) 「External Dependency Manager」をPackageに移す
(4)が終わると、「Migrating Packages」が立ち上がり、バージョンを「v1.2.161->v1.2.164」に上げると言われるので、何も考えずに「Apply」を押す。
※(4)の操作が、AdMob広告が表示されなくなる原因になるとは思ってもいなかった、
※v1.2.164ではなくv1.2.163だと問題なかった。そのときの対応は別記事にて。
すると、 「External Dependency Manager」をPackageに移ったことが確認できる。
(7) iOS Resolverを立ち上げる
Unityメニュー > Assets > External Dependency Manager > iOS Resolver > Settings
というメニューが出来ているので、選択する。
(8) ビルド時に「.xcworkspace」が出力されるように設定する
これで、iOS用にビルドしたときに「.xcworkspace」が出力されるようになった。
気づくのに苦労した。。。
Package Mangerから「External Dependency Manager」を入れる方法
上記はAdMobプラグインを使った方法だったけど、Package Managerを使って入れることも出来た。
Edit > Project Settings > 左メニューのPackage Manager を選択。
Name | Game Package Registry by Google |
URL | https://unityregistry-pa.googleapis.com |
Scope(s) | com.google |
を入力して、Applyボタンを押す。
Window > Package Manager にて、レジストリを「My Registories」にすると、先ほど設定したGoogleのレジストリが表示される。
ここから、「External Dependency Manager」をインストールすることができた。
_/_/_/_/_/_/ 注意! _/_/_/_/_/_/
Package Managerからインストールする際、上記(3)の状態のように「Assets」内にも「External Dependency Manager」があると重複してしまいPackageManagerがおかしくなる。
必ず「Assets」内の「External Dependency Manager」を先に削除しておくこと。
posted by be-style at 23:49| Comment(0)
| Unity
2021年03月01日
[iOS]100マス計算(iOS)をアップデートしました
iOS版の100マス計算をアップデートしました。
新たに「分析」が追加されました。
各問題の正答率と平均回答時間が表示されるので、間違えやすい箇所を確認しやすくなりました。
App Store:
https://apps.apple.com/jp/app/id534131439
新たに「分析」が追加されました。
各問題の正答率と平均回答時間が表示されるので、間違えやすい箇所を確認しやすくなりました。
App Store:
https://apps.apple.com/jp/app/id534131439
posted by be-style at 16:29| Comment(0)
| Release