こんにちは、coeこと@coffeegyunyuです。
この記事は、 Titanium Advent Calendar 2015 の13日目の記事になります。
僕がTitaniumを始めようと思ったきっかけはクロスプラットフォームが魅力と思ったからなのですが、
コードがiOS寄りだったり、モジュールを探してもiOSのモジュールしかなかったすること、ありませんか?Android派のみなさん。
今回はそんなiOSのAdmobモジュールについて書きます。
ここまで大体2014のコピペ
#Admobモジュールについて
そもそもすでに謹製モジュールは存在するのですが
このモジュールはSDKのバージョンが古く、
しょっちゅうSDKアップデートしろよログが出たり
最近の流行りであるインタースティシャルが使えなかったりするので、
ここはアップデートしなければと思い立った次第です。
#というわけで
作りました。
https://github.com/coe/ti.admob
一通りドキュメントにも書いたのですが、
Admob.startAdMobIntersBanner("YOUR Interstitial AD UNIT ID HERE")
でインタースティシャル広告を読み込んで、
Admob.addEventListener("interstitialDidReceiveAd", function(e) { Admob.presentInterstitialFromRootViewController(); });
のような感じで、広告受信を検知して、インタースティシャル広告を出すことができます。
##使用上の注意
このモジュールのビルド及びモジュールの使用には最新のAdmob SDKが必要です。
https://developers.google.com/admob/ios/download
中身のGoogleMobileAds.frameworkを、/Library/Frameworks/にコピーしてください。
こうすることによってモジュールのビルドや使用ができるようになります。
1.9.0のAdmob SDKはスタティックライブラリだったのでモジュールに直接含めることができたんですが、最新のSDKはフレームワークであるがゆえの対処です。
##もう一個ついでに注意
Admobは一部広告にURLスキームを利用するようですが、iOS9ではこういう問題が存在するため、
tiapp.xmlのタグ内に以下を書くと幸せになれるかもしれません。
<key>LSApplicationQueriesSchemes</key> <array> <string>itms-books</string> <string>kindle</string> </array>