BEADのUnity用プラグインを組み込む際にかなり手間がかかったので他の人が同じような事にならないようにメモを残す。
BEADとは
BEADでは最近のカジュアルゲームで頻繁に見るダイアログ型広告を提供してくれる。
ちなみにBEADの読み方はビードと読むらしい。
http://bead-ad.com/lp/
ダイアログ型広告が表示できない時
ダイアログが表示できない時にチェックする項目は次の通り
- 広告枠フォーマットが「レクタングル大 (300 x 250) 」になっているか確認する
- XcodeのLinked Frameworks and Librariesからリファレンス指定のフレームワークが全て読み込まれているか確認する
- XcodeのBuild setting で“Other Linker Flags”に –ObjC と–all_load に追加する
それぞれ詳細は次に述べる
広告枠フォーマットを「レクタングル大 (300 x 250) 」
広告枠フォーマットは管理画面からあらかじめ設定するが、この項目は初回しか設定できない。表示できない場合はまずここを確認すること。
また、まずはBEADプラグインに同梱されているサンプルプロジェクトとサンプルシーンを実行して実機で確認することがオススメで、サンプルで表示できない場合はこの広告枠フォーマットが間違っている可能性がある。
XcodeのLinked Frameworks and Libraries
利用するフレームワークを指定しているかをチェックすること。
XcodeのBuild setting で“Other Linker Flags”
“Other Linker Flags”に –ObjC と–all_loadを追加せずに実行した場合、[UIImage animatedImageWithAnimatedGIFData]が見つからないというエラーによりアプリケーションはクラッシュする。
おそらくこれはカテゴリでUIImageに対してアニメーションGIFを表示するメソッド追加を有効にしているのだろう。
正直、このためだけならカテゴリでUIImageを拡張せずコーディングすることでこのような設定の手間を省いてもらいたい。UnityではXcodeのプロジェクトファイルを生成するため、その設定をわざわざ毎回変更するのは手間になり非常にバランスが悪い作りになっている。
またリファレンスではBuild settingsについて最後の方に書かれていて分かりづらい。これはフレームワークの設定周辺に書いてあるべきだと思う。