12

Tôi đã triển khai thành công APN cho Môi trường phát triển. Nhưng tôi đang phải đối mặt với vấn đề trong khi thực hiện tương tự cho môi trường phân phối ad-hoc. Ai cũng có thể đề nghị tôi làm tôi cần tạo các Id ứng dụng, Chứng chỉ và Hồ sơ cấp phép khác không? Và có bất kỳ thay đổi nào trong Sandbox không? Hướng dẫn các bước sẽ được đánh giá rất cao.Bật Thông báo đẩy của Apple cho môi trường phân phối quảng cáo

Cảm ơn Saleel Karkhanis

Trả lời

25

Đối với phân phối Adhoc, hãy làm theo các hướng dẫn dưới đây:

  1. Trong Provisioning Portal, Tạo một giấy chứng nhận phân phối.
  2. Lấy "ID thiết bị" của iPhone mà bạn định sử dụng để thử nghiệm. Mở iTunes -> Kết nối thiết bị của bạn -> Chọn thiết bị của bạn -> Trong Ngăn Tóm tắt, Nhấp vào nhãn Số sê-ri, nó sẽ thay đổi thành số nhận dạng (40 ký tự Hex) -> Chọn Chỉnh sửa, Sao chép.
  3. Trong cổng cấp phép, đi tới thiết bị -> Thêm thiết bị mới -> Nhập ID thiết bị đã sao chép và đặt tên cho nó.
  4. Trong cổng cấp phép, tạo hồ sơ cấp phép phân phối. (Chuyển đến Cấp phép -> Phân phối). Đối với loại Distibution, kiểm tra "AdHoc". Chọn Id ứng dụng, Nếu bạn có chứng chỉ phân phối, nó sẽ tự động được chọn ở đây. Chọn thiết bị vừa mới nhập và Gửi. Tải xuống Hồ sơ cấp phép này.
  5. Trong Xcode, Window -> Organiser. Nhấp vào Thiết bị và chọn Thư viện -> Cấu hình cấp phép. Nếu bạn là quản trị viên, sau đó nhấp vào Làm mới sẽ tìm nạp hồ sơ cấp phép mới được tạo. Nếu không, hãy kéo và thả Cấu hình cấp phép Adhoc vào danh sách này.
  6. Trong Xcode, trong dự án của bạn Xây dựng Cài đặt -> Mã ký nhận dạng -> Phần phát hành, Chọn "Phân phối iPhone". Đối với "Mọi SDK iOS", hãy chọn Cấu hình cấp phép mới được tạo. Nó sẽ có sẵn trong danh sách.
  7. Trong Xcode, Sản phẩm -> Lưu trữ. Sau khi hoàn thành, Lưu trữ, nó sẽ tự động mở cửa sổ Lưu trữ. Chọn dự án và nhấp vào Phân phối, Trong cửa sổ Phân phối, Chọn "Lưu cho Doanh nghiệp hoặc Triển khai AdHoc" -> Chọn "Mã nhận dạng ký hiệu" tương ứng với Cấu hình cấp phép mới. Tiếp tục quá trình và điều này sẽ tạo ra một tập tin ".ipa".
  8. Gửi tệp .ipa này và hồ sơ cấp phép mới để thử nghiệm phân phối adHoc.

Làm thế nào để nạp phân phối Adhoc trên thiết bị thử nghiệm:

  1. Mở iTunes, Kết nối điện thoại thử nghiệm của bạn.
  2. Kéo và thả hồ sơ cấp phép mới vào iTunes.
  3. Kéo và thả tệp .ipa iTunes.
  4. Đồng bộ hóa thiết bị ur. Thao tác này sẽ tải ứng dụng.

Đối Đẩy Notifications để làm việc trên phân phối Adhoc:

  1. Sử dụng giấy chứng nhận sản xuất.
  2. Sử dụng sản xuất APN Host: gateway.push.apple.com
  3. Sử dụng phản hồi sản xuất APN Máy chủ: feedback.push.apple.com.
+2

Vui lòng cập nhật bước cho Xcode 8.x quá bởi vì tôi không thể làm theo các bước 5 và 7 trong Phiên bản mới. – Dashrath

1

Tôi cũng gặp vấn đề lớn với vấn đề này. Tôi đã hoàn toàn không có lỗi trong mã của tôi. Tôi chưa bao giờ có một thông báo đẩy trên điện thoại trong Ad Hoc.

Hóa ra tôi đã gặp phải vấn đề với chứng chỉ của mình. Tôi đã tạo

Tôi thực sự không chắc chắn vấn đề là gì, nhưng tôi đã giải quyết vấn đề bằng cách đăng nhập vào tài khoản nhà phát triển của mình làm đại lý nhóm và tạo lại mọi thứ trong thông tin đăng nhập đó. Ban đầu tôi đã tạo chứng chỉ làm quản trị viên nhóm.

Chế độ phát triển của bạn có thể hoạt động tốt, vì mọi thành viên trong nhóm đều có thể tạo hồ sơ phân phối phát triển. Nhưng chỉ một số thành viên trong nhóm mới có thể tạo hồ sơ phân phối. Yêu cầu nhân viên nhóm của bạn tạo mọi thứ và thử lại.

0

Ngoài câu trả lời của Sushma Satish, Khi bạn thay đổi chứng chỉ từ phát triển thành distributon, mã thông báo thiết bị được tạo cho điện thoại của bạn khác. Vì vậy, hãy đảm bảo bạn đang thay đổi mã thông báo thiết bị trên máy chủ.

1

Có một kết nối liên tục riêng biệt với dịch vụ đẩy cho từng môi trường (Phát triển và Sản xuất). Hệ điều hành thiết lập một kết nối liên tục đến môi trường sandbox để xây dựng các phát triển; quảng cáo hoc và phân phối xây dựng kết nối với môi trường sản xuất.

Nếu bạn đang sử dụng GCM. Truy cập AppDelegate.swift của bạn. Tìm phương pháp: didRegisterForRemoteNotificationsWithDeviceToken và thay thế

registrationOptions = [kGGLInstanceIDRegisterAPNSOption:deviceToken, 
          kGGLInstanceIDAPNSServerTypeSandboxOption:true] 

với

registrationOptions = [kGGLInstanceIDRegisterAPNSOption:deviceToken, 
          kGGLInstanceIDAPNSServerTypeSandboxOption:false 
Các vấn đề liên quan