2

iAdをサポートするユニバーサルプロジェクトを(iPhoneアプリだけで)設定するにはどうすればよいですか?

iPhone SDK 4を使用して、次の手順を実行するとします。

  1. XCodeを開きます。
  2. [ファイル]>[新しいプロジェクト]に移動します;
  3. ウィンドウベースのアプリケーション(またはその他)を選択し、[製品]:[ユニバーサル]を選択します(その後、プロジェクトの名前を選択します)。

通常どおり、iPhone/iPadグループを使用してユニバーサルプロジェクトスケルトンを作成します。ここで、iAdをiPhoneアプリに統合することにしたので、次のようにします。

  1. [フレームワーク]>[追加]>[既存のフレームワーク...]というプロジェクトのグループを右クリックします。
  2. iAd.framework >追加を選択します

ここまでは順調ですね。ActiveExecutableをプロジェクト名として使用してビルドして実行するだけです-iPhoneSimulator4.0で、プロジェクトは正常に実行されます。ActiveExecutableをProjectName - iPadSimulator3.2に変更するとします。iAd.frameworkはフレームワークで正常に参照されていますが(赤い色でマークされていません)、iPadシミュレーターでアプリがクラッシュし、次のエラーメッセージが表示されます。

dyld:ライブラリがロードされていません:/System/Library/Frameworks/iAd.framework/iAd参照元:/ Users / nexia1 / Library / Application Support / iPhone Simulator / 3.2 / Applications / 8479EE14-28AA-4628-A668-CCF3FE770628/Untitled。アプリ/無題の理由:画像が見つかりません

このようなユニバーサルプロジェクトでiAdを使用できますか?(iPhoneアプリでのみ参照している場合でも)。

前もって感謝します

4

1 に答える 1

3

フレームワークを弱くリンクする必要があり、コードでクラスが存在するかどうかを尋ねます。

Appleには、これについて同様の例があります:http: //developer.apple.com/iphone/library/samplecode/MailComposer/index.html

これは、2.xで実行されている間、3.0のアプリ内メールシートに関するものですが、要点はわかります。

于 2010-06-24T16:59:20.700 に答える