カッパでも分かるiOSアプリゲーム開発

カッパがひたすらゲーム制作に関することを書くブログです。Railsに関するTipsもたまにまとめてます。

swift2, spriteKit で Nend広告を表示させる

スポンサードリンク

ヘッダーに広告を表示する例についてまとめ。

f:id:InvokeTwoA:20151108161835j:plain


f:id:InvokeTwoA:20151023183618p:plain「基本は公式ドキュメントを見るのが一番だけど……」
http://nend.net/doc/nendSDKiOS_manual.pdf
f:id:InvokeTwoA:20151009145746p:plain「概要だけ見せて欲しいって事もありますよね。分かります」

(前提条件) apiKey と spotIDを取得

f:id:InvokeTwoA:20151023183618p:plain「apiKey と soptIDを取得してる必要あり、か」
f:id:InvokeTwoA:20151009145746p:plain「けっこうすんなり承認されるので、早めに申請しときましょう」

この申請のしやすさは Nend の強みだよね。
google とか審査すごく厳しいし

まず、ファイルをダウンロードする

ダウンロードするべきファイルは Nend の管理画面にリンクが貼ってある。
さっそくダウンロード!

f:id:InvokeTwoA:20151023183618p:plain「まず NendAd フォルダを Xcode に組み込むか」
f:id:InvokeTwoA:20151009145746p:plain「やってみましょう!」

ここで、ちゃんと create in needs や create folder などを指定しないと後で「NendHeader.h file not found」になるので注意。

続いて、NendAd-Bridging-Header の追加(Swift のプロジェクトで利用する場合)

NendAd-Bridging-Header.h をプロジェクトに組み込む……やってる事はさっきのと殆ど一緒だ。
問題は下記のパスを通す設定か

2.  NendAd-Bridging-Header.h へのパスを設定する

Build Settings>Swift Compiler–Code Generation>Objective-C Bridging Header に、$(SRCROOT)/$(PRODUCT_NAME)/NendAd-Bridging-Header.h を追加

ここも基本、パスとかいじらなければおかしな事は起きないはず。

Build Setting 周りのバグとか、検知しにくいからここは慎重に行いたいところ

必須フレームワークの追加

要は下記フレームワークを追加しろ、と

 AdSupport.framework
• Security.framework
• ImageIO.framework

f:id:InvokeTwoA:20151023183618p:plain「AdSupportのフレームワークだけ Optional にするのを忘れないようにしないと」

続いて swift のコードをいじる

GameViewController に NadView の Delefate と、
>|swift|
class GameViewController: UIViewController,NADViewDelegate {

}
|

続いて広告表示部分

override func viewDidLoad() {
        super.viewDidLoad()
        nadView = NADView(frame: CGRect(x: 0, y: 0, width: 320, height: 50))
        nadView.setNendID(CommonConst.adKey, spotID: CommonConst.adSpot)
        nadView.isOutputLog = false
        nadView.delegate = self
        nadView.load()
        self.view?.addSubview(nadView)
}

f:id:InvokeTwoA:20151023183618p:plain「まだ広告が承認されてない場合も、テストIDとか用意されてるから安心!」
f:id:InvokeTwoA:20151009145746p:plain「仮に git とかに登録するな、ID部分は CommonConst とかで定義して秘匿した方が良いよね」

無事に設定完了!

  • マニュアルは objective-c 用の使い方とか、各種のバナー用の使い方とかあるので分厚くてビビる。
  • でも実際にいじるべきところは少ないので、案外サクッと終わる