2011-10-05 31 views
7

Yeni oAuth2 facebook SDK uygulamasını uygulamamda uygulamaya çalışıyorum ama hayata geçirilemediğinde, hayata geçirildikten sonra uygulamamı nasıl geri almam gerektiğini anlayamıyorum doğrulanmış.Facebook iOS SDK benim uygulamama geri dönmüyor

Amacım, kullanıcıların duvarına ileti göndermektir.

Şu anda bununla giriş prosedürü başlıyorum:

-(void)tryFBlogin { 

NSString *appId = @"113142482******"; 

NSArray *permissions = [[NSArray arrayWithObjects:@"publish_stream",nil] retain]; 

TheAppDelegate *theAppDelegate = (TheAppDelegate *)[[UIApplication sharedApplication]delegate]; 

//Asking for permission 
theAppDelegate = (TheAppDelegate *)[[UIApplication sharedApplication] delegate]; 
theAppDelegate.facebook = [[Facebook alloc] initWithAppId:appId andDelegate:self]; 
Facebook *fb = [theAppDelegate facebook]; 
[fb authorize:permissions]; 

} 

safari tarayıcısını açmadan hangi. Zaten giriş yaptım ve uygulamayı yetkilendirdiysem mesajım bana söyleyecek ve basmak için OKT tuşuna bastım.

Tamam düğmesine bastığımda, Safari'nin sayfayı açamayacağını belirten bir uyarı alıyorum. Uyarıyı onaylıyorum ve boş bir safari penceresine bakıyorum.

Facebook'ta oturum açmış olursam, doldurduğum giriş ekranı ile sunuyorum ve daha sonra yukarıdakiyle aynı şekilde sunuyorum.

Yayınlama komutunu hiçbir zaman uygulamaya koymadığımı anlıyorum, çünkü bunun nerede ve ne zaman uygulanacağını bilmiyorum.

ben etapta bu temsilci yöntemi var ama bu bu yere yerleştirmek için bekleyen var kodudur

- (void)fbDidLogin { 

    NSLog(@"fbDidLogin"); 
} 

denilen olsun asla görünüyor:

NSMutableDictionary* params = [NSMutableDictionary dictionaryWithObjectsAndKeys: 
kAppId, @"113142482******", 
facebookUrl, @"link", 
@"http://www.domain.com", @"picture", 
@"My Message", @"name", 
@"Caption text!", @"caption", 
@"Message text.", @"message", 
nil]; 

[facebook dialog:@"feed" andParams:params andDelegate:self]; 

Ben de aşağıdaki yöntemleri var benim uygulamalarım ana AppDelegate:

-(BOOL) application:(UIApplication *)application handleOpenURL:(NSURL *)url{ 
    [facebook handleOpenURL:url]; 
return YES; 
} 

Herhangi bir yardım/öneri çok fazla olabilir ppreciated.

Teşekkür

Mark

+0

Uygulamanızı, plist'inizdeki (CFBundleURLTypes) facebook sdk'den geri arama açmak için kaydettiniz mi? – mja

+0

Bu benim aptallık ya da belirsiz talimatlar oldu emin değilim ama benim sorun fb113142482 ****** olması gerektiğinde fb [113142482 ******] tanımlayan oldu. Bu, köşeli ayraçsızdır. – crooksy88

cevap

25

Bu aynı sorunu vardı için AppID'si yazmalısınız.

.plist file 
    "URL types" 
    "Item 0" 
     "URL Schemes" 
     "Item 0" 
      "fb21593853845xxxx" 
+0

Bu konuda biraz daha ayrıntılı bilgi verebilir misiniz? "Fb21593853845xxxx" değeri nedir? – Dermot

+1

Elbette! Bu, Facebook iOS SDK belgeleri başına eklenen bir "fb" öneki ile "Uygulama Kimliği/API Anahtarı" alanının (geliştiricilerinizdeki geliştiriciler.facebook.com/apps sayfanızda, Ayarlar altında bulunan) değeridir. –

+0

Bu öğreticinin "fb" harf gereksinimlerini vurgulamış olabileceğine yemin ederim. Sadece fbYOUR_APP_ID diyor, bunun sadece sayı olduğunu farz ettim. Sayıların önündeki "fb" ye ihtiyacım olacağını hiç düşünmemiştim. – Zhang

0

Arg, sen kod kaynağı olarak daha iyi açık .plist görmelisiniz:

<key>CFBundleURLTypes</key> 
<array> 
    <dict> 
     <key>CFBundleURLSchemes</key> 
     <array> 
      <string>fb38*******</string> 
     </array> 
    </dict> 
</array> 
Sadece burada Xcode 4.2 benim iPhone uygulaması için konuyu sabit yöntemle, diğer cevaplar bazılarına açıklık getirmek
İlgili konular