ทดสอบแอป iOS บนอุปกรณ์ที่ไม่มีโปรแกรมผู้พัฒนาแอปเปิ้ลหรือการเจลเบรค


382

ฉันจะทดสอบแอปพลิเคชั่น iOS บน iPod Touch ได้อย่างไรโดยไม่ต้องลงทะเบียนกับ Apple Developer Program หรือจำคุก iPod ของฉัน

ไม่เป็นตัวเลือกที่ทำงานได้ในขณะนี้

ฉันต้องการทดสอบบนอุปกรณ์แทนการจำลองบนหน้าจอเพื่อดูว่ามันทำงานบน iPod จริงได้อย่างไร


2
ในวันที่ 8 มิถุนายน Apple ประกาศว่าด้วย Xcode 7 การติดตั้งแอพใด ๆ ที่พวกเขาพัฒนาบนอุปกรณ์ของพวกเขาโดยไม่มี Apple Developer Program Certificate เป็นไปได้ เว็บไซต์ Apple Developer บอกว่าเราต้องลงชื่อเข้าใช้ด้วย Apple ID เท่านั้น
skyvin

ตรวจสอบคำตอบนี้สำหรับการใช้การจัดเตรียมฟรีในรายละเอียดstackoverflow.com/questions/30973799/…
Aditya Deshmane

บัญชีนักพัฒนาที่ชำระเงินเป็นปัญหาของคุณหรือไม่ หรือว่าคุณไม่ต้องการลงทะเบียน UDID ของคุณกับ Apple? แม้แต่บัญชีฟรีในคำตอบที่ยอมรับคุณต้องมีบัญชีที่ลงทะเบียนฟรีกับโปรแกรมผู้พัฒนาของ Apple และเพื่อเพิ่ม UDID ของอุปกรณ์ไปยังโปรไฟล์การจัดสรรการพัฒนา iOS
อัปยศอดสู

1
นี่คือคำแนะนำทีละขั้นตอน: stackoverflow.com/a/33928777
Suragch

@wottle: "บัญชีนักพัฒนาที่ชำระเงิน" เป็นเดิมพันที่ปลอดภัยโดยพิจารณาการลงทะเบียน UDID ด้วยบัญชีฟรีไม่ใช่ตัวเลือกเช่นเมื่อห้าปีก่อน (เวลาที่ถามคำถามนี้) และในเวลานั้นคำตอบที่ได้รับการยอมรับก็บอกว่าไม่มีทางเลือกอื่น
BoltClock

คำตอบ:


429

เจ็ดปีหลังจากการก่อตั้ง App Store (10 กรกฎาคม 2008) ในที่สุด Apple ได้เปิดตัวคุณสมบัติใหม่ใน Xcode 7 ที่ช่วยให้คุณสามารถปรับใช้และเรียกใช้แอพจำนวนมากบนอุปกรณ์ใด ๆ ของคุณเพียงแค่ลงชื่อเข้าใช้ด้วย Apple ของคุณ ID คุณไม่จำเป็นต้องเป็นสมาชิกโปรแกรมที่ชำระเงินแล้วเพื่อปรับใช้แอพในอุปกรณ์ของคุณเอง (และแน่นอนว่าคุณไม่จำเป็นต้องเจลเบรคอุปกรณ์ของคุณอีกต่อไปหากคุณไม่สะดวกที่จะทำเช่นนั้น)

ไม่ใช่สำหรับกรณีการใช้งานส่วนใหญ่อยู่ดี ด้วยเหตุผลที่ชัดเจนความสามารถและการให้สิทธิ์บางอย่างที่จำเป็นต้องมีการเป็นสมาชิกของโปรแกรมเช่น Game Center และการซื้อในแอปจะไม่สามารถใช้ได้กับแอปที่ปรับใช้โดยใช้วิธีนี้ จากเอกสารประกอบสำหรับนักพัฒนาของ Apple :

เปิดแอพของคุณบนอุปกรณ์โดยใช้การจัดสรรฟรี (iOS, watchOS)

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

ขั้นตอนที่แม่นยำในการทำให้แอปของคุณไปยังอุปกรณ์ iOS หรือ Apple Watch ติดตามทันทีดังนั้น (ภาพหน้าจอถูกข้ามเพื่อความง่ายในการอ่าน):

  1. ใน Xcode เพิ่ม Apple ID ของคุณการตั้งค่าบัญชีที่อธิบายไว้ในการเพิ่มบัญชี Apple ID ของคุณใน Xcode

  2. ในตัวนำทางโครงการเลือกโครงการและเป้าหมายของคุณเพื่อแสดงตัวแก้ไขโครงการ

  3. คลิกทั่วไปและเลือกชื่อของคุณจากเมนูป๊อปอัพทีม

  4. เชื่อมต่ออุปกรณ์กับ Mac ของคุณและเลือกอุปกรณ์ของคุณจากเมนูแถบเครื่องมือ Scheme

  5. ใต้เมนูป๊อปอัพของทีมคลิกแก้ไขปัญหา

    Xcode สร้างโปรไฟล์การจัดสรรฟรีสำหรับคุณและข้อความเตือนภายใต้เมนูป๊อปอัปของทีมจะหายไป

  6. คลิกที่ปุ่ม Run

    Xcode ติดตั้งแอปบนอุปกรณ์ก่อนเปิดแอพ

ก่อน Xcode 7 จำเป็นต้องมีการเป็นสมาชิกของโปรแกรมเพื่อลงนามใบรับรองการจัดสรรที่จำเป็นสำหรับการปรับใช้แอพกับอุปกรณ์ ทางเลือกอื่นเท่านั้นคือแหกคุก ด้วย Xcode 7 คุณไม่จำเป็นต้องเจลเบรคอุปกรณ์ของคุณอีกต่อไปเพียงแค่รันแอพที่จัดจำหน่ายนอก App Store หรือทดสอบแอพหากคุณไม่สามารถเข้าร่วมโปรแกรมหรือปรับใช้และใช้แอพที่คุณพัฒนาขึ้นเพื่อการใช้ส่วนตัวของคุณเอง หากคุณไม่ต้องการเผยแพร่ผ่าน App Store (ในกรณีนี้คุณอาจไม่จำเป็นต้องได้รับสิทธิ์จากสมาชิกโปรแกรม)


เพียงแค่ FYI: ฉันติดตั้ง Xcode 7 และลองเรียกใช้บนโทรศัพท์ของฉัน แต่ฉันไม่สามารถสร้างสิ่งอ้างอิงได้ทั้งหมดดังนั้นฉันจึงเปลี่ยนกลับไปเป็น Xcode 6 และในที่สุดก็สามารถทำงานบนอุปกรณ์ของตัวเองได้! Xcode 7 ต้องเพิ่มสิทธิ์ใช้งานบางอย่างในบัญชีของคุณที่ Xcode 6 รู้จัก :)
Mister Mister

1
ฉันเพิ่งติดตั้งแอพตัวอย่างบางส่วนที่ฉันสร้างขึ้นในช่วงสองสามสัปดาห์ที่ผ่านมาบน iPAD Air ของฉันโดยใช้ Xcode7 มอบประสบการณ์ที่ดีกว่าในการทดสอบแอปของคุณโดยไม่ต้องเสียค่าสมัคร โพสต์นี้มีประโยชน์จริง ๆ ขอบคุณเพื่อน.
learn_develop

1
@BoltClock ฉันคิดว่าคุณควรระบุให้ชัดเจนยิ่งขึ้นเมื่อ Apple ทำการเปลี่ยนแปลง "เจ็ดปีหลังจากการเริ่มต้นของ App Store" -> คนส่วนใหญ่อาจจำไม่ได้เมื่อ App Store ถูกสร้างขึ้นและไม่ต้องการค้นหามันหรือทำเลขคณิต
สารเลว

5
แทนที่จะเป็น Scheme ฉันต้องไปที่ Product-> Destination ที่นั่นฉันต้องเลือกอุปกรณ์ของฉัน จากนั้นก็ใช้งานได้ อย่าลืมอนุญาตให้ติดตั้งแอพดังกล่าวบน iPhone โดยไปที่การตั้งค่า -> ทั่วไป -> โปรไฟล์คุณจะเห็นบัญชี dev ของคุณ แตะมัน คุณควรเห็นแอปที่แสดงรายการอยู่ที่นั่น แตะที่มัน แตะ "เชื่อถือ (ชื่อที่นี่)"
mutp

Swift 2 ใช้กระบวนทัศน์การออกแบบที่ใช้งานได้และจะเปิดในไม่ช้า Xcode 7 และ iOS 9 นำการจัดสรรอุปกรณ์ฟรีให้กับนักพัฒนาซอฟต์แวร์ที่กำลังจะมาถึงโดยเฉพาะ เรากำลังใช้ชีวิตอยู่ในยุคที่มีการปฏิรูปทางอุดมการณ์อย่างแท้จริงและเวลาที่จะมีชีวิตอยู่
lol

82

มีวิธีที่คุณสามารถทำได้

คุณจะต้องเข้าถึง ROOT เพื่อแก้ไขไฟล์ต่อไปนี้

นำทางไปและเปิดไฟล์/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdkSDKSettings.plist

ในแฟ้มที่ขยายDefaultPropertiesและการเปลี่ยนแปลงCODE_SIGNING_REQUIREDไปNOในขณะที่คุณมีคุณยังสามารถเปลี่ยนENTITLEMENTS_REQUIREDไปNOยัง

คุณจะต้องรีสตาร์ท Xcode เพื่อให้การเปลี่ยนแปลงมีผล นอกจากนี้คุณต้องทำเช่นนี้ทุก. sdk ที่คุณต้องการให้สามารถเรียกใช้บนอุปกรณ์

ตอนนี้ในการตั้งค่าโครงการของคุณคุณสามารถเปลี่ยนไปCode Signing IdentityDon't Code Sign

แอปของคุณควรสร้างและติดตั้งบนอุปกรณ์ของคุณเรียบร้อยแล้ว

UPDATE:

มีปัญหาบางอย่างกับiOS 5.1 SDKว่าวิธีนี้อาจทำงานไม่เหมือนกันทุกประการ การอัปเดตอื่น ๆ จะแสดงไว้ที่นี่เมื่อมีให้ใช้งาน

UPDATE:

คุณสามารถค้นหาเส้นทางที่ถูกต้องด้วยSDKSettings.plistxcrun

xcrun --sdk iphoneos --show-sdk-path

ใหม่ SDKSettings.plist ตำแหน่งสำหรับ iOS 5.1 SDK:

/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS5.1.sdk/SDKSettings.plist


9
สิ่งนี้จะสร้างแอปที่ไม่ได้ลงนาม แต่คุณจะติดตั้ง / รันบนอุปกรณ์ที่ไม่มีการเจลเบรคได้อย่างไร?
David Gelhar

4
อาจติดตั้ง แต่จะไม่เปิด
Domness

4
ใช่ตั้งแต่ iOS5 มันยังคงเป็นไปได้ คุณยังจะต้องldidใช้รหัสปลอมเซ็นไบนารีของคุณ code.google.com/p/networkpx/downloads/detail?name=ldid
WrightsCS

7
OP ขอวิธีแก้ปัญหาที่ไม่ใช่การ
เจลเบรก

8
โปรดลองล้างคำตอบนี้ ldidคำตอบของตัวเองกล่าวอะไรเกี่ยวกับการลงนามรหัสปลอมด้วย ในความคิดเห็นของคุณคุณแสดงความคิดเห็นหนึ่งโดยบอกว่าldidไม่จำเป็นต้องเซ็นชื่อด้วยและในความคิดเห็นอื่นคุณบอกว่าเป็น คุณยังบอกด้วยว่าคำตอบนี้ไม่มีส่วนเกี่ยวข้องกับการถูกจำคุก แต่ฉันค่อนข้างแน่ใจว่าเป็นเช่นนั้น การแหกคุกอนุญาตให้ไบนารีเรียกใช้ที่ไม่มีลายเซ็นที่ถูกต้อง หากแอปของคุณไม่ได้ลงชื่อหรือปลอมเซ็นด้วย ldid มันจะไม่ทำงานบนอุปกรณ์ iOS ที่มีสต็อก ... เว้นแต่ว่าคุณกำลังทำสิ่งอื่นที่คุณไม่ได้อธิบายไว้ที่นี่
เนท

55

ด้วยXcode 7คุณไม่จำเป็นต้องมีบัญชีนักพัฒนาซอฟต์แวร์อีกต่อไปเพื่อทดสอบแอปของคุณบนอุปกรณ์ของคุณ:

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

ตรวจสอบออกที่นี่

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

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


UPDATE:

บางคนมีปัญหากับ iOS 8.4 , นี่คือวิธีที่จะแก้ไขได้


เป็นทางการยังอยู่ในโหมดเบต้าแม้ว่า
Fadi Obaji

มีใครจัดการใช้คุณสมบัติใหม่นี้หรือไม่? ไม่ได้ผลสำหรับฉัน
Daniil

ทำงานให้ฉัน คุณใช้ XCode 7 อยู่หรือไม่
Roberto

บทเรียนใด ๆ รวบรวมแอพ pythonista สำหรับ iPad ของฉัน
Luke Taylor

ตัวระบุบันเดิลต้องเป็นอะไร
ลุคเทย์เลอร์

12

ฉันไม่เคยลอง แต่ทำการค้นหาโดย Google Jailcoderดูเหมือนเป็นคำตอบ ปัญหาคืออุปกรณ์ต้องได้รับการเจลเบรค หากใครลองทำสิ่งนี้โปรดแสดงความคิดเห็นและแจ้งให้เราทราบว่ามันทำงานอย่างไร


2
ทำงานอย่างสมบูรณ์แบบสำหรับฉัน มีเพียงส่วนที่น่ารำคาญคือพวกเขาต้องการให้คุณอนุมัติการเพิ่มใบรับรองบางอย่างลงในพวงกุญแจโดยไม่บอกคุณว่าพวกเขากำลังทำอะไรอยู่ พวกเขาดูเหมือนจะเหมือนกับว่าคุณกำลังลองทำสิ่งนี้ด้วยกระบวนการแบบแมนนวล มันสวยไร้รอยต่อ ฉันเปลี่ยนจากการติดตั้ง Xcode ไปยังหนึ่งในแอพของฉันที่ทำงานบน iPhone ในเวลาไม่ถึง 5 นาที ฉันใช้งาน Xcode 4 และ iOS 5.0.1 Jailbroken
หินเมสัน

ที่ดี! ขอบคุณสำหรับการตอบกลับ @ cool_me5000 ประสบการณ์ของคุณกับมันจะช่วยให้คนอื่นที่ต้องการลอง ฉันจะทดสอบสักวัน
Firula

สิ่งนี้ล้าสมัยและไม่ได้ตอบสนองความต้องการที่กำหนดไว้ในคำถามโดยไม่ต้องทำการเจล
dgeske

8

ไปที่การตั้งค่ารูปร่างภายใต้การลงนามรหัสตั้งรหัสการลงนามเอกลักษณ์เป็นiOS ของนักพัฒนาซอฟต์แวร์และรายละเอียดการจัดเตรียมเป็นอัตโนมัติ

เลือกอุปกรณ์ของคุณ (ตอนนี้มองเห็นได้) จากรายการแบบเลื่อนลงและเรียกใช้แอปของคุณ

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


6

การอ้างอิง JailCoder ด้านบนชี้ไปที่ไซต์ที่ไม่มีอยู่อีกต่อไป ดูเหมือนว่าคุณควรใช้http://oneiros.altervista.org/jailcoder/หรือhttps://www.facebook.com/jailcoder


jailcoder เป็นยูทิลิตี้ที่ดีและเรียบง่ายมากที่จะมีเครื่องหมายรหัสปลอมและดาวน์โหลดแอปไปยังอุปกรณ์จริง คุณต้องสร้างใบรับรอง iPhone Developer และ iPhone Distribution
user914425

2

เพิ่งทดสอบ JailCoder www.jailcoder.comและฉันสามารถเรียกใช้และดีบักบนอุปกรณ์ที่ถูกเจลเบรคได้ คุณต้องติดตั้ง xCode ที่ไม่มีการแตะต้องใหม่หากไม่ใช่เพียงแค่ถอนการติดตั้งและติดตั้ง xCode อีกครั้งแล้วเรียกใช้ JailCoder


1

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


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

-1

ทำตามขั้นตอนเหล่านี้:

1. เปิด Xcode-> เลือกโครงการ -> เลือกเป้าหมาย -> ติ๊กจัดการการเซ็นชื่อโดยอัตโนมัติ> จากนั้นเพิ่มบัญชีนักพัฒนาแอปเปิ้ลของคุณ -> ทำความสะอาดโครงการ -> สร้างโครงการ -> รันโครงการทุกอย่างทำงานได้ดี

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