15

Có một số câu hỏi tương tự ở đây, nhưng không ai có thể trả lời câu hỏi cơ bản của tôi:Nhiều chứng chỉ/hồ sơ cung cấp trong một trình tổ chức Xcode?

Có thể có hai chứng chỉ nhà phát triển riêng trong keychain và hai cấu hình phân phối tương ứng trong tổ chức không?

Tôi có chứng chỉ dành cho nhà phát triển (làm việc) của riêng mình và hồ sơ cấp phép cho các ứng dụng iPhone của riêng tôi. Bây giờ tôi đã hoàn thành một dự án cho một khách hàng và muốn sử dụng tài khoản nhà phát triển/chứng chỉ/provisioning hồ sơ của mình để gửi ứng dụng của mình đến cửa hàng ứng dụng trên tài khoản của mình.

Điều đó có thể thực hiện được không?

Cho đến nay, tôi đã tải xuống và cài đặt chứng chỉ của mình và chúng hiển thị trong keychain của tôi và tôi đã cài đặt hồ sơ cấp phép của mình trong Trình tổ chức, nhưng Trình tổ chức cho tôi biết "Không thể tìm thấy nhận dạng ký hợp lệ trong hồ sơ của bạn." . Tương tự, bản lưu trữ không thành công.

Tôi không thể tìm cách báo cho Người tổ chức sử dụng chứng chỉ của khách hàng thay vì của tôi - tôi nghĩ đây là vấn đề.

Cảm ơn bạn đã trợ giúp!

+0

bạn có đặt giá trị thích hợp trong cài đặt xây dựng không? –

+0

Tôi không thể đặt mã nhận dạng mã cho cấu hình phân phối - nó đã bị chuyển sang màu xám, có lẽ vì Trình tổ chức không thể tìm thấy nhận dạng chữ ký. Nhưng nó hoạt động ngay bây giờ, xem bên dưới. – marimba

Trả lời

22

Có, tôi đã tạo các dự án xây dựng cửa hàng ứng dụng cho khách hàng nhiều lần bằng chứng chỉ phân phối của họ. Không cần sử dụng chứng chỉ nhà phát triển của họ. Có rất nhiều điều có thể có thể đi sai ở đây, nếu bạn có quyền truy cập vào tài khoản của khách hàng mà bạn có thể đi vào cổng cung cấp và kiểm tra những điều trên:

  • chắc chắn bó ID trong các thiết lập dự án trùng khớp với ID ứng dụng trên cổng cung cấp iOS (com.company.appname thường)

  • đảm bảo hồ sơ cấp phép cửa hàng ứng dụng được đánh dấu là "hợp lệ" và hiển thị trong chứng chỉ phân phối.

  • đảm bảo cấu hình xây dựng cửa hàng ứng dụng trong xcode tham chiếu đến cert phân phối của ứng dụng khách.

  • mở khóa móc của bạn và đảm bảo rằng cert phân phối ứng dụng khách cũng có khóa riêng đi kèm. Đây có thể là vấn đề, đó là phần thường bị bỏ quên. Khách hàng phải xuất khóa riêng của mình cho chứng chỉ dist của mình và gửi cho bạn trong tệp .p12 cùng với mật khẩu tới tệp .p12. Không thể sử dụng chứng chỉ dist để ký ứng dụng mà không có khóa riêng!

  • đôi khi chỉ thoát Xcode và khởi động lại nó sẽ giúp ích.

+0

Đó chính xác là loại danh sách kiểm tra tôi đã hy vọng, và bạn đã đúng, tôi đã bỏ lỡ khóa riêng. Hoạt động hoàn hảo ngay bây giờ. Cảm ơn bạn rất nhiều, bạn đã làm cho ngày của tôi. – marimba

+9

Vui mừng khi có thể giúp bạn thoát khỏi "ký địa ngục thất bại". Nó sẽ không được tốt đẹp nếu thông báo lỗi của Apple cho biết, "chứng chỉ thiếu khóa riêng"? – Bogatyr

+0

"đôi khi chỉ bỏ Xcode và khởi động lại nó giúp" làm việc trong trường hợp của tôi, tôi khuyên bạn nên làm như vậy * bước đầu tiên * nếu bạn gặp phải vấn đề này –

4

Xem giải pháp này để nhân đôi giấy chứng nhận: http://tapadoo.com/2012/certificates-magically-re-appearing-in-your-keychain-try-this/

Các ý là nếu bạn có một khóa bí mật cũ và provisioning hồ sơ xung quanh, bạn có thể chạy vào một trường hợp Xcode sẽ tái tạo một chứng chỉ cũ trong keychain của bạn. Điều này sẽ làm cho mã ký gag vì nó yêu cầu một chứng chỉ duy nhất với một tên đã cho. Xóa khóa riêng tư cũ sẽ giải quyết vấn đề này.

+0

Trong khi điều này có thể trả lời câu hỏi về mặt lý thuyết, [nó sẽ là thích hợp hơn] (http : //meta.stackexchange.com/q/8259) để bao gồm các phần thiết yếu của câu trả lời ở đây và cung cấp liên kết để tham khảo. –

1

Easy Mode

(Tôi ghét các lỗi này xuất khẩu cổ xưa quá tệ. Vì vậy, nhiều giờ lãng phí.Tôi không tôn giáo nhưng tôi vẫn cầu nguyện này sẽ giúp bạn)

  • Đăng nhập vào https://developer.apple.com
  • đi Certificates, định danh & Profiles
  • đáy trái: Provisioning Profiles
  • Xóa bất kỳ bản sao/hồ sơ không hợp lệ (trong trường hợp của tôi, tôi chỉ có một nhưng nó không hợp lệ)

Lưu ý: nếu bạn đang cố gắng để xuất khẩu một kho lưu trữ, bạn có thể rời khỏi cửa sổ xuất khẩu mở, xóa một provisioning hồ sơ, sau đó bấm vào nút "thử lại" hoặc bất cứ điều gì vào nút nói. Điều này sẽ giúp bạn tiết kiệm không phải lưu trữ lại và hơn

# xcode8.2.1 # osx10.11.6