iPhone Hata Ayıklama: 'İşlem için görev alınamadı' sorunu nasıl çözülür?


158

XCode'a bir ön hazırlık profili ekledim (bildirimleri ve uygulama satın alımını desteklemek için gerekli), geçici dağıtım için yapılandırma yapılandırması gerektiği gibi ayarladım ve uygulamayı cihazda çalıştırmayı denedim (bunu geçmişte birkaç kez yaptım , problemsiz).

Uygulama yüklü, ancak başlamıyor. Konsolda aşağıdaki mesajı görüyorum:

Error launching remote program: failed to get the task for process 82.
Error launching remote program: failed to get the task for process 82.
The program being debugged is not being run.
The program being debugged is not being run.

Ancak, uygulamayı cihazda manuel olarak başlatırsam, beklendiği gibi çalışır. Son zamanlarda Snow Leopard için en son XCode 3.2'yi kurdum. Bu XCode'un bu sürümünde bilinen bir hata mı yoksa yanlış bir şey mi yapıyorum?

DÜZENLEME: Geliştirme ön hazırlık profilini kullanarak sürüm dağıtımı ile iyi çalışır. Kullandığım cihazı içerdiğinden emin olmak için geçici provizyon profilini tekrar kontrol ettim.


Ayrıca bu yardımcı olabilir: Git -> Projeler -> DerivedData silmek ve temizlemek. Proje ve
Hedef'teki

Yanıtlar:


110

Uygulama, hata ayıklama için cihaza yüklemek için gerekli olmayan bir Entitlements.plist dosyası içerdiğinde XCode aracılığıyla cihazda ikili hata ayıklama sorunları yaşadım. Genel olarak, daha sonra, bu dosyayı (App Store için gerekli olduğu) sürüm yapıları için ekledim ve hata ayıklama için kaldırdım (böylece uygulamayı XCode'dan hata ayıklayabilirim). Sorun burada olabilir.

Güncelleme : (en azından) Ağustos 2010'dan (iPhone 4.1 SDK) itibaren, Entitlements.plist'in artık birçok durumda uygulamanıza dahil edilmesi gerekmemektedir (örneğin, App Store üzerinden dağıtım.) Durumlar hakkında daha fazla bilgi için buraya bakın. Entitlements.plist gerekli:

ÖNEMLİ: Bir Yetki dosyası genellikle yalnızca Geçici Dağıtım için derleme yapılırken veya Anahtarlık veri paylaşımını etkinleştirirken gerekir. Bunlardan hiçbiri doğru değilse , Kod İmza Yetkileri'ndeki girişi silin . (benimkini vurgula)


Haklısın, gerçekten de hata ayıklamayı engelleyen Entitlements.plist içinde get-task-allow boolean değerinin false olarak ayarlandığını doğruladım. Teşekkür ederim.
Massimo Cafaro

1
FYI, tam olarak aynı sorunu yaşadım ve sorunu çözen şey, get-task-allow ile EVET olarak ayarlanmış yetkilendirme dosyasını EKLEMEK oldu ... yani aynı sorununuz varsa ve yetkiler dosyanız yoksa, eklemeyi deneyin ...: P
Alex Zak

İOS 8.1.3 itibariyle entitelments.plist ayrıca kurumsal imzalı uygulamalar için de gereklidir.
Roy K

289

Geçici profil hata ayıklamayı desteklemez. Bir Geliştirme profiliyle hata ayıklamanız ve Geçici profilini yalnızca hata ayıklanamayan kopyaları dağıtmak için kullanmanız gerekir.


Bildiğim kadarıyla bu bilgiyi developr program portalında görmedim. Ancak fbrereto'ya yaptığım yorum bunun neden böyle olduğunu açıklıyor: Entitlements.plist dosyasına ne hata ayıklamada ne de sürüm yapılandırmalarında sahip değiliz.
Massimo Cafaro

5
Yanlışlıkla XCode 4'te bir iPhone dağıtımına kod imzalama kimliğini ayarladıktan sonra aynı sorunu yaşadım
cpungaliya

1
"Başlat" ı tıklarsam profili nasıl hata ayıklamaya
geçiririm

Apple'ın senin için koyduğu küçük tuzaklardan sadece bir tanesi. Sadece bir portal böcek sayesinde tüm profillerimi ve sertifikalarımı tekrar yaptıktan sonra oldu ... iç çekti. Bilgi için teşekkürler, sorunumu düzelttim.
n13

Sorunumun cevabı buydu. W / yetkileri ile ilgisi yoktu.
43'te DOOManiac

37

Aynı sorunu yaşadım, ancak aşağıdaki basit adımları izleyerek çözdüm:

  1. Serbest bırakmak yerine hata ayıklamayı seçtiğinizden emin olun.
  2. Hata ayıklama yapılandırmalarında, proje ayarlarında, geliştiricinin profilini seçmiş olmanız ve yetkiler plistini belirtmenize gerek yoktur.
  3. Ayrıca aynı ayar aşağıdadır: Hedefler: manuall değilse, hata ayıklama yapılandırması için bunları yukarıdaki ile değiştirin. Çalışacak.

Herşey gönlünce olsun.


Bunun işe yaramasının nedeni, Debug yapılandırmanızın Entitlements.plist'te get-task-allow ayarlanmış olması, ancak Release One'da değil - bu, hata ayıklayıcıyı App Store'dan aldıkları kopyalamaya ekleyen kişileri durdurmaktır (bkz. Ayrıca Kai, işe almak için evet olarak ayarlanmasıyla ilgili aşağıdaki cevabı ..)
dsmudger

Benim için yaptım. Bir şekilde yapı 'bırakma' olarak ayarlandı ve yayın profilleri doğru şekilde ayarlanmadı.
KPK

19

Anlamak biraz zaman aldı.

Bir dağıtım / geçici / profil kullanıyorsanız, xcode aracılığıyla test edemezsiniz. Hatayı alırsınız: Hata ayıklanan program çalıştırılmıyor.

Uygulamayı oluşturabilir, uygulamanızın xcode'daki ürünler klasörüne gidebilir, proje adınızla dosyayı tıklayabilir ve bulucuda göster'i seçebilirsiniz. Bu uygulamayı iTunes'a sürükleyip senkronize edebilirsiniz ve bu noktada uygulamanızı cihazınızda test edebilirsiniz.


Evet, bu benim sorunumdu. Yetki dosyam yoktu, ancak hata ayıklama yapılandırmamı bir dağıtım profiline geçirmiştim. Bir geliştirme profiline geçmek her şeyi düzeltti.
vocaro

1
Keşke XCode bu konuda daha açık olsaydı. XCode'a bağlıyken bir cihazdaki dağıtım derlemesini test edemeyeceğiniz hiç de belli değil. Bu yaygın bir kullanım durumudur.
user798719

13

Böyle bir hata alıyorsanız, bunun tek nedeni Xcode'daki bir geliştirme profili veya eksik bir Yetki özelliği yerine bir Dağıtım profili kullanmak olabilir. Entitlements.plist'i kullanmıyorsanız, uygulamanın tek bir dağıtım profili ile paketlenmesi olası tek hata olabilir. Derleme günlüklerini onaylayarak bunu doğrulayabilirsiniz. Bunu değiştirmek için projenin Yapı Ayarı'na gidin ve Kod İmza Varlığı ayarını doğrulayın. Hata ayıklamanın çalışması için bu ayar, kullanmakta olduğunuz yapılandırma için bir geliştirici profili olmalıdır.

https://developer.apple.com/library/ios/#qa/qa1682/_index.html

Anında sonuçlar için, tüm mobil temel hazırlık profillerini xcode'dan silin ve kullanmak istediğiniz geliştirici profilini yükleyin.


13

Bu konuda neredeyse 2 saat! Ve sonunda onu değiştirerek çözdüm.

iPhone Geliştiricisi

için

iPhone Geliştirici: Geliştirici hesabım

Debug's için CODE_SIGN_IDENTITY:

  1. Proje Hedefi Seçin
  2. Derleme Ayarları
  3. Göre ara "kod işareti"
  4. Değiştir CODE_SIGN_IDENTITY ile bölümün ayıklama satır "iPhone Developer: My Dev Hesap Adı" değil, sadece "iPhone Geliştirici" .

Neden çalıştığını bilmiyorum, ama işe yarıyor! En azından benim için!


Ortam: Xcode 5.0 (5A1412).


bu da benim için çalıştı, teşekkürler. tam olarak hangi kimlikleri kullanacağını bilmek zorundaydı, ama sonunda belli bir kombinin hoşuna gitti. Xcode 6 gerçekten bu tür şeyler için bir "otomatik düzeltme" özelliğine ihtiyacı, temizlik için zamanım yok !!
John Contarino

1
Sadece buna yaptığım şeyi eklemek benzerdi, ama farklıydı - Profili, kod imzalayıcıyı "otomatik" olarak ayarlayan ekip profili (hata ayıklama için kullanılır) olarak değiştirdim - XCode 5+'de gerçekten bir yapı için profil seçme ve buna dayalı olarak hangi imzalayanın kullanacağına karar vermesine izin verme.
Kendall Helmstetter Gelner

@KendallHelmstetterGelner thx, bu başkalarına yardımcı olabilir! : D
Kjuly

Ayrıca,
XCode'da

1
Bu, farklı bir kod imzalama kimliğiyle yeniden oluşturma dışında hiçbir şey yapmadan bu sorunla ilgili sorunumu çözdü. Teşekkür ederim! Benim durumumda geçici bir dağıtım kimliği kullanıyordum.
Sean Michael Dorian

12

Kod imzalama bölümünüzü kontrol edin. Kod imzalamanın iPhone olduğundan emin olun


Bu benimkini yaptı - Hedefimdeki bir nedenden dolayı 'Takım' 'Hiçbiri' olarak değişti - geri değiştirmek onu sıraladı. Şerefe
Ralpharoo

9

Entitlements.plist dosyasını açın ve get-task-allow boolean değerini YES olarak ayarlayın - hata ayıklayıcı şimdi ekleyebilir!


ya ben birçok kez denedim ve neden bu sorunu çözmez anlamıyorum. hala testflightapp
owen gerig

Ben benim çalışma düzeni hata ayıklamak için ayarlanmış. Sadece bu çözüm benim için düzeltti! Teşekkür ederim.
Pieter

Teşekkürler Gerçekten bana yardım !!
Amir Hudani

4

Düzenleri Düzenle'ye gidin ve Çalıştır -> Bilgi -> Yapılandırma Oluştur altında, Geçici'den Hata Ayıkla'ya değiştirin. Kaydetmek için Tamam'ı tıklayın.


1

Telefonunuzda süresi dolmuş bir geliştirme profiliniz olabilir.

Geliştirme ön hazırlık profilimin süresi birkaç gün önce doldu ve bunu yenilemek zorunda kaldım. Yeni profili telefonuma yükledim ve uygulamamı çalıştırmayı denediğimde aynı hata mesajıyla karşılaştım. Telefonumdaki profil ayarlarına baktığımda süresi dolmuş profili fark ettim ve kaldırdım. Bu benim için hatayı temizledi.


1

Yalnızca dağıtım profilini seçtiğimi düşündüğüm için Xcode'dan uygulamayı başlatmaya çalıştığımda bu hatayı aldım. Derleme başarılı oldu, bu yüzden .ipa dosyası oluşturdum. Uygulamayı çalıştırmak için testflightapp.com'u kullandım. İTunes'u da kullanabilirsiniz.


1

Buffernet tarafından belirtildiği gibi, hata ayıklamak için bir dağıtım sağlama profili kullanamazsınız. Bir geliştirici sağlama profiline geçtiğimde, "Bu Yürütülebilir Dosya İçin Geçerli Bir Sağlama Profili Bulunamadı" hatasını aldım.

Bunun için hızlı bir google beni aşağıda listelenen makaleye yönlendirdi. Oradan, iPhone'um Hazırlama Portalı'na ve ilgili diğer tüm öğelere eklenmediğinden geçerli bir geliştirme ön hazırlık profiline sahip olmadığımı fark ettim.

Bir iPhone geliştirici temel hazırlık profili çalıştırdığınızdan ve cihazınızın temel hazırlık portalına eklendiğinden emin olun!

http://iosdevelopertips.com/xcode/a-valid-provisioning-profile-for-this-executable-was-not-found.html


0

Evet, dağıtım amaçlı ön hazırlık profilleri, yani Dağıtım ön hazırlık profilleri hata ayıklamayı desteklemez ve bu hatayı verir. Hata ayıklama ön hazırlık profilini oluşturun ve kullanın (developer.apple.com hesabından ön hazırlık profili oluştururken buna dikkat edin).



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.