【Xcode】AdMob導入に必要なframework!これが無いと実機テストできない

f:id:clrmemory:20171121051036j:plain

こんにちはクリアメモリです!

先日、現在作成中のアプリを実機にインストールしようとしたところ、Xcodeでエラーが発生してしまい、ビルドできませんでした。

AdMobを実装したアプリをビルドするためには、いくつかのframeworkを追加する必要があるので紹介します。

 

 

はじめに

 

今回、アプリをビルドできなかった原因はAdMob広告を実装するために必要なフレームワークが足りていなかったためでした。

そこで今回はAdMob広告を使ったアプリをビルドするために必要なframeworkを紹介していきます。

 

まずはframeworkを新規追加するための環境を整えましょう。

Build Phasesを開いてください。

 

Build Phases

 

「TARGETS」を実機テストしたいアプリに合わせた状態で、画面上部を確認してください。

「Build Phases」という項目がありますので、選択しましょう。

 

スクリーンショット 2016-05-05 22.40.50

 

続いて、すでに追加されているframeworkを確認してください。「Link Binary With Libraries (XX items)」を選択します。

 

スクリーンショット 2016-05-05 22.41.18

 

Link Binary With Librariesをクリックするとframeworkが表示されるのですが、今回は新しくframeworkを追加するので、以下の画像を参考にして「+」ボタンを選択してください。

 

スクリーンショット 2016-05-05 22.42.21

 

ここから追加したいframeworkを検索し、追加することができます。

では「AdMob」を使ったアプリに必要なframeworkはどのようなものなのでしょうか。以下から紹介していきます。

 

AdMobに必要なframework

 

AdMobを導入しているアプリに必要なframeworkは以下のものになります。

  •  
  • AdSupport.framework
  • AudioToolbox.framework
  • AVFoudation.framework
  • CoreGraphics.framework
  • CoreTelephony.framework
  • EventKit.framework
  • EventKitUI.framework
  • MediaPlayer.framework
  • MessageUI.framework
  • StoreKit.framework
  • SystemConfiguration.framework

 

AdMobを導入したアプリに必要なframeworkは以上です。これらのframeworkをそれぞれ追加しましょう。

もしこれらのframeworkを追加してもビルドに失敗する時は、別に原因がある可能性がありますので、過去に遭遇したXcodeのエラーを紹介しておきます。

 

Xcodeビルドエラー

 

  • iOSアプリ ビルドエラーuse of "@import when modules are disabledの対処
  • [Xcode] ビルド時のエラー Xcode cannot run using the selected device.
  • xcodeを最新版にしたらビルド出来ない [ERROR ITMS-90474 “Invalid Bundle. iPad Multitasking support requires these orientations]
  • xcodeでArchive時にビルドエラー ~armv7 ~arm64
  • [xcode]ビルドエラー ERROR ITMS-90535: “Unexpected CFBundleExecutable Key. The bundle at ‘Payload/XX.app/UnityAds.bundle’ does not contain a bundle executable.
  • xcodeでのビルドエラー _OBJC_CLASS_$_CustomStoreProductViewController in UnityAds(UnityAds)
  • [xcode]最新版 ビルドエラー does not contain bitcode

 

これらのエラーが発生している場合は、確認してみてください。

 

まとめ

 

Unityで開発したアプリの場合、Xcodeで発生したエラーのほとんどはframework関連で解決できると思います。

Xcodeのアップデートなどで仕様が変わってしまうこともあるので、慌てて関係ない箇所を変更してしまわないように注意しましょう。

 

www.clrmemory.com

 

ではまた。

新着記事