2012-02-17 10 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]; 

デバッガでは、問題NKと要求はどちらも問題ありません。どちらも問題ありません。

ありがとう。

答えて

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