2012-05-08 2 views
1

Я внедрил Facebook в своем приложении и заметил, что у меня есть некоторые проблемы, которые я просто не могу понять.App Crash after Facebook single signon

Когда Facebook-подписчик возвращается в мое приложение после утверждения в Facebook.app, во время работы и отладки с XCode .. вид приложения - зависание при возобновлении, и примерно через 30-40 секунд он переключается на страницу, запросила аутентификацию на facebook. Когда я запускаю приложение автономно, без отладки в XCode приложение вылетает через 10 - 15 секунд. Я вытащил журнал аварий с устройства, и это результат: http://pastebin.com/MeT7Rt52

Когда я тестирую это в симуляторе, происходят одни и те же вещи ... хотя вместо этого он использует Safari. Я не верю, что Facebook или Safari является или может быть источником проблемы ... так как этого не может быть.

Я искал и искал, но не могу найти ответ на эту проблему.

Вот некоторые из моего кода в моем AooDelegate:

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions 
{ 
    NSSetUncaughtExceptionHandler(&uncaughtExceptionHandler); 
    [FlurryAnalytics startSession:APP_FLURRY]; 

    [TestFlight takeOff:APP_TESTFLIGHT_KEY]; 
    facebook = [[Facebook alloc] initWithAppId:APP_FB_APP_ID andDelegate:self]; 

    self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]]; 
    [self.window setBackgroundColor:[UIColor scrollViewTexturedBackgroundColor]]; 

    [...] 

    return YES; 
} 

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

- (void)fbDidLogin { 
    NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults]; 
    [defaults setObject:[facebook accessToken] forKey:@"FBAccessTokenKey"]; 
    [defaults setObject:[facebook expirationDate] forKey:@"FBExpirationDateKey"]; 
    [defaults synchronize]; 
} 
+0

Вы тестируете в iOS Simulator? –

+0

Да, я тоже проверил его там ... забыл добавить это к моему сообщению. Добавлено сейчас. –

ответ

0

Я выделил проблему, и ответ на вопрос - это то, чего я не ожидал. В моем приложении я использую API TestFlightApp. Я запускаю его, когда приложение запускается, как и должно ... однако, это также то, что не позволяет приложению вернуться в прежнее состояние (как кажется).

Я отклонил TestFligthApp, и приложение возобновилось как следует.

Благодарим за ответы!

0

Facebook SDK полна ошибок, то, что я использую Facebook + синглтон, который сочетает в Facebook SDK в одноплодной форму, что делает его намного легче работать с.

+0

Хорошо, хорошо знать. Однако это не решает мою проблему. –

2

Я не думаю, что это решит проблему, но вы можете попробовать добавить этот метод:

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

- (BOOL)application:(UIApplication *)application handleOpenURL:(NSURL *)url устарела.

Смежные вопросы