× [PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。 |
AdColonyのSDKを導入していて、エラーが出た。
こんな感じ。 同じ問題にぶつかっている人も→いた adcというのはおそらく AdColony の略だし、要するに、NSDataの拡張(Extension)が読み込まれていないということだろう。 それに対応するため、 Other Linker Flagsに
を追加しろ、とAdColonyのマニュアルには書いてある。ここ これはObjective-Cのイマイチなところだ。 しかしこれで別のところに問題が出た。
どうやらcocos2d-xのどこかに、未定義の変数が残っているようだ。 GCController*** という名前のものらしい。 該当するソースを読んでみると、どうもコントローラー対応周りの実装だ。 というわけで、 GameController.framework をプロジェクトに追加して再ビルドしてみる。 …するとうまく行った。 同じ要領で、 GoogleAnalytics周りでもエラーが起きた。 これは libsqlite3.dylib libAdIdAccess.a を追加することで治る。 ◯まとめ ・実装があるはずなのにリンクエラーになるメソッド、変数などは -all_load(または-ObjC)を付加するとうまくいく ・-all_loadをつけたことでエラーになる場合は、実装がプロジェクトに追加されていない。 実装がありそうなライブラリ、フレームワークを予想して追加してみる 本当は、-all_loadってむやみに使いたくない。実行ファイルが大きくなるから。 各社SDKは考慮しておいてほしいところ。 PR |
|