2013-03-18 126 views
5

我只包含這一個應用程序:爲什麼我會泄漏?

- (void)viewDidLoad 
{ 
    [super viewDidLoad]; 

    //Authenticate Local GameCenter player 
    [[GKLocalPlayer localPlayer] authenticateWithCompletionHandler:^(NSError *error) 
    { 
     [GKTurnBasedMatch loadMatchesWithCompletionHandler:^(NSArray *matches, NSError *error) 
      { 

      }]; 
    }]; 
} 

而且馬上,我得到一噸泄漏。難道我做錯了什麼?我使用ARC。

enter image description here

+1

看起來像它來自你正在使用的圖書館,沒有多少你可以做的,我不認爲 – Fonix 2013-03-18 09:26:44

回答

4

GKTurnBasedMatchloadMatchesWithCompletionHandler:方法中漏入在IOS 6.0.1,which has been fixed in iOS 6.1一個已知的問題。

P.S.在iOS 6中不推薦使用authenticateWithCompletionHandler:方法,但它不負責泄漏。

+0

感謝您的建議。我將「Based SDK」更改爲6.1,泄漏消失了。但是,如果我將基礎SDK設置爲6.1,那會限制可以下載應用程序的人員嗎?沒有6.0到<6.1可以下載它? – BlackMouse 2013-03-18 09:55:40

+0

@ user1251004這是正確的。由於泄漏不在您的應用程序中,而是在Apple的代碼中,所以您無法對此做任何處理。我會將基礎SDK保持在6.0,因爲泄漏不是很大,並且也是不重複的(即每次成功認證只發生一次,而不是每分鐘發生一次)。 – dasblinkenlight 2013-03-18 10:08:23