2011-11-30 30 views
28

Geçmişte, eski ve iyi Xcode 3 ile, her kilitlendiğimde, Xcode, kazayı gösteren satırda durdu. İyi zamanlardı, hata ayıklaması güzeldi. Xcode her zaman bir çökmeden sonra main.m konumunda duruyor

Şimdi Xcode 4.2 ile, her zaman uygulama kilitleniyor, bu çökmesine neden olan şeye hiçbir ipucu verir bu hat

int retVal = UIApplicationMain(argc, argv, nil, @"AppDelegate"); 

de main.m durur. Sorun herhangi bir sınıfta olabilir, ancak kilitlendiğinde main.m'de her zaman duracaktır.

Yeniden düzgün çalışmasını sağlamanın bir yolu var mı?

sayesinde

not: Ben SO önce bu istediler, ama bu sefer verilen çözüm değildir tatmin edici olduğu kanıtlanmıştır ve sorun devam.

Onlar davranışı değişti
+0

çalışmalıdır. Yeni bilgileri sağlamak için orijinal sorunuzu düzenleyin ve ön sayfaya geri gönderin. –

+0

Eskisini silmek istedim. – SpaceDog

cevap

42

takip this tutorial to break on all exceptions

DÜZENLEME:Xcode 4.2 gizli mücevherlerinden

biri “İstisna olan (Bağlantı rot olabilir, bu yüzden burada bilgisini yinelemek olacaktır) Kesme noktası ”özelliği. Bunu etkinleştirdiğinizde, hata ayıklama hayatınız çok daha kolay olur, çünkü uygulamanızda bir istisna her ne zaman atılırsa, Xcode istisnanın oluşmasına neden olan kod satırını getirecektir. Bu özellikle çağrı yığını pencereniz boşsa (bazen iOS uygulamalarında çalışırken gördüğüm) yararlıdır. İstisna türünden ve hata mesajından çok daha fazlasını içermeyen Çıkış bölmesinde kısa bir hata mesajına güvenmek yerine, sorunun tam olarak nerede olduğunu göreceksiniz!

Sen sol alt köşesindeki X düğmesine Kesme noktası Navigator bölmesini açarak ve tıklayarak bir durum kesme noktasını ekleyebilir

: “İstisna kesme noktasını ekle ...” menü öğesini tıkladıktan sonra

, bu kesme noktası yapılandırma görünümü göreceksiniz açmak:

Bitti düğmesini tıklayın ve irade b listenizdeki yeni İstisna kesme Noktası reakpoints. “Kullanıcı” tıkladıktan sonra

: Eğer sahip olmak istiyorsanız Xcode çalışma alanlarının tümünü İstisna Kırılma noktası sağ tıklayın include “Kesme Noktasını To Move” menü öğesi üzerinde (Ctrl + tıklama) ve açmak Alt menüde, Özel Durum Kesme Noktası'nın, kesme noktaları Kullanıcı grubunun içinde olduğunu görürsünüz. Başka bir proje açın ve otomatik olarak kesme noktaları listesine dahil edilir. ayıklama

Mutlu!

+13

Teşekkürler. Çıldırmış olmalılar. Bu değişimin anlamı nedir? Geliştiricilerin hayatlarını perişan yapar mı? Teşekkürler!!!!!!!!!!!!!!!! – SpaceDog

+0

bunu xcode'ta kalıcı olarak ayarlamanın herhangi bir yolu var mı? – SpaceDog

+0

, öğreticinin "Kullanıcı" ya taşınmasının bitimindeki bit, onu kalıcı hale getirir – BarrettJ

5

Sadece benim için çalışan aşağıdaki adımları deneyin.

  1. Tercihler'i açıp Davranışlar sekmesini seçin.
  2. Sol sütundan "Beklenmedik çıkışları çalıştır" ı seçin.
  3. "Geçerli görünümlere sahip hata ayıklayıcısını göster" i seçin. Ne yazık ki bu editör geri main.m için döndürüldü

yine aşağıda izleyin

  1. Açık Tercihler adım Davranışlar sekmesini seçmeniz gerekir Şimdi :).
  2. Sadece açılır menüden "Geçerli" gitmek için hedef değiştirmek Orada
  3. "Göster" satırı bulun "run tamamlar" gidip aynı satırda onay kutusunu
  4. tıklayın.

Bu yine aynı soruyu göndermeyin, İleride

+1

vay. Bir sonraki sürüm Apple, yapılandırmayı zorlaştırmalı. Teşekkürler – SpaceDog

+0

Hahah! Hala ** EXACT ** aynı hataları var. Hiçbir şey söylemeyen bir dosyaya atlamak mantıklı değil. Tüm kutuların işaretini kaldırırsam, (Apple'ın bana öğrettiği gibi) NOTING'in gerçekleştiğini kabul ediyorum. Bunun yerine bir şey olur. * "Kullanıcı bu etkinlik için hiçbir şey yapmak istemezse, rastgele anlamsız bir dosyaya atlayın" * Üzgün. –

İlgili konular