2016-07-29 19 views
0

Xcodeで実行したときにアプリケーションが正しく動作する問題が発生していますが、手動で起動するとクラッシュします。私はあまりにも多くの投稿を行ってきましたが、具体的な回答は見つかりませんでした。その後、Xcodeで実行していないとアプリケーションがクラッシュする

Thread 0 name: Dispatch queue: com.apple.main-thread 
Thread 0 Crashed: 
0 libobjc.A.dylib     0x0000000180ff5b9c objc_msgSend +28 
1 AppSupport      0x0000000183159f0c _updateDetachedRecord + 32 
2 AppSupport      0x0000000183159ffc CPRecordGetProperty + 52 
3 AppSupport      0x000000018315a270 CPRecordCopyProperty + 24 
4 AddressBook      0x0000000187774498 ABRecordCopyValueUnfiltered + 68 
5 AddressBook      0x00000001877743bc ABRecordCopyValue + 68 

私は私のアドレス帳にアクセスし、(ユーザーがクリックした方)の連絡先の詳細を取得しようとしていますと表示:私はここに、私はクラッシュの原因だと思うスニペットがあり、デバイスのログをチェックしますそれはポップオーバーで。コードのスニペットは次のとおりです。

NSString *firstName = (__bridge NSString *) ABRecordCopyValue(person, kABPersonFirstNameProperty); 
NSString *lastName = (__bridge NSString *) ABRecordCopyValue(person, kABPersonLastNameProperty); 
NSString *company = (__bridge NSString *) ABRecordCopyValue(person, kABPersonOrganizationProperty); 
NSString *title = (__bridge NSString *) ABRecordCopyValue(person, kABPersonPrefixProperty); 
ABMultiValueRef emails = ABRecordCopyValue(person, kABPersonEmailProperty); 
NSString *email = (__bridge NSString *)(ABMultiValueCopyValueAtIndex(emails, 0)); 
ABMultiValueRef phoneNo = ABRecordCopyValue(person, kABPersonPhoneProperty); 
NSString *phnNo = (__bridge NSString *)(ABMultiValueCopyValueAtIndex(phoneNo, 0)); 
ABMultiValueRef skyepeIDs = ABRecordCopyValue(person, kABPersonInstantMessageProperty); 
NSDictionary *skyepeID = (__bridge NSDictionary *)(ABMultiValueCopyValueAtIndex(skyepeIDs, 0)); 

P .:私がXcodeで実行すると、アプリケーションは完全に正常に動作します。

+1

スウィフトコンパイラ/コード生成下のビルド設定でリリースビルド用のSwiftコンパイラの最適化を無効にしてください。それでもまだ完全モジュール最適化を試みてください。 – Buntylm

+1

アドレス帳をフェッチしていますか起動時に? –

+0

または起動時に別の処理を実行していますか? –

答えて

2

リリースモードでアプリをクラッシュさせる理由はたくさんありますが、私が直面したことはCompiler Optimisationに起因していました。ドキュメントごとにSwiftコンパイラはまだベータ版ですので、マイナーな問題がたくさんあることがあります。これはSwift Optimiserに関連しています。最適化せずにリリースすればよいのでタイムリーに更新し、最適化を行わなければ問題は解決します。 (私はどこかでそれを学んだので、私は質問スレッドを持っていないので、私に検索させてください)。

enter image description here

NOTEしかし、はい、それは確かです。 Swift Optimisationが最適化できないコード行があります。それでそれを見つけようとすると、ここのみんなにとって本当に素晴らしいことになるでしょう。

+0

ビルド設定 - > Apple LLVM 7.1-コード生成から、デバッグとリリースの両方がNone [-Oo]に設定されていましたが、それは役に立ちませんでした。 – TKutal

+0

ビルド設定 - > Swift Complier - コード生成 - >最適化レベル。 – Buntylm

+0

ビルド設定には、スウィフトコンプライアー - コード生成はありません。 Btw私はSwiftを使用していないので、どのように役立ちますか?申し訳ありません、私はnoobieです。 – TKutal

関連する問題