1

所以让你了解正在发生的事情的最好方法可能是向你展示这个

http://img.photobucket.com/albums/v246/homojedi/Screenshot2012-07-24at135229.png

奇怪的是,我没有参与,因为这是 facebook ios SDK 正在调用所有这些 SBJson 解析器的东西,因为我不知道它的存在,直到我进行内存泄漏测试,因为我的应用程序告诉我它有内存警告1级或2级。

您可能需要一些代码,因为您可能会感到困惑,而我将大多数代码简化为这个,它似乎仍然会发生

-(void)OnLoad
{
_permissions = [[NSArray arrayWithObjects:@"read_stream", @"publish_stream", nil] retain];

if( _facebook == nil )
{
    _facebook = [[Facebook alloc] initWithAppId:@"359953307393080" andDelegate:self];
}

[self CheckForPreviousAccessToken];

if(_isConnected)
{
    [_facebook requestWithGraphPath:@"me" andDelegate:self];
    [_facebook requestWithGraphPath:@"me/friends?fields=installed" andDelegate:self];
    [_facebook requestWithGraphPath:@"me/friends" andDelegate:self];

}
}

- (BOOL) CheckForPreviousAccessToken
{
_isConnected = NO;

NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];

if( [defaults objectForKey:@"FBAccessTokenKey"] && [defaults objectForKey:@"FBExpirationDateKey"] )
{
    _facebook.accessToken = [defaults objectForKey:@"FBAccessTokenKey"];
    _facebook.expirationDate = [defaults objectForKey:@"FBExpirationDateKey"];

    if(![_facebook isSessionValid])
    {
        [_facebook authorize:nil];
        _isConnected = NO;
    }
    else 
    {
        _isConnected = YES;
    }
}


return _isConnected;
}

任何人都知道是什么导致了这些大量泄漏?

干杯

4

1 回答 1

0

通过魔法和/或巫术,这个小问题已经不复存在,最奇怪的是我没有明确地试图纠正它……我只是在做一些一般性的泄漏修补,我一定是像现在这样严重地泄漏了一些东西不再出现在泄漏仪器中......我很抱歉,我应该尝试立即修复泄漏,而不是让它们代替集成更多功能。

于 2012-11-20T08:40:12.060 回答