5

iOSのFacebookSDKは初めてです。プロジェクトのビルド中にこのエラーが発生するのはなぜですか...

FacebookSDKのiOSチュートリアルの基本的な手順で新しいプロジェクトを作成するだけです。

  • Facebook SDKをダウンロードします(私は3.1.1を使用します)
  • Xcode(私は4.5.2を使用しています)
  • に「-lsqlite3.0」をOther Linker Flags追加Build Setting
  • FacebookSDK.frameworkを追加する
  • FacebookSDKResources.bundleを追加する
  • FBUserSettingsViewResources.bundleを追加します

そして、私はビルドを試みます、すべてが大丈夫です..それで、私はAppDelegateで基本的な実装を書き続けます

- (BOOL)application:(UIApplication *)application
            openURL:(NSURL *)url
  sourceApplication:(NSString *)sourceApplication
         annotation:(id)annotation {
    return [FBSession.activeSession handleOpenURL:url];
}

#import <FacebookSDK/FacebookSDK.h>

ビルドしようとするとエラーが出てきます...これがログです

Undefined symbols for architecture armv7:
  "_OBJC_CLASS_$_ACAccountStore", referenced from:
      objc-class-ref in FacebookSDK(FBSession.o)
  "_ACFacebookAudienceFriends", referenced from:
      -[FBSession authorizeUsingSystemAccountStore:accountType:permissions:defaultAudience:isReauthorize:] in FacebookSDK(FBSession.o)
  "_ACFacebookAppIdKey", referenced from:
      -[FBSession authorizeUsingSystemAccountStore:accountType:permissions:defaultAudience:isReauthorize:] in FacebookSDK(FBSession.o)
  "_ACAccountTypeIdentifierFacebook", referenced from:
      +[FBSession renewSystemAuthorization] in FacebookSDK(FBSession.o)
  "_ACFacebookAudienceKey", referenced from:
      -[FBSession authorizeUsingSystemAccountStore:accountType:permissions:defaultAudience:isReauthorize:] in FacebookSDK(FBSession.o)
  "_ACFacebookAudienceOnlyMe", referenced from:
      -[FBSession authorizeUsingSystemAccountStore:accountType:permissions:defaultAudience:isReauthorize:] in FacebookSDK(FBSession.o)
  "_ACFacebookPermissionsKey", referenced from:
      -[FBSession authorizeUsingSystemAccountStore:accountType:permissions:defaultAudience:isReauthorize:] in FacebookSDK(FBSession.o)
  "_OBJC_CLASS_$_ASIdentifierManager", referenced from:
      objc-class-ref in FacebookSDK(FBSettings.o)
  "_ACFacebookAudienceEveryone", referenced from:
      -[FBSession authorizeUsingSystemAccountStore:accountType:permissions:defaultAudience:isReauthorize:] in FacebookSDK(FBSession.o)
ld: symbol(s) not found for architecture armv7
clang: error: linker command failed with exit code 1 (use -v to see invocation)

例と同じSDKと同じ設定を使用しているため、これは奇妙であることがわかりましたScrumptious。また、例は正常に実行されています。その間、このエラーが発生しました...

何か案が?

4

1 に答える 1

23

私は答えを得ました...FacebookIOS SDK 3.1は、動作するためにより多くのフレームワークを必要とします。それは、 IOS6で利用可能な「アカウント」、「AdSupport」および「ソーシャル」フレームワークを必要とします。Facebook SDK 3.1に基づいて作成されているためIOS6

注:アプリを古いバージョンのオペレーティングシステム用にもビルドする場合は、iOS6固有のフレームワークにOPTIONALフラグを使用する必要があります。こんな感じです。

ここに画像の説明を入力してください

于 2012-11-29T08:52:38.720 に答える