2010-12-27 3 views
0

Ich benutze neueste SDK für Facebook für iPhone-Anwendung. Mein Problem ist, dass ich die Sitzung nicht durch die Anwendung aufrechterhalten konnte. Jedes Mal, wenn ich neue Facebook-Variablen erstellen und initialisieren muss, damit die App funktioniert. Aber das führt zu mehreren Sitzungen Und wenn ich eingeloggt bin, dann zeigt es "LOGIN" in der nächsten Registerkarte. Hier Szenario istNeueste FBConnect mit Objective-C-Anwendung

1) Home Tab, angemeldet i in

2) Zweite Tab, die Taste für Facebook zeigt, dass ich anmelden bin nicht, ich muss erneut anmelden.

und so weiter mit der dritten Registerkarte.

Gibt es eine Möglichkeit, dass ich eine Sitzung in der gesamten Anwendung behalten?

Können Sie mir in diesem Problem führen

[_facebook isSessionValid]; 

es mir zurück, dass die Session nicht gültig ist, können Sie mir bitte in dieser Hinsicht helfen. Bitte führen Sie mich.

permissions = [[NSArray arrayWithObjects:@"read_stream",@"read_mailbox", @"offline_access",@"read_friendlists", @"friends_location", @"friends_birthday",@"friends_about_me",@"friends_hometown",@"friends_relationships",@"friends_relationship_details",nil] retain]; 

facebook = [[Facebook allok] initWithAppId: appId]; [facebook autorisieren: Berechtigungen delegieren: selbst];

ich diesen Code in App delegieren setzen und es in neue View-Controller wie diese

fb = [[Facebook alloc] init]; 
fb = appdel.facebook; 

zugewiesen Aber es sagt noch einmal versuchen, aufgetreten Fehler (korrigiert)

Dank

Antwort

0

shouldn Sie Verwenden Sie keine neue Facebook-Variable mit jeder Seite. Sie müssen einen globalen Speicherort an einem Ort haben, der für die verschiedenen Ansichten/Klassen zugänglich ist. Sie können dies leicht tun, indem Sie die Facebook-Variable im App-Delegaten speichern. Die Klassen können diese Facebook-Objekt verweisen wie folgt:

((YourAppDelegate *)[UIApplication sharedApplication].delegate).facebook

(unter der Annahme, dass Sie eine Eigenschaft haben facebook in AppDelegate genannt)

hoffe, das hilft!

+0

1 Sache, bitte, muss ich tun, wie unten? fb = [[facebook alloc] init]; fb = appdel.facebook; –

+0

Ich bin mir nicht sicher, wo Sie es Ihrem neuen View-Controller zugewiesen haben. Sie können es entweder Ihrem View-Controller zuweisen oder von Ihrem View-Controller aus auf die Variable des App-Delegaten zugreifen, wie oben erwähnt. – donkim

0

Ich habe ein paar Tage mit FBConnect gekämpft und fand nicht, dass die Dokumentation von github.com mir half. Jedes Mal, wenn ich versuchte, ein Testfoto von meiner iPad-App auf meine Facebook-Seite hochzuladen, erhielt ich einen error_code = 101 Ungültigen API-Schlüssel.

Ich reparierte dies, indem Sie die sehr klare Anweisungen an:

http://developers.facebook.com/docs/guides/mobile/

, die Sie Schritt für Schritt durch den Prozess Schritt nimmt.