1

Google Mobile Ads SDK (v 5.0.5 だと思います) を使用している既存の iOS アプリがあります。DoubleClick をサポートするには、最新バージョンにアップグレードする必要があります。ただし、リンカー エラーが発生します。

私の手順は次のとおりです。

  1. プロジェクトから以前の SDK のファイル参照を削除する
  2. libGoogleAdMobAds.a以前にリンクされたライブラリを削除
  3. セットアップ手順に従います(必要なフレームワークを含め、特定のファイルのみを含め、その他のリンカー フラグを追加するなど)。

具体的なエラーは次のとおりです。

アーキテクチャ i386 の未定義シンボル:
  「_CGSizeFromGADAdSize」、から参照

また

  「_kGADAdSizeBanner」、から参照

他に何が欠けていますか?

4

1 に答える 1

0

-all_load リンカー フラグ オプションも必要でしょうか? この記事によると、新しい ARM7 ターゲットでは廃止されていますが、おそらく古いターゲットをお持ちですか?

http://vntin.com/feeds.feedburner.com/blogspot/LTiVe

このセクションの下を参照してください:「armv7sのサポート」

「armv7s アーキテクチャをターゲットにしている場合、プロジェクトに -all_load リンカー フラグを追加する必要はもうありません。」

[アップデート]

nm コマンドを使用して、lib*.a ファイルの内容を確認することができます。

nm -U libGoogleAdMobAds.a  | grep kGADAdSizeBanner

また、Log Navigator をクリックすると、追加情報が表示される場合があります。最後のアイコンを選択し、左側のナビゲーションで最後のビルドを選択します。

ここに画像の説明を入力

【アップデート2】

このサイトの誰かが、新しい API のリンカの問題についても不満を述べていました。コードに小さな変更を加える必要がある場合があります。

http://www.monkeycoder.co.nz/Community/posts.php?topic=1246

最新の AdMob SDK で何かが変更されました。同じリンカ エラーが発生します。古いバージョンの SDK を使用できますが、これはすべて正常に機能します。広告サイズで何が変わったのか知っている人はいますか?

編集:問題が見つかりました。定数にいくつかの名前の変更がありました:)

https://developers.google.com/mobile-ads-sdk/docs/ios/intermediate

GAD_ 広告のサイズを次のように変更します。

kGADAdSizeBanner.size.width および kGADAdSizeBanner.size.height
于 2013-06-27T02:17:31.390 に答える