2012-03-12 31 views
5

Tôi đang cố gắng phân phối một .ipa chưa ký thông qua giao thức dịch vụ itms cho thiết bị bẻ khóa KHÔNG CÓ CYDIA. Tôi đã xem qua hướng dẫn về cách tạo ứng dụng chưa được ký cho cydia từ: http://www.alexwhittemore.com/developing-jailbroken-iphone-ios-401/ và tôi đã quản lý để làm cho nó hoạt động ngoại trừ tùy chọn "Chia sẻ" từ Trình tổ chức. Nó nói: Lỗi: Kiểm tra Codesign thất bại ... Nhưng có lẽ nó không phải là vấn đề ở đây.Phân phối iPhone ứng dụng chưa ký cho iPhone đã bẻ khóa mà không có Cydia

Lấy thư mục .app của ứng dụng và nén vào .ipa không có chữ ký, nhưng khi tôi tải ứng dụng lên máy chủ và thử tải xuống qua giao thức dịch vụ itms, thanh tiến trình trên thiết bị sắp hết hạn và không tải xuống được ....

Có ai có kinh nghiệm với điều đó không?

Trả lời

1

Tôi có chính xác cùng một câu hỏi như bạn có: Tôi đang tìm cách phân phối ứng dụng iOS cho iPhone đã bẻ khóa, mà không phải qua Cydia.

itms-services hoạt động khi tôi cung cấp hồ sơ cấp phép hợp lệ. Whit không có hồ sơ cấp phép, nó không hoạt động.

Một lưu ý tuy nhiên đối với bạn Alexei: ứng dụng chưa ký sẽ không hoạt động trên iPhone, ngay cả khi nó đang bẻ khóa. Bạn cần ít nhất một ứng dụng tự ký. Jailbreak loại bỏ sự cần thiết cho chữ ký của nhà phát triển được Apple phê duyệt, nó không loại bỏ sự cần thiết phải có chữ ký nào cả. Bạn có thể tự ký mã của mình bằng "ldid -S" trên thiết bị được bẻ khóa. Ngoài ra còn có một phiên bản ldid cho Mac OS X tại http://dl.dropbox.com/u/3157793/ldid

Hãy tiếp tục cập nhật chủ đề này với tiến trình của bạn - Tôi sẽ làm như vậy.

[CHỈNH SỬA]

Có thể tạo chứng chỉ tự ký và sử dụng chứng chỉ từ Xcode. Sau đó, ứng dụng có thể được cài đặt bằng lệnh scp -r.

Sau đó, tôi đã tạo tệp IPA theo cách thủ công và phân phát tệp qua một máy chủ web có URL itms-services. Cài đặt không thành công với "" App "Không thể cài đặt vào thời điểm này"

Khi nhìn vào giao diện điều khiển, nó nói:

Mar 14 17:31:32 unknown installd[4276] <Error>: developer cert trust result = 5 Mar 14 17:31:32 unknown installd[4276] <Error>: 00485000 verify_signer_identity: Could not copy validate signature: -402620392 Mar 14 17:31:32 unknown installd[4276] <Error>: 00485000 preflight_application_install: Could not verify executable at /var/tmp/install_staging.AnmaAp/foo_extracted/Payload/App.app Mar 14 17:31:32 unknown com.apple.itunesstored[4272] <Notice>: MobileInstallationInstall: failed with -1 Mar 14 17:31:32 unknown installd[4276] <Error>: 00485000 install_application: Could not prefligh

Lý do là /usr/libexec/installd chương trình được kiểm tra chữ ký hợp lệ khi cài đặt ứng dụng . Điều này có thể được vá và tàn tật với các công cụ như http://hackulo.us/wiki/AppSync hoặc http://jamesisbored.com/iphone/bootleg) nhưng tôi sẽ không đi theo cách đó vì hai lý do:

  • Đầu tiên nó sẽ mở ra cánh cửa cho bất kỳ cài đặt trên iPhone
  • thứ hai bởi vì người dùng của bạn sẽ phải đó một lần nữa sau mỗi lần cập nhật iOS (và sự sẵn có của một bản vá không được bảo đảm cho các phiên bản trong tương lai)

vì vậy, điều này khiến tôi với hai lựa chọn: A/bỏ này ý tưởng B/phát triển MISValidateSignatureAndCopyInfo của riêng tôi bỏ qua mã và sử dụng nó te mporary cho thời gian cần thiết để cài đặt ứng dụng của tôi.

+0

Trước khi thử phân phối nó, bạn có kiểm tra xem ứng dụng có hoạt động từ cài đặt thủ công trên thiết bị hay không (sử dụng scp để lưu trữ tệp trên thiết bị) ?? –

+0

Cảm ơn! ghi chú giúp ích! Và có, tôi đã kiểm tra ứng dụng từ cài đặt thủ công và thậm chí với hồ sơ cấp phép hợp lệ. Và nó hoạt động. Bạn có biết cách cài đặt hồ sơ cấp phép không có cáp không? –

+0

có, chỉ cần hiển thị nó trong một trang web và tải xuống từ Mobile Safari (http: //your_server/file.mobileprovision) –

3

Xin lỗi về sự thức tỉnh một chủ đề lứa tuổi tuổi, nhưng chỉ trong trường hợp có ai có câu hỏi này trong tương lai:

Giao thức itms-dịch vụ đưa ra yêu cầu để hai máy chủ: oscp.apple.com, và máy chủ khác (mà bạn có thể tìm thấy hiểu thêm về trên trang web của Apple). Các máy chủ kiểm tra xem Apple đã tạo ra khóa công khai cho các chứng chỉ ký và liệu chúng có bị thu hồi hay không.

Thông thường, sẽ không có cách nào bỏ qua điều này, nhưng những gì iPhone kiểm tra là phản hồi "xấu". Nếu nó phát hiện một, nó sẽ từ chối ứng dụng. Tuy nhiên, nếu nó không nhận được phản hồi, thì nó sẽ không từ chối ứng dụng.

Vì vậy, những gì bạn muốn làm ở đây có lẽ là tạo một máy chủ DNS tùy chỉnh, sẽ liệt kê hai máy chủ Apple làm hai máy chủ khác. Sau đó, tạo một tệp cấu hình di động sẽ thay đổi máy chủ DNS mặc định của iPhone thành máy chủ của bạn. Ứng dụng sau đó sẽ được cài đặt đúng cách.

Các vấn đề liên quan