İOS uygulamasına başlatıldıktan sonra hata ayıklayıcı nasıl eklenir?


102

Sorun gidermeye çalıştığım bir sorunum var, bu çok seyrek oluyor ve Xcode altında çalışan işlerim olduğunda gerçekleşmiyor gibi görünüyor.

Sorunum ortaya çıkana kadar bir uygulamayı normal olarak (yani Springboard'dan) çalıştırmak ve ardından bu noktada bir hata ayıklayıcı eklemek mümkün mü?

Mümkünse bunu jailbreak yapmadan yapmayı tercih ederim.

Yanıtlar:


125
  • Mac'inize bağlı cihazınızı takın
  • Hata Ayıkla> İşleme PID veya Ada göre Ekle
  • Diyalog sayfasında, uygulamanızın adını, Xcode ile başlatıldığında Debug gezgininde göründüğü şekilde girin.

Uygulama zaten çalışıyorsa, hata ayıklayıcı çalışan işleme eklenir. Çalışmıyorsa, uygulamanın başlatılmasını ve ardından eklenmesini bekleyecektir.


Ole, cevap için teşekkürler. Bunu yapmanın bir yolunu arıyordum. Hata ayıklayıcıyı eklemeye gittiğimde, iliştirilmiş gibi görünüyor, ancak sonra şu mesajı alıyorum: uyarı: / var / mobile / Applications / {GUID} / {APPNAME} .app / {APPNAME} için semboller okunamıyor (dosya değil bulundu). XCode'da "durdur" düğmesine bastığımda, uygulama sona eriyor. Hata ayıklama modunda oluşturulmasına rağmen hata ayıklama sembollerini bulamıyor gibi görünüyor. Herhangi bir fikir?
Brian

4
İle ilgili bir sorunum var Çalışmıyorsa, uygulamanın başlatılmasını ve ardından eklenmesini bekleyecek. Bölüm. Çalışmıyor. Uygulamanın aramasını beklemek için işlem adını kullanıyorum. Uygulamayı iPhone'da başlatıyorum, ancak hata ayıklayıcı uygulamanın başladığını asla fark etmiyor.
Jonny

1
@BrianV - sürece ekleyebilmek istiyorsanız -ggdb ile derlediğinizden emin olmalısınız.
itfische

4
Jonny'ye katılıyorum; Benim deneyimim, ekin simülatörde çalıştığı, ancak gerçek cihaza takılmayacağıdır.
James Moore

4
NOT: Xcode 5.0.1+ sürümünde Debug > Attach to Process > By Process Identifier (PID) or Name stackoverflow.com/a/20193088/175830
Jason Axelson

117

Bunu burada bırakacağım çünkü diğer 2 yanıtın hiçbiri bana biraz uğraşmadan yeterince ayrıntı vermedi.

  1. Uygulamanızı simülatörde çalıştırın ve Hata Ayıklama gezginindeki adı not alın görüntü açıklamasını buraya girin

  2. Cihazınızı takın ve cihazınızı hedef olarak seçmeyi unutmayın görüntü açıklamasını buraya girin

  3. Hata Ayıklama> İşleme Ekle> İşlem Tanımlayıcısına (PID) veya Ada Göre görüntü açıklamasını buraya girin
  4. 1. adımdaki adı girin ve ekleyin. Tek yapman gereken bu olmalı. görüntü açıklamasını buraya girin

8
1000 olumlu oyunuz olmalıdır. Bir cutom url şemasıyla başlayan şeylerin hatalarını ayıklamak, bu düzgün numara olmadan başınızı ağrıtabilir. Çok teşekkürler!
txulu

2
Keşke bu cevabı kendi
başıma çözmek için

7
Bu, sürece bağlı olduğu için çalışıyor, ancak gerçekten ihtiyacım olan herhangi bir günlük çıktısı elde edemiyorum. Herhangi bir fikir?
Orlando

2
@Orlando - Günlük çıktısı arıyorsanız, DeviceConsole'u şiddetle tavsiye ederim: github.com/rpetrich/deviceconsole
orion elenzil

1
Tam olarak önerdiğin gibi yaptım. ve hata alıyorum: Could not attach to PIDHem adı hem de kimliğini denedim. Uygulama çalışırken ve dururken denedim ..
Honey

49

Xcode 5.0.1 ve 6'da menü çubuğu öğeleridir:

Debug > Attach to Process > By Process Identifier (PID) or Name...

7

Xcode 7'de sadece:

Debug > Attach to Process by PID or Name...
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.