iPhoneでFacebookConnectを使用する場合、フレームワークに組み込まれている付属のログインボタンとログイン画面を使用する必要がありますか?私が尋ねる理由は、私もTwitterを使用していて、ユーザーがFacebookにログインするときと同じユーザーエクスペリエンスをユーザーに提供したいからです。したがって、Facebook ConnectがTwitterに使用するログイン画面を複製することも、FacebookConnectのログイン画面を一緒に使用しないこともできます。
1 に答える
ログインボタン:いいえ。ログイン画面:はい。iPhone用のFriendFeedアプリにFBConnect統合を追加し、かき混ぜて、ログインボタンをスキップしました。代わりに、ユーザーはUIActionSheetの[Facebookで共有]ボタンを選択でき、ユーザーが認証されているかどうかに応じて、アプリはログイン画面を表示するか、リンクを自動的に投稿します。
これがあなたのためのコードスニペットです。セッションが正常に再開されると、FBSessionオブジェクトのデリゲートのメソッドが呼び出されます。
if (![fbSession resume]) {
FBLoginDialog* dialog = [[[FBLoginDialog alloc] initWithSession:fbSession] autorelease];
[dialog show];
}
- (void)session:(FBSession*)session didLogin:(FBUID)uid {
NSLog(@"Hooray, I'm logged in to Facebook!");
}
上記の私の例で少し漠然としていることをお詫びします。正直なところ、私はFBConnectが少し謎であることに気づき、それを実装し、アプリでできるだけ早くそれから逃れるために最善を尽くしました。さらに詳しい情報が必要な場合はお知らせください。より具体的な回答をまとめます。
以下のリクエストによると:
のクラスメソッドを使用してFBSession
オブジェクトを取得できます。セッションオブジェクトを呼び出します。が返されると、すぐにデリゲートのメソッドが呼び出されます。ここで、FBに依存するアクションを配置する必要があります。正常に機能しない場合は、上記のコードスニペットに示すように、を作成する必要があります。わかる?さらに情報が必要な場合はお知らせくださいFBSession
+sessionForApplication:secret:delegate
-resume
YES
-session:didLogin:
-resume
FBLoginDialog