2
จดวิธี bypass iphone code signature ไว้กันลืม (เคยลืมไปสองรอบแล้ว – -”)
iPhone code signature คือ ?
ตามที่เราเข้าใจคือ การจะเอา application ที่เราเขียน ด้วย xcode ลงบน iphone ได้นั้นมันมีอยู่ 2 วิธี
- เอาขึ้น app store ของ Apple
- เอาเขึ้น Cydia (สำหรับคน jailbreak อิอิ)
วิธีแรกนั้นรู้สึกว่าเราจะต้องเสียเงินสำหรับเอา app ขึ้นไปไว้บน app store ประมาณ 4000 บาทมั๊งถ้าจำไม่ผิด (จะได้ code signature มา) วิธีที่สองนั้นฟรี แต่เราต้องมา bypass code signature กันก่อนเพื่อที่จะสามารถทำให้ iphone ของเรานั้นรัน app ที่เราขียนขึ้นมาได้ สำหรับคนไม่มีตังค์ + ไม่มีบัตรเครดิตไปโอนเงินให้ Apple ขอเลือกใช้งานข้อสองละกัน (ฟรี) เริ่มเลยละกัน
- เข้า Cydia แล้วจัดการลงโปรแกรมที่ชื่อ ldid เป็นโปรแกรมเอาไว้ช่วย bypass code signature ของ saurik (คนทำ Cydia นั่นแหละ)
- จากนั้นเปิด mac เข้าไปที่ Applications > Utilities > Keychain Access
- จะเห็นหน้าตาอย่างนี้
- กดที่ Keychain Access menu > Certificate Assistant > Create a Certificate
- ตรง name ใส่ iPhone Developer
- Type เลือก Self Signed Root
- ติ๊กถูกที่ Let me override defaults แล้วกด continue
- ใส่ Serial Number เป็น 1 เลือก code signing จาก certificate type แล้วกด Continue
- กรอกข้อมูลส่วนตัว (จริงๆใส่แค่ email ก็ได้) แล้วกด Continue ไปเรื่อยๆก็เสร็จ 55+
- จากนั้นเปิด xcode โปรเจคที่เราสร้าง app ไว้ขึ้นมา แล้วไปที่ Project > Edit Project Settings
- กดที่ tab build แล้วมองหาคำว่า Code Signing Identity ใส่ Any iPhone OS Device และเลือก iPhone Developer ตามรูป
- เลือก Device – iPhone OS 2.2.1 กับ Release
- หลังจากนั้นกด build
- app ที่ได้จะอยู่ใน folder build ใน folder project
- ต่อ FTP แล้วเอา app ที่เรา buid เสร็จแล้วไปโยนไว้ที่ /Applications ใน iPhone
- ssh เข้า iPhone แล้วสั่ง chmod 755 กับไฟล์ app ของเรา ตัวอย่าง
- สั่ง su เพื่อให้เป็น root
- ตามด้วย
- สุดท้ายก็สั่ง restart springboard จะเห็นไอคอน app ของเราโผล่ออกมา เป็นอันจบ
chmod 755 /Applications/MyApp.app/MyApp
ldid -S /Applications/MyApp.app/MyApp
ปล. app แรกในชีวิตที่เขียนด้วย Objective-c
ปล2. คราวหน้าจะหายัด app เข้าไปใน cydia repository ดู










เจิม
อยากจะบอกว่าไม่รุ้เรื่อง -_-’
เจิมอย่างไวอะนาย
อยากจะบอกว่าจดไว้กันลืมอะ – -”