ข้อผิดพลาดเมื่อทำการทดสอบกับเครื่องจำลอง iOS: ไม่สามารถลงทะเบียนกับเซิร์ฟเวอร์ bootstrap


370

ฉันกำลังทดสอบแอพของฉันบนตัวจำลองเมื่อมันล้มเหลวในการคลิกปุ่มของ UIAlertView ฉันหยุดแก้ไขจุดบกพร่องที่นั่นทำการเปลี่ยนแปลงบางอย่างกับรหัสและสร้างแอปอีกครั้ง ตอนนี้เมื่อฉันเรียกใช้แอปพลิเคชันฉันได้รับข้อผิดพลาดนี้ในคอนโซล

ไม่สามารถลงทะเบียน com.myApp.debug กับเซิร์ฟเวอร์ bootstrap ข้อผิดพลาด: รหัสข้อผิดพลาดที่ไม่รู้จัก ซึ่งโดยทั่วไปหมายความว่าอินสแตนซ์อื่นของกระบวนการนี้กำลังทำงานอยู่หรือหยุดทำงานในโปรแกรมดีบั๊กโปรแกรมรับสัญญาณ:“ SIGABRT”

ฉันพยายามลบแอพออกจากตัวจำลองทำการสร้างใหม่ทั้งหมด แต่ฉันยังคงได้รับข้อผิดพลาดนี้เมื่อฉันพยายามเรียกใช้แอป

ฉันควรทำอย่างไรจึงจะสามารถเรียกใช้แอพพลิเคชั่นในตัวจำลองของฉันได้อีกครั้ง


2
คำแนะนำใด ๆ เกี่ยวกับสิ่งที่ต้องทำเมื่อสิ่งนี้เกิดขึ้นขณะทำการทดสอบบนอุปกรณ์ ฉันลองรีสตาร์ทอุปกรณ์ Xcode แล้ว
iPadDeveloper2011

1
ฉันยังพยายามลบแอปบนอุปกรณ์ออกจากแอปที่ใช้งานอยู่ทั้งหมด (ดับเบิ้ลคลิกที่บ้านกดนิ้วที่ไอคอนแอพแตะที่เครื่องหมาย '-') เพื่อรีสตาร์ท Xcode ออกจากระบบและเข้าสู่ระบบอีกครั้ง จนถึงตอนนี้ยังไม่มีอะไรทำงาน
iPadDeveloper2011

ลอง "ล้างแคช" ในเมนู XCode ที่ช่วยเช่นกัน
lostInTransit

3
สำหรับทุกคนที่ประสบปัญหานี้คิดในภายหลังสิ่งนี้เกิดขึ้นเกือบทุกครั้งเนื่องจากข้อผิดพลาดในรหัส มองหาโค้ดบางส่วนที่ใช้เวลาในการประมวลผลนานหรือนำแอปไปวนซ้ำ
lostInTransit

4
เมื่อสิ่งนั้นเกิดขึ้นฉันเพิ่งฆ่า SimulatorBridge และออกจากโปรแกรมจำลอง ps ax | grep SimulatorBridge
Elland

คำตอบ:


162

ลองเลิกและเริ่มโปรแกรมจำลองใหม่หรือไม่ หาก "แย่ลงมาถึงแย่ที่สุด" คุณสามารถลองเริ่มใหม่ได้: จากประสบการณ์ของฉันสิ่งนี้ควรแก้ไข


44
จบลงด้วยการรีสตาร์ทระบบ! ยังไม่ทราบว่าเกิดจากสาเหตุใด!
lostInTransit

6
ดังที่ความคิดเห็นด้านล่างบอกว่าโดยปกติคุณจะเห็นกระบวนการหยุดชะงักในการตรวจสอบกิจกรรมและฆ่ามันที่นั่น
mxcl

13
ฉันเกลียดการเริ่มต้นใหม่ :) การออกจากกระบวนการแฮงค์ใช้งานได้สำหรับฉัน: ps ax | grep Simulator จะแสดงแอพที่กำลังรันอยู่ในกรณีของฉันคือ MyApp.app ที่หยุดทำงาน
BadPirate

12
รีสตาร์ทไม่ได้ช่วย
Pascal Klein

10
ฉันมักจะได้รับสิ่งนี้ใน XCode 4.3 การรีสตาร์ทแอพพลิเคชั่นหรือการออกจากโปรแกรมจำลองไม่ได้ช่วยอะไร ฉันต้องรีสตาร์ทคอมพิวเตอร์เพื่อให้มันใช้งานได้
Øystein

242

สถานะ:สิ่งนี้ถูกมองว่าเป็นเมื่อเร็ว ๆ นี้เป็น Mac OS 10.8 และ Xcode 4.4

tl; dr:สิ่งนี้สามารถเกิดขึ้นได้ในสองบริบท: เมื่อใช้งานบนอุปกรณ์และเมื่อทำงานกับเครื่องจำลอง เมื่อทำงานบนอุปกรณ์การตัดการเชื่อมต่อและเชื่อมต่ออุปกรณ์ใหม่ดูเหมือนจะแก้ไขสิ่งต่าง ๆ

ไมค์แอชแนะนำ

launchctl list|grep UIKitApplication|awk '{print $3}'|xargs launchctl remove

มันไม่ทำงานตลอดเวลา ที่จริงแล้วมันไม่ได้ผลสำหรับฉัน แต่มันใช้ได้ผลในบางกรณี แค่ไม่รู้ว่ากรณีใด ดังนั้นมันจึงคุ้มค่าที่จะลอง

มิฉะนั้นวิธีเดียวที่ทราบในการแก้ไขปัญหานี้คือการรีสตาร์ทผู้ใช้ launchd การรีบูตเครื่องจะทำเช่นนั้น แต่มีวิธีที่รุนแรง / เร็วกว่าน้อยกว่า คุณจะต้องสร้างผู้ใช้ผู้ดูแลระบบคนอื่น แต่คุณต้องทำครั้งเดียวเท่านั้น เมื่อสิ่งต่างๆเข้าสู่ระบบออกจากตัวคุณเข้าสู่ระบบในฐานะผู้ใช้รายนั้นและฆ่า launchd ที่เป็นของผู้ใช้หลักของคุณเช่น

sudo kill -9 `ps aux | egrep 'user_id .*[0-9] /sbin/launchd' | awk '{print $2}'`

user_idแทนชื่อผู้ใช้หลักของคุณสำหรับ การเข้าสู่ระบบอีกครั้งเมื่อผู้ใช้ปกติของคุณพาคุณกลับสู่สถานะมีสติ ค่อนข้างเจ็บปวด แต่น้อยกว่าการรีบูทเต็มรูปแบบ

รายละเอียด:

สิ่งนี้เริ่มเกิดขึ้นบ่อยขึ้นกับ Lion / Xcode 4.2 (โดยส่วนตัวฉันไม่เคยเห็นมาก่อนหน้าชุดค่าผสมนั้น)

ข้อผิดพลาดน่าจะเป็นใน launchd ซึ่งสืบทอดกระบวนการแอปเป็นลูกเมื่อดีบักเกอร์หยุดการดีบักโดยไม่ฆ่ามัน โดยปกติจะมีการส่งสัญญาณโดยแอปกลายเป็นซอมบี้โดยมีสถานะกระบวนการของ Z เป็น ps

ปัญหาหลักดูเหมือนจะอยู่ในเซิร์ฟเวอร์ชื่อ bootstrap ซึ่งมีการใช้งานใน launchd (เท่าที่ฉันเข้าใจ) นี้แมปรหัสแอปไปยังพอร์ตเครื่อง เมื่อมีการเรียกใช้ข้อผิดพลาดแอพจะตาย แต่ไม่ได้ล้างออกจากแผนผังเซิร์ฟเวอร์ชื่อเซิร์ฟเวอร์ของ bootstrap และด้วยเหตุนี้เซิร์ฟเวอร์ bootstrap ปฏิเสธที่จะอนุญาตให้มีการลงทะเบียนอินสแตนซ์อื่นของแอปภายใต้ชื่อเดียวกัน

หวังว่า (ดูความคิดเห็น) ที่บังคับให้ launchd wait()สำหรับซอมบี้จะแก้ไขสิ่งต่าง ๆ แต่มันก็ไม่ได้ ไม่ใช่สถานะซอมบี้ที่เป็นปัญหาหลัก (ซึ่งเป็นสาเหตุให้ซอมบี้บางตัวไม่เป็นพิษเป็นภัย) แต่เป็นเซิร์ฟเวอร์ชื่อ bootstrap และไม่มีทางรู้แน่ชัดว่าการกำจัด launchd นี้สั้นเพียงใด

ดูเหมือนว่าข้อผิดพลาดจะถูกเรียกโดยสิ่งที่ไม่ดีระหว่าง Xcode, gdb และผู้ใช้ launchd ฉันเพิ่งกดลิ่มซ้ำโดยเรียกใช้แอปในเครื่องจำลอง iPhone โดยหยุดทำงานภายใน gdb จากนั้นทำการสร้างและเรียกใช้ไปยังเครื่องจำลอง iPad ดูเหมือนจะอ่อนไหวต่อการสลับการจำลอง (iOS 4.3 / iOS 5, iPad / iPhone) มันไม่ได้เกิดขึ้นตลอดเวลา แต่ค่อนข้างบ่อยเมื่อฉันเปลี่ยนเครื่องจำลองจำนวนมาก

การฆ่า launchd ในขณะที่คุณล็อกอินจะทำให้เซสชันของคุณแย่ลง การออกจากระบบและการลงชื่อกลับเข้าใช้ไม่ได้ทำให้ผู้ใช้เปิดใช้ OS X คอยดูแลกระบวนการที่มีอยู่ การรีบูตจะแก้ไขสิ่งต่าง ๆ แต่มันเจ็บปวด คำแนะนำข้างต้นเร็วกว่า

ฉันส่งข้อบกพร่องไปยัง Apple, FWIW แล้ว rdar: // 10330930


2
ขอบคุณสำหรับคำอธิบายอย่างละเอียดเกี่ยวกับพฤติกรรมใหม่ของ Lion / XCode4.2 ดูเหมือนว่าจะเกิดขึ้นบ่อยครั้งเมื่อทำการดีบั๊กแอพสองตัวแยกกัน
samkass

2
มันไม่ใช่แค่ Lion ยังคงใช้ Snow Leopard ที่นี่และดูข้อผิดพลาดนี้หลายครั้งตั้งแต่เข้าสู่ XCode 4.2 (ใช้ในการใช้ XCode 3.x จนกว่า iOS SDK 5.0 จะวางจำหน่าย)
Jonny

3
ขอบคุณสำหรับข้อมูล ... สิ่งนี้กำลังเกิดขึ้นกับฉันอย่างบ้าคลั่งเมื่อเร็ว ๆ นี้ ... สองครั้งในช่วง 10 นาทีที่ผ่านมา ค่อนข้างยากที่จะทำให้เวิร์กโฟลว์ที่มั่นคงดำเนินต่อไปเมื่อฉันต้องรีสตาร์ทอย่างต่อเนื่อง ดีไปรีสตาร์ทคอมพิวเตอร์ของฉันอีกครั้ง
Brad Goss

1
@smparkes: ดูเหมือนว่ามันจะเกิดขึ้นบ่อยครั้งกว่าเดิม ฉันเพิ่งเปลี่ยนชุดรวมและทุกอย่างทำงานได้อีกครั้ง แต่มันน่ารำคาญเมื่อทำงานกับ CoreData ตรรกะที่คุณกำลังพยายามที่จะแก้ปัญหา น่ารำคาญน้อยกว่าการบูตเครื่องใหม่ แต่ฉันจะยอมรับ
Mike A

2
4.3.1 และมันเกิดขึ้นตอนนี้ ... น่ารำคาญมาก สำหรับฉันแล้วการรีสตาร์ท iPhone เองโดยปกติจะแก้ปัญหาฉันไม่จำเป็นต้องรีสตาร์ท Mac มันเกิดขึ้นกับ XCode 4.2 ภายใต้ Snow Leopard ประมาณเดือนกันยายน 2554 สำหรับฉัน
TheEye

70

ฉันพบว่าฉันเริ่มมีปัญหากับ Lion + Xcode 4.2 ฉันยังประสบปัญหาใน Xcode 4.3

ฉันลองทำตามคำแนะนำทั้งหมดแล้ว แต่ก็ไม่มีใครทำงานได้เลยนอกจากการรีบูทเต็มรูปแบบ

นี่คือวิธีที่คุณพิจารณาว่าคุณต้องการรีบูตอย่างรวดเร็วหรือไม่

ทำรายการกระบวนการซอมบี้ทั้งหมดของคุณ:

ps -el | grep 'Z'

หากคุณเห็นแอปของคุณระบุว่าเป็นกระบวนการ Zombie คุณจะต้องรีบูตเครื่อง ข้อความแสดงข้อผิดพลาดระบุ "โดยทั่วไปหมายความว่าอินสแตนซ์อื่นของกระบวนการนี้กำลังทำงานอยู่หรือหยุดทำงานในดีบักเกอร์" Xcode กำลังตรวจจับกระบวนการซอมบี้นี้ซึ่งคุณไม่สามารถฆ่าได้ วิธีเดียวที่คุณสามารถแก้ไขได้คือรีบูตระบบ :(

แก้ไข, 20120823:ฉันมีความรู้ที่ดีขึ้นเกี่ยวกับกระบวนการซอมบี้ดังนั้นฉันจึงต้องการอัปเดตคำตอบนี้ กระบวนการ Zombie ถูกสร้างขึ้นเมื่อกระบวนการหลักไม่เรียกใช้ wait () (รอให้กระบวนการเปลี่ยนสถานะ) ในกระบวนการ child ที่ยุติ คุณไม่สามารถเรียกใช้ 'kill' โดยตรงบนกระบวนการ Zombie แต่ถ้าคุณฆ่ากระบวนการหลักกระบวนการลูกซอมบี้จะถูก 'reaped' และลบออกจากตารางกระบวนการ

ฉันไม่ได้เห็นปัญหานี้มานานแล้วดังนั้นยังไม่ได้ตรวจสอบเพื่อดูว่ากระบวนการหลักในสถานการณ์นี้คืออะไร ทางเลือกอื่นในการฆ่ากระบวนการพาเรนต์คือการรีบูตระบบ :)


ขอบคุณฉันมี 7 โปรแกรมจาก 3 โปรแกรมที่ฉันทำงานเพื่อใช้เป็นซอมบี้
ArtSabintsev

1
การรีบูตเครื่องนั้นเพียงพอ แต่ไม่จำเป็นดังที่ได้กล่าวมาแล้ว นอกจากนี้ยังมีบางครั้งที่มีซอมบี้อยู่รอบตัวซึ่งไม่ทำให้เกิดปัญหาดังนั้นการค้นหาซอมบี้ด้วยวิธีนี้ไม่ใช่วิธีที่เชื่อถือได้ สัญญาณที่แน่นอนคือข้อความใน Xcode
smparkes

คุณพยายามฆ่ากระบวนการซอมบี้เหล่านี้ในฐานะที่เป็นราก ฉันรีบูตก่อนที่ฉันจะคิดทำ
Ryan H.

1
@smparkes ใช่ว่าจะชัดเจนตามคำถามนี้ซึ่งกล่าวถึงข้อผิดพลาดนี้
jyap

1
@HZC ใช่คุณไม่สามารถฆ่ากระบวนการซอมบี้แม้เป็นราก
jyap

20

ฉันเพิ่งเกิดสิ่งนี้กับฉัน: ฉันได้รับข้อผิดพลาดเฉพาะบนอุปกรณ์ของฉันและเครื่องมือจำลองทำงานได้ดี ฉันต้องรีเซ็ตอุปกรณ์และข้อผิดพลาดหายไป


1
กันที่นี่รีสตาร์ทอุปกรณ์และมันก็หายไป เครื่องจำลองทำงานได้ดี
agente_secreto

15

ฉันมีปัญหานี้บ่อยมากเมื่อเร็ว ๆ นี้ สิ่งที่จะป้องกันไม่ให้เกิดขึ้น? การออกจากระบบและแก้ไขปัญหา แต่ .. มันน่ารำคาญที่ต้องทำบ่อยๆ

แก้ไข:

ฉันเพิ่งพบสาเหตุ ฉันมีข้อผิดพลาดในวิธี ApplicationWillTerminate ดังนั้นเมื่อฉันคลิกปุ่มหยุดในหน้าต่าง Xcode แอปไม่สามารถยุติและเริ่มแขวนได้

ตรวจสอบการตรวจสอบกิจกรรมเพื่อดูว่าแอปของคุณอยู่ในรายการหรือไม่ บังคับให้เลิกถ้าเป็นไปได้


2
นี้แก้ไขให้ฉัน! ps aux | grep Simulator
Jason Prado

ถ้ามันช่วยฉันสร้างบั๊กนี้ในขณะที่เปิดใช้เครื่องมือประสิทธิภาพการรั่วไหล
IssamTP

14

หากคุณพบว่าปัญหาของคุณเกิดจากกระบวนการซอมบี้:

ps -el | grep 'Z'
(ดังในความคิดเห็นก่อนหน้านี้https://stackoverflow.com/a/8104400/464289 ) และเพียงแค่ต้องการแก้ไขปัญหาทันทีคุณสามารถทำได้โดยไม่ต้องรีบูตเครื่องหรือฆ่าอะไรเลย เพียงเปลี่ยนชื่อโครงการเป้าหมายของคุณที่ปฏิบัติการได้:

  1. คลิกที่โครงการในบานหน้าต่างด้านซ้าย
  2. เลือกBuild Settingsในบานหน้าต่างตรงกลาง
  3. ภายใต้ ' บรรจุภัณฑ์ ' เปลี่ยน ' ชื่อผลิตภัณฑ์ ' จาก$ (TARGET_NAME) เป็น $ (TARGET_NAME) .1

ง่าย!


นี้ไม่ได้ผลสำหรับฉันมีข้อผิดพลาดเดียวกันที่ฉันได้รับ: รายละเอียดการจัดเตรียม 'mataleao2' ระบุการประยุกต์ใช้ตัวบ่งชี้ 'au.com.mataleao' ซึ่งไม่ตรงกับการตั้งค่าปัจจุบัน 'au.com.mataleao-1'
sapatos

คุณกำลังทดสอบตัวจำลองหรือบน iPhone หรือไม่?
JRG

ผมทดสอบบน iPhone เพียงฟังก์ชั่นเต๋ฉันทดสอบจะทำงานเฉพาะบนโทรศัพท์มือถือ
sapatos

7

ไม่มีคำตอบ แต่มีการทดสอบอย่างน้อยหนึ่งครั้ง เปิด Terminal และเรียกใช้คำสั่งนี้: "ps-Ael | grep Z" หากคุณได้รับสองรายการหนึ่ง "(เสียงดังกราว)" และอีกชื่อแอปหรือชื่อ บริษัท ของคุณคุณจะถูกซ่อน - รีบูต

หากคุณเป็นนักพัฒนาให้ป้อนบั๊กสั้น ๆ และบอก Apple ว่าการรีบู๊ตนั้นน่ารำคาญมากเพียงใดและพูดถึงว่าพวกเขาสามารถทำซ้ำบั๊กนี้เป็น "rdar: // 10401934" ที่ฉันเพิ่งป้อน

เดวิด


5

การรีเซ็ต iOS Simulator แก้ไขข้อผิดพลาดให้ฉัน แม้ว่าจะเป็นการลบแอพทั้งหมดที่คุณมีใน Simulator แต่ก็สามารถแก้ไขปัญหาได้โดยไม่ต้องรีสตาร์ทเครื่อง

คุณสามารถรีเซ็ต iOS Simulator โดยทำดังต่อไปนี้:

1) ไปที่เมนู "iOS Simulator" ถัดจากโลโก้ Apple () ที่ด้านซ้ายสุดของหน้าจอหลักของคุณ
2) เลือก "รีเซ็ตเนื้อหาและการตั้งค่า ... "
3) อ่านข้อความป๊อปและถ้าคุณยอมรับคลิก "รีเซ็ต" มิฉะนั้นคลิก "ไม่รีเซ็ต"


3
ไม่ได้ช่วยหนึ่งบิตแทนคุณจะสูญเสียทุกเนื้อหา / ปพลิเคชันภาพถ่าย / / รายชื่อ
แปลก

1
@strange มันจำลอง อย่างไรก็ตามมันไม่มีข้อมูลที่สำคัญ :)
Evgen Bodunov

5
  1. ปิดโปรแกรมจำลอง
  2. หยุดแอปไม่ให้ทำงานใน xCode
  3. เปิดการตรวจสอบกิจกรรมและค้นหากระบวนการที่ทำงานด้วยApp NAMEของคุณคุณ
  4. ฆ่ากระบวนการนี้ในการตรวจสอบกิจกรรม
  5. สร้างโครงการของคุณใหม่และคุณควรได้รับการตั้งค่าทั้งหมด

กระบวนการนี้ดูเหมือนว่าจะไม่รอดพ้นจากการถูกสังหารใน Activity Monitor แม้จะมี "Force Quit"
Ferruccio

4

ฉันมีปัญหา @jyap กล่าวถึงกระบวนการซอมบี้ วิธีเดียวในการล้างพวกเขาคือการรีบูต อย่างไรก็ตามฉันสังเกตเห็นว่าเพื่อนของฉันที่ทำงานในโครงการเดียวกันจะได้รับปัญหาเดียวกัน แต่สามารถฆ่าเครื่องจำลองได้โดยไม่ต้องสร้างกระบวนการซอมบี้ ฉันถอนการติดตั้ง Xcode อย่างสมบูรณ์และติดตั้งใหม่และในขณะที่ฉันยังคงได้รับข้อผิดพลาดมันไม่ได้สร้างกระบวนการซอมบี้ดังนั้นฉันจึงไม่ต้องรีบูต

ก่อนที่ฉันจะทำอย่างนั้นฉันใช้วิธีแก้ปัญหาที่น่าเกลียดนี้จริงๆ: เปลี่ยนรหัสแอพของคุณและเรียกใช้อีกครั้ง คุณท้ายด้วยแอปขยะในแอปจำลอง แต่คุณสามารถหยุดการรีบูตเครื่องได้ชั่วคราว


4

ข้อผิดพลาดนี้เกิดขึ้นกับฉันเกือบทุกครั้งที่ฉันทดสอบแอปในเครื่องมือจำลองบังคับให้ฉันเริ่มต้นใหม่

นี่เป็นวิธีแก้ไขหากคุณต้องการทำงานให้เสร็จ:

  • คลิกที่โครงการของคุณในตัวนำทางโครงการ
  • ไปเป้าหมาย -> ข้อมูล
  • เพิ่มคีย์สำหรับแอพลิเคชันไม่ได้ทำงานในพื้นหลังYESและตั้งค่าให้

นี่หมายความว่าเมื่อคุณกดปุ่มโฮมในตัวจำลองหรือออกจากโปรแกรมจำลองแอพจะไม่หยุดทำงาน

อย่าลืมเปลี่ยนการตั้งค่านี้ก่อนการแจกจ่าย! วางไว้ในรายการตรวจสอบการเปิดตัวของคุณ :)


1
สิ่งนี้เป็นอันตรายเนื่องจากจะป้องกันไม่ให้คุณทดสอบพฤติกรรมที่มีพื้นหลังจนกว่าคุณจะจำได้ว่าต้องเปลี่ยนกลับ
tc

@tc: ใช่ฉันเห็นด้วย อย่างไรก็ตามหากคุณถูกบังคับให้เริ่มต้นใหม่ทุกครั้งที่คุณเรียกใช้แอพ iOS (ซึ่งเป็นสิ่งที่ฉันมี) แล้วนี่อาจจะดีกว่าทางเลือกอื่น
Chris Burt-Brown

4

หากสิ่งนี้เกิดขึ้นเมื่อทำการทดสอบบน iPhone เพิ่งรีสตาร์ทโทรศัพท์ จากสิ่งที่ฉันได้รับแจ้งจากโทรศัพท์หรืออุปกรณ์จำลองยังคงเชื่อว่ามีอินสแตนซ์ของแอปที่ใช้งานอยู่ดังนั้นเมื่อมันถูกเรียกใช้ครั้งสุดท้ายมันไม่ได้ถูกยกเลิกอย่างถูกต้องทำกับข้อผิดพลาดในรหัสของคุณหรือโทรศัพท์ / อุปกรณ์จำลอง คราง.


4

ฉันได้รับข้อผิดพลาดนี้ในขณะที่ทำการดีบักแอปของฉันบน iPhone 4 การรีบูต iPhone อย่างหนักแก้ปัญหาของฉันได้ (ปิดเครื่อง iPhone ค้าง ... )

ฉันไม่มีกระบวนการ zombie บน mac ของฉันและการรีบูตเครื่อง mac ไม่ได้แก้ปัญหา

บางทีข้อผิดพลาดนี้อาจปรากฏขึ้นทั้งในเครื่องจำลองและอุปกรณ์จริง ???



3

ฉันเพิ่งพบข้อผิดพลาดนี้ ฉันลองรีสตาร์ทเครื่องมือจำลองและ Xcode แต่โครงการของฉันจะทำงานได้อีกครั้งหลังจากทำความสะอาดและสร้าง ไม่รู้ว่าเกิดจากอะไร


3

ฉันมีตัวตั้งค่าแบบเรียกซ้ำที่พัดผ่านกองซ้อนและฆ่าแอปของฉันด้วยวิธีที่ฉันต้องเปิดเครื่อง iPad มันสามารถพิสูจน์ได้ด้วยการแก้ไขในรหัส


3

ฉันมีปัญหาเดียวกันและแก้ไขได้โดยทำดังต่อไปนี้

  • การลบแอพออกจากอุปกรณ์
  • การตัดการเชื่อมต่ออุปกรณ์จาก Mac
  • การปิดและเปิดอุปกรณ์
  • การออกและเปิด Xcode ใหม่
  • เครื่องมือการเลิก
  • ในที่สุดทำความสะอาดและสร้างอีกครั้ง

ฉันยังทำอีกอย่างหนึ่งเนื่องจาก Xcode ถูกกำหนดค่าให้ใช้ iOS 5.0 และโครงการของฉันใช้ iOS 4.3

  • ลบเฟรมทั้งหมดและเพิ่มอีกครั้ง

คำถามสำหรับ Simulator ไม่ได้สำหรับอุปกรณ์
ไวรัส

3

วิธีแก้ปัญหาอื่น:

  • ตั้งค่าตัวระบุใหม่ให้แอปของคุณ หากเรียกว่า com.foobar.myapp ให้เรียกว่า com.foobar.myapp01

คุณสูญเสียข้อมูลทั้งหมดในแอปเนื่องจากเป็นแอปใหม่ที่ทำงานอยู่ไกลเท่าที่ iPhone มีส่วนเกี่ยวข้อง สิ่งนี้อาจจะหรืออาจจะไม่น่ารำคาญกว่าการรีบู๊ต - แค่อยากจะเพิ่มเข้าไปในรายการ


3

สาเหตุ

การรันแอพของคุณใน Simulator ก่อนที่แอปที่รันก่อนหน้านี้จะหยุดทำงานอย่างสมบูรณ์

การแก้ไข

รอจนกว่าคุณจะเห็นปุ่มหยุดใช้งานอีกครั้งก่อนที่จะทำงานอีกครั้ง

(ฉันใช้ Xcode 4.2.1 ปัญหานี้เกิดขึ้นบ่อยมากเมื่อฉันอัพเกรดเป็น OS X Lion)


เพิ่งได้รับข้อผิดพลาดนี้อีกครั้ง ฉันลองทุกอย่างและในที่สุดรีสตาร์ท iPad ก็ซ่อมมัน
5bars

2

แก้ไขโดยการรีบูตโทรศัพท์หลังจากลบแอพแล้วสร้างใหม่ให้สะอาดและทำงานอีกครั้ง ทำงานได้ดีในขณะนี้

แปลก.


2

ไม่จำเป็นต้องสร้างใหม่หรือติดตั้งใหม่สำหรับปัญหาของฉันและในกรณีของฉันข้อผิดพลาดปรากฏขึ้นเมื่อพยายามเรียกใช้แอปบน iPhone เครื่องจำลองทำงานได้ดี

วิธีแก้ปัญหา: ลบแอพออกจากโทรศัพท์ทำการรีสตาร์ทเครื่องใหม่และตอนนี้ก็เรียบร้อยดี


2

เกิดขึ้นมากมายสำหรับฉันด้วย Xcode 4.2.1 ใน Lion อัปเดตเป็น 4.3.2 และจะไม่เกิดขึ้นอีก ดีใจที่พวกเขาแก้ไขมัน


2

Mike Ash โพสต์วิธีแก้ปัญหา (พระเจ้าอวยพรเขา!) ที่ไม่ต้องรีบูต เพิ่งรัน:

launchctl list|grep UIKitApplication|awk '{print $3}'|xargs launchctl remove

คำสั่งด้านบนแสดงรายการงานเปิดตัวทั้งหมดค้นหางานที่มี UIKitApplication ในชื่อ (ซึ่งจะเป็นงานที่สอดคล้องกับแอปของคุณที่ติดอยู่รอบ ๆ อย่างไม่เหมาะสม) แตกชื่อแล้วบอกให้ Launchd กำจัดงานนั้น


ฉันมีโอกาสมากมายที่จะทดสอบ (ถอนหายใจ) บางครั้งก็ใช้งานได้บางครั้งฉันต้องรีบูต iPhone ของฉันหรือแม้แต่ Mac ของฉัน (คำสั่งข้างต้นบอกว่า "ไม่พบกระบวนการ")
Jano

2

ฉันคิดว่านี่เกิดจากการบังคับให้แอปของคุณบังคับใช้บน iPhone ก่อนที่จะกดปุ่มหยุดใน Xcode บางครั้งเมื่อคุณกดปุ่มหยุดใน Xcode แล้วมันจะใช้เวลาเพิ่มเติมในการออกจากแอพถ้ามันหยุดทำงาน แต่ต้องอดทนอดกลั้นในที่สุดมันก็จะเลิกใช้เวลาส่วนใหญ่


1

คุณสามารถจัดสรรตัวแปรในฟังก์ชั่นหรือแท็บ มันจะยกเลิกการจัดสรรหากฟังก์ชั่นหรือแท็บของคุณถูกเลิก ดังนั้นคุณต้องประกาศตัวแปรสมาชิกหรือตัวแปรทั่วโลก


1

ฉันได้รับข้อผิดพลาดนี้ตลอดเวลาจนกระทั่งฉันหยุดเชื่อถือปุ่ม "หยุด" ในกล่องโต้ตอบเรียกใช้ ตอนนี้ฉันกดปุ่มหยุดในแถบเครื่องมือเสมอก่อนที่จะพยายามเรียกใช้ฉันยังไม่พบกระบวนการซอมบี้ใด ๆ


0

โอ้ฉัน - ฉันพยายามทุกอย่างที่ระบุไว้ข้างต้นและในโพสต์อื่น ๆ ติดตั้ง Xcode อีกครั้งรีบูทเครื่องคัดลอกไฟล์ที่หายไปทั้งหมดไปยังโฟลเดอร์ที่ถูกต้อง ... ในที่สุดฉันก็สำรอง iphone ของฉันเช็ดและคืนค่ามันและใช้งานได้!

ฉันคิดว่าสิ่งที่อาจเป็นสาเหตุของการอ่านในและรอบ ๆ นี้ถูกตัดการเชื่อมต่อ iphone ของฉันสีขาวมันทำงานด้วยเครื่องมือประสิทธิภาพการจับการรั่วไหล หรือบางสิ่งนั้น

เอาเป็นว่าถอนหายใจอย่างโล่งอก


0

ในสภาพที่เลวร้ายที่สุดรีเซ็ตเนื้อหาและการตั้งค่า iOS Simulater และส่วนใหญ่เวลาในกรณีของฉันออกจาก XCode พร้อมกับเครื่องมือจำลองทำงานเสมอสำหรับฉันด้วย XCode4.6 (ที่มักถูกแขวนคอ)


0

ฉันประสบปัญหาแบบนี้ครั้งเดียวในกรณีของฉันนี่คือสิ่งที่ฉันทำ

  1. ลบแอพออกจากโปรแกรมจำลอง
  2. ลบโฟลเดอร์ข้อมูลที่ได้รับ
  3. ดำเนินการใหม่ทั้งหมดในโครงการโดยเลือกเมนูผลิตภัณฑ์ - ล้าง
  4. รีเซ็ตตัวจำลอง
  5. ออกจาก Xcode
  6. ลองใช้งานโปรเจ็กต์ตอนนี้หากใช้งานได้ดีไปที่ขั้นตอนที่ 7
  7. ทำซ้ำทุกขั้นตอนตั้งแต่ 1 ถึง 5 จากนั้นรีสตาร์ทเครื่อง

ในกรณีส่วนใหญ่ฉันได้มันทำงานในขั้นตอนที่ 6 กรณีที่รุนแรงฉันต้องรีสตาร์ทเครื่องของฉัน


0

ข้อผิดพลาดนี้เคยเกิดขึ้นใน iOS Simulator รุ่นเก่ากว่าเนื่องจากอินสแตนซ์ที่เก่ากว่าของงานในอุปกรณ์อื่นที่ปิดตัวลงอาจชนกับอินสแตนซ์ใหม่

iOS 6.0 และใหม่กว่าไม่ควรประสบปัญหาเช่นนี้เนื่องจาก iOS 6.0 ได้แนะนำการใช้งานชุดย่อย bootstrap และ iOS 7.0 แนะนำการใช้งานเซิร์ฟเวอร์บูตโดยเฉพาะ (launchd_sim) ซึ่งแยกได้อย่างสมบูรณ์จากเซิร์ฟเวอร์ bootstrap ของโฮสต์

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.