Xcode 11.2 - ไม่สามารถติดตั้งไฟล์แอพไปยังอุปกรณ์ได้หรือไม่


29

ฉันเพิ่งอัปเดตระบบปฏิบัติการเป็น Catalina และอัปเดต Xcode เป็น 11.2 ตั้งแต่ทำเช่นนั้นเมื่อฉันพยายามเรียกใช้แอพรุ่นที่วางจำหน่ายในอุปกรณ์ของฉันฉันได้รับข้อผิดพลาด:

ไม่สามารถติดตั้งแอปได้

เมื่อฉันแตะ 'รายละเอียด' จะให้สิ่งต่อไปนี้แก่ฉัน:

การติดตั้งแอปล้มเหลวโดเมน: com.apple.dtdevicekit รหัส: -402620395 เหตุผลที่ล้มเหลว: ไม่พบโปรไฟล์การจัดเตรียมที่ถูกต้องสำหรับไฟล์เรียกทำงานนี้

ข้อมูลผู้ใช้: {DVTRadarComponentKey = 487927; "com.apple.dtdevicekit.stacktrace" = (0 DTDeviceKitBase 0x000000011baff6e7 DTDKCreateNSError + 109 1 DTDeviceKitBase
0x000000011baffde9 DTDK_AMDErrorToNSError + 792 2 DTDeviceKitBase
0x000000011bb3f56a 90 [DTDKMobileDeviceToken installApplicationBundleAtPath: withOptions: andError: withCallback:] _ block_invoke + 164 3 DVTFoundation 0x000000010356f156 DVTInvokeWithStrongOwnership + 73 4 DTDeviceKitBase
0x000000011bb3f301 - [DTDKMobileDeviceToken installApplicationBundleAtPath: withOptions: andError: withCallback:] + 1589 5 IDEiOSSupportCore 0x000000011b9c7a25 __118- [DVTiOSDevice (DVTiPhoneApplicationInstallation) processAppInstallSet: appUninstallSet: installOptions: completionBlock:] _ block_invoke.352 + 4523 6 DVTFoundation 0x00000001036a03ba __DVT_CALLING_CLIENT_BLOCK
+ 7 7 DVTFoundation 0x00000001036a1a92 __DVTDispatchAsync_block_invoke + 809 8
libdispatch.dylib 0x00007fff68220583 _dispatch_call_block_and_release + 12 9 libdispatch.dylib 0x00007fff6822150e _dispatch_client_callout + 8 10 libdispatch.dylib 0x00007fff68226ace _dispatch_lane_serial_drain + 597 11 libdispatch.dylib 0x00007fff68227452 _dispatch_lane_invoke + 363 12 libdispatch.dylib 0x00007fff68230a9e _dispatch_workloop_worker_thread + 598 13 libsystem_pthread.dylib 0x00007fff6847a71b _pthread_wqthread + 290 14 libsystem_pthread dylib 0x00007fff6847a57b start_wqthread + 15); }

โปรไฟล์การจัดสรรของฉันถูกต้อง 100% เช่นเดียวกับใบรับรองของฉัน ฉันไม่รู้ว่าทำไมสิ่งนี้ถึงเกิดขึ้นและฉันได้ลองทุกอย่างเพื่อติดตั้ง / เรียกใช้ ฉันได้พยายาม:

  • ตรวจสอบอีกครั้งว่า 'โครงการ' ได้เปิดตัวตรวจสอบภายใต้แท็บ 'เรียกใช้'
  • ยืนยันว่ามีการเลือกโปรไฟล์การจัดสรรที่ถูกต้อง
  • การลบแอพออกจากอุปกรณ์ของฉัน
  • สร้างโปรไฟล์การจัดสรรใหม่
  • เปลี่ยนรหัสชุดข้อมูลของฉัน
  • สร้างใบรับรองใหม่
  • ทำความสะอาดโฟลเดอร์สร้างเริ่มต้น Xcode
  • การติดตั้ง Xcode อีกครั้ง
  • การลบโฟลเดอร์ Derived Data

ไม่มีของข้างต้นได้ทำงาน ฉันเคยไปที่นี้มา 2 วันแล้ว - ความช่วยเหลือได้รับการชื่นชม วิธีเดียวที่ฉันสามารถติดตั้งไฟล์แอพลงในอุปกรณ์ของฉันได้สำเร็จคือถ้าฉันอัปโหลดไปยัง TestFlight ก่อน (ซึ่งฉันไม่สามารถทำได้ทุกครั้งที่ฉันต้องการทดสอบการเปลี่ยนแปลงเล็กน้อย)


คุณสามารถยืนยันด้วยอุปกรณ์ที่สองได้หรือไม่?
CodeBender

ใช่ฉันได้ลองติดตั้งแอพนี้ไปยังอุปกรณ์ 2 เครื่องต่างกันข้อผิดพลาดเดียวกันทุกครั้ง @CodeBender
บริตตานี

1
คุณบอกว่าคุณเพิ่งปรับปรุงเป็น 11.2 เมื่อเร็ว ๆ นี้นี่เป็นครั้งแรกที่คุณสร้างด้วย Xcode 11.x หรือไม่? สำหรับโปรไฟล์การเผยแพร่ในเว็บไซต์ผู้พัฒนาของ Apple มีตัวเลือกใหม่สำหรับ Xcode 11 และคุณใช้มันหรือไม่?
CodeBender

1
นอกจากนี้ในไฟล์> การตั้งค่าพื้นที่ทำงานภายใต้ "สร้างระบบ" คุณเลือกอะไรบ้าง
ชิม

1
มันทำให้ฉันบ้า !!! ฉันยังคงมีปัญหานี้และไม่มีวิธีแก้ไขที่นี่แก้ไขได้ มีความคิดอื่น ๆ อีกไหม?
เฟรดริก

คำตอบ:


19

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

ฉันพบปัญหาเดียวกันกับ Catalina และ Xcode 11.2 และสิ่งนี้แก้ไขได้สำหรับฉัน

ในฐานะของ Xcode 11 Apple กำลังเริ่มบังคับใช้เกณฑ์การสร้างบางอย่างที่ก่อนหน้านี้จำเป็นสำหรับการสร้าง AppStore เท่านั้นในการแยก. ipa และการสร้างอุปกรณ์

จนถึงตอนนี้ฉันได้พบ:

  • ต้องการการตั้งค่าระบบการสร้างระบบดั้งเดิมสำหรับการปรับใช้อุปกรณ์สำหรับโครงการหรือโครงการที่เก่ากว่าที่ใช้เฟรมเวิร์กที่เก่ากว่า
  • การลบสถาปัตยกรรมที่ไม่ได้ใช้เพื่อแยก ipa ออกจากไฟล์เก็บถาวร

อาจเป็นปัญหาเดียวกัน - เห็นข้อผิดพลาดที่แตกต่างกันเล็กน้อย แต่ไม่มีวิธีแก้ไขที่นี่ ปฏิบัติการถูกลงชื่อด้วยการให้สิทธิ์ที่ไม่ถูกต้อง โดเมน: com.apple.dtdevicekit รหัส: -402620394 เหตุผลความล้มเหลว: การให้สิทธิ์ที่ระบุในไฟล์การเซ็นชื่อรหัสการสมัครของแอปพลิเคชันของคุณไม่ถูกต้องไม่ได้รับอนุญาตหรือไม่ตรงกับที่ระบุในโปรไฟล์การจัดเตรียมของคุณ (0xE8008016)
drewster

2
@drewster ฉันมีข้อผิดพลาดเช่นเดียวกันและเกี่ยวข้องกับสถาปัตยกรรมที่ไม่ได้ใช้ในงานสร้าง บางครั้งเฟรมเวิร์กจะระบุสถาปัตยกรรม x86 ซ้ำแล้วซ้ำอีกจากสถาปัตยกรรมแขน การรันสคริปต์ที่ระบุในบทความ SO นี้สามารถแก้ไขปัญหาให้ฉันได้
Lean van Heerden

2
การเปลี่ยนเป็นระบบ Build Legacy นั้นไม่ได้ผลสำหรับฉันอย่างน่าเสียดาย: /
Brittany

1
ใช้เวลาหลายชั่วโมงกับสิ่งนี้ ฉันเพิ่มโครงการในพื้นที่ทำงานที่สร้างกรอบงานที่ฉันสร้างขึ้นเป็นเป้าหมาย จากนั้นฉันจะฝัง / เชื่อมโยงโครงการหลักในพื้นที่ทำงานกับโครงการกรอบงานนั้น การใช้ระบบบิลด์ใหม่ใน 11.2.1 GM การส่งออก IN HOUSE จะแสดง "ไม่สามารถติดตั้ง ... " บนอุปกรณ์ภายใต้การดูแล เมื่ออ่านโพสต์นี้ฉันก็เปลี่ยนมาใช้ Legacy Build System สิ่งที่ทำคือการแสดงข้อผิดพลาด !!! บอกฉันว่า lipo ไม่สามารถตัดสถาปัตยกรรมที่ผิดพลาดได้เมื่อเก็บถาวร ดังนั้นมันจึงชี้ไปในทิศทางที่ถูกต้องและจากนั้นฉันก็แก้ไขกรอบที่ไม่ได้ถูกสร้าง ขอบคุณกฎหมาย!
zumzum

ในกรณีของฉันเปลี่ยนเป็นมรดกไม่ได้แก้ปัญหานั้น มันเป็นเพราะการเปลี่ยนแปลงในโปรไฟล์การจัดสรร ฉันลงเอยลบแอพจากอุปกรณ์แล้วการติดตั้งก็เสร็จสมบูรณ์
Konstantinos

8

นี่คือสิ่งที่ได้ผลสำหรับฉัน:

  1. ลบแอพและโปรไฟล์ออกจากอุปกรณ์
  2. ติดตั้งใหม่อีกครั้ง

วิธีแก้ปัญหาแบบคลาสสิค :)
Arthur Shkil

การเผชิญกับปัญหานี้หลายครั้งด้วย Xcode 11.3 นี่เป็นวิธีที่เร็วและง่ายที่สุด
kientux


5

สำหรับฉันมันเป็นเพราะ Dynamic Frameworks ที่ฉันเพิ่มเข้าไปในแอพพลิเคชั่น เริ่มแรกฉันเลือกตัวเลือก (ฝัง + ไม่ลงชื่อ) สำหรับเฟรมเวิร์กแบบไดนามิก

การเปลี่ยนเป็น (ฝัง & ลงชื่อ) สำหรับเฟรมเวิร์กดังกล่าวสามารถแก้ไขปัญหาให้ฉันได้

ป้อนคำอธิบายรูปภาพที่นี่


เพิ่งเพิ่มกรอบงานภายนอกด้วย "ฝังโดยไม่ต้องลงชื่อ" มีปัญหาเดียวกัน เปลี่ยนเป็น Embed & Sign - ทำได้ดีมาก!
malex

3

ฉันจัดการเพื่อแก้ไขปัญหานี้เมื่อฉันล้างครั้งแรก:

cmd + k
shift + cmd + k

แล้วฉันจะลบเนื้อหาทั้งหมดของ Deriving Data เส้นทางของโฟลเดอร์ควรเป็นเช่นนี้

/Users/youruser/Library/Developer/Xcode/DerivedData

หรือคุณสามารถเช็คอิน

Xcode -> Preferences -> Locations

0

ฉันมีปัญหาเดียวกันจนกระทั่งพบวิธีแก้ปัญหานี้ ฉันต้องลบใบรับรองเก่าและโปรไฟล์การจัดสรรทั้งหมดออกแล้วสร้างใบรับรองใหม่ด้วย "Apple Development" และ "Apple Distribution" แทนที่จะเป็นตัวเลือก "iOS ... "


0

ฉันมีปัญหาเดียวกันและปัญหาคือฉันใช้บัญชีที่ยังไม่ได้ชำระและถึงจำนวนการพัฒนาโปรไฟล์ฟรีทั้งหมดดังนั้นคุณต้องใช้บัญชีที่ชำระเงินแล้ว

detailes:

เหตุผลที่ล้มเหลว: ถึงจำนวนสูงสุดของแอปสำหรับโปรไฟล์การพัฒนาฟรีแล้ว


ผมมีปัญหาเดียวกัน. ฉันอ่านรายละเอียดและรับรู้ในภายหลัง
Candyline

0

ฉันได้รับข้อผิดพลาดนี้เมื่อเรียกใช้โครงการที่มีห้องสมุดEmbed Frameworksซึ่งCode Sign on Copyไม่ได้ตรวจสอบ การตรวจสอบเครื่องหมายนี้ช่วยแก้ไขปัญหานี้ให้ฉันได้


0

"-402620395 เหตุผลที่ล้มเหลว: ไม่พบโปรไฟล์การเตรียมใช้งานที่ถูกต้องสำหรับไฟล์เรียกทำงานนี้"

ฉันมีปัญหานี้เช่นกันและแก้ไขได้:

ซึ่งหมายความว่าโปรไฟล์การจัดสรรของคุณไม่ได้ถูกกำหนดเป็นพัฒนา คุณต้องสร้างโปรไฟล์การจัดสรรใหม่สำหรับการพัฒนาซึ่งแตกต่างจากชุดโปรไฟล์สำหรับการแจกจ่าย จากนั้นในการเซ็นชื่อและความสามารถในการตั้งค่าแอพของคุณบน xcode ให้เลือกโปรไฟล์การพัฒนาของคุณหากคุณต้องการติดตั้งบนอุปกรณ์ของคุณ ไม่ต้องกังวลเกี่ยวกับการเผยแพร่ด้วยโปรไฟล์ dev ของคุณคุณต้องเลือกโปรไฟล์ที่คุณต้องการใช้เมื่อกดไปที่ app store (ตั้งเป็นไม่มีและคุณต้องเปลี่ยน)

โซลูชันอื่นจะเลือกจัดการการตั้งค่าการลงชื่อเข้าใช้โดยอัตโนมัติ แต่มีการตั้งค่าเริ่มต้นเมื่อกดไปที่ app store ซึ่งคุณอาจไม่ต้องการ


-1

Xcode 11.2 เลิกใช้แล้วโดย Apple ในวันที่ 5 พฤศจิกายน 2019

แม้ว่าคุณจะสามารถติดตั้งลงในอุปกรณ์ของคุณคุณจะไม่สามารถผ่าน AppStore: ดูที่นี่เพื่อดูบันทึก

ดาวน์โหลดล่าสุดที่ถูกต้องไปยังไฟล์ xip ของAppStore

ดูตัวอย่าง

Xcode 11.2 มีปัญหาบางอย่างและทำให้อุปกรณ์ iOS รุ่นเก่าล้มเหลวและไม่ได้ติดตั้งบนอุปกรณ์ iOS รุ่นใหม่ ดังนั้นสำหรับตอนนี้คุณสามารถ:

ดังนั้นทางออกคือ:

  1. อัปเดต macOS เป็น 10.15.1
  2. ติดตั้งXcode 11.2.1 GM seed
  3. สร้างและติดตั้งแอปบนอุปกรณ์ที่อัปเดตแล้ว (13.2.2 ออกแล้วตอนนี้)

กำลังดาวน์โหลด Xcode 11.2.1 GM seed ตอนนี้ ... ฉันจะบอกให้พวกคุณรู้ว่ามันช่วยแก้ปัญหาไหม ไม่ได้เป็นเพียงฉัน - เริ่มรู้สึกว่าฉันกำลังทานยาเม็ดบ้า ๆ ด้วย Xcode 11.2
บริตตานี

2
ขึ้นอยู่กับการโพสต์ SO เชื่อมโยงความผิดพลาดนั้นเกี่ยวข้องกับ 13 UITextViewอุปกรณ์ที่มี-iOS ไม่มีสิ่งใดในที่นี้เกี่ยวกับปัญหาการติดตั้ง "บนอุปกรณ์ iOS รุ่นใหม่กว่า"
shim

โพสต์นั้นมีลิงค์มากมายตั้งแต่ Apple สร้างความโกลาหล @shim แต่ตอนนี้ apple ยอมรับปัญหาและเลิกใช้ Xcode 11.2 อย่างสมบูรณ์และลบออกจาก AppStore
Mojtaba Hosseini

3
คำตอบนี้ไม่เกี่ยวข้องกับปัญหาฉันทดสอบการปรับใช้แอพโดยใช้ Xcode 11.2.1 และปัญหายังคงอยู่ วิธีเดียวที่ฉันสามารถนำแอปไปใช้กับอุปกรณ์ที่มี Xcode 11.2.1 คือตั้ง "ไฟล์ -> การตั้งค่าพื้นที่ทำงาน -> สร้างระบบ" เป็น "ระบบสร้างมรดก"
Lean van Heerden

ดังนั้น @Brittany ผลลัพธ์คืออะไร? มันใช้งานได้หรือ
Mojtaba Hosseini

-1

ปัญหานี้เกี่ยวข้องกับการลงชื่อรหัสเท่านั้น

แต่ประเด็นสำคัญที่ควรทราบที่นี่คือถ้าคุณใช้รุ่น XCode 11.x ไม่เพียง แต่การเซ็นรหัสในโครงการของคุณ แต่เราควรตรวจสอบการลงนามรหัสใน Thirdparty SDK หรือการอ้างอิงที่เราเพิ่มในโครงการของเรา

ขั้นตอนในการตรวจสอบการลงนามรหัสของ SDks ของบุคคลที่สาม:

  1. ดาวน์โหลดซอร์สโค้ดของเฟรมเวิร์กที่คุณต้องการ
  2. เปิดไฟล์. xcproj จากซอร์สโค้ดโดยใช้ XCode 11.x
  3. ไปที่เป้าหมาย -> การลงชื่อและความสามารถ -> เลือกแท็บทั้งหมด -> ตัวระบุ Bundle หากคุณเห็นความไม่สม่ำเสมอในตัวระบุเช่นตัวระบุที่มีตัวคั่น 4 ตัว (เช่น com.company.mac.app)

    เปลี่ยนเป็นcom. *และป้อน

  4. ตรวจสอบให้แน่ใจว่า XCODE COMMAND LINE TOOLS ของคุณถูกตั้งค่าด้วย XCode 11.x

  5. ตอนนี้ใช้คำสั่งด้านล่างเพื่อสร้าง SDK ใหม่ด้วยการเปลี่ยนแปลงที่ทำในขั้นตอนที่ 3

      carthage build --no-skip-current --cache-builds --platform iOS
  6. ตอนนี้คัดลอกเฟรมเวิร์กที่สร้างจากโฟลเดอร์carthageของซอร์สโค้ดและแทนที่ SDK ที่มีอยู่ในโครงการของคุณ

ทำขั้นตอนเดียวกันซ้ำสำหรับกระบวนการของ SDK บุคคลที่สามทั้งหมดในโครงการของคุณ

หมายเหตุ:ให้แน่ใจว่าคุณทำเครื่องหมายทุก SDK ของบุคคลที่ 3 เป็นฝังและเข้าสู่ระบบใน

Targets => General => Frameworks, Libraries, and Embedded Content

-1

นี่อาจเป็นเพราะรูปแบบการแจกจ่าย / การเปิดใช้งาน การเปลี่ยนรูปแบบการดีบักใช้ได้สำหรับฉัน หวังว่านี่จะช่วยใครซักคน

ป้อนคำอธิบายรูปภาพที่นี่

ป้อนคำอธิบายรูปภาพที่นี่


-2

คำตอบอยู่ในความคิดเห็นต่อไปนี้: https://stackoverflow.com/a/50719379/10353503


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