2012-02-17 52 views
1

我通常能夠計算爲什麼sigabrts發生,但我完全卡在這一個..我從遠程通知啓動應用程序,這一切工作正常,直到它得到這個代碼位:NKAssetDownload addAssetWithRequest apns sigabrt

NKIssue *issueNK = [[NKLibrary sharedLibrary] issueWithName:[issueId stringValue]]; 
if (issueNK == nil) { 
    issueNK = [[NKLibrary sharedLibrary] addIssueWithName:[issueId stringValue] date:[NSDate date]]; 
} 

NSMutableDictionary* settings = [[[NSMutableDictionary alloc] initWithContentsOfFile:[[NSBundle mainBundle] pathForResource:@"Settings" ofType:@"plist"]] autorelease]; 
NSURL *downloadURL = [NSURL URLWithString: 
         [NSString stringWithFormat:[settings objectForKey:@"IssueBundleUrl"], [issue.issueId intValue]]]; 
NSURLRequest *request = [NSURLRequest requestWithURL:downloadURL]; 
NKAssetDownload *assetDownload = [issueNK addAssetWithRequest:request]; //sigabrt on this line 
[assetDownload downloadWithDelegate:issueListViewController]; 

在調試器中,issueNK和請求都似乎很好,沒有零或任何東西。

有什麼想法?謝謝。

回答

1

我猜想你會在該行看到異常的唯一原因是如果問題已經下載或正在下載。所以你需要首先檢查你的問題的狀態:

NKIssue *issueNK = [[NKLibrary sharedLibrary] issueWithName:[issueId stringValue]]; 
if (issueNK == nil) { 
    issueNK = [[NKLibrary sharedLibrary] addIssueWithName:[issueId stringValue] date:[NSDate date]]; 
} 

if ([issueNK status] != NKIssueContentStatusNone) 
    return; 

NSMutableDictionary* settings = [[[NSMutableDictionary alloc] initWithContentsOfFile:[[NSBundle mainBundle] pathForResource:@"Settings" ofType:@"plist"]] autorelease]; 
NSURL *downloadURL = [NSURL URLWithString: 
        [NSString stringWithFormat:[settings objectForKey:@"IssueBundleUrl"], [issue.issueId intValue]]]; 
NSURLRequest *request = [NSURLRequest requestWithURL:downloadURL]; 
NKAssetDownload *assetDownload = [issueNK addAssetWithRequest:request]; 
[assetDownload downloadWithDelegate:issueListViewController]; 
+0

謝謝,有一個勾號。注意 - 當調試器以「等待應用程序啓動」的方式運行時,您似乎無法在控制檯中看到異常。 – jonydep 2012-02-17 10:51:55