62

khi sử dụng xcode 8 làm cài đặt thông báo push, không giống như xcode 7 tập tin, xcode 8 nhu cầu phát triển bật thông báo đẩy switch năng lực (đặt tại TARGETS -> AppName -> Capabilities như sau pic), push notifications capabilitiesxcode 8 đẩy khả năng thông báo và các chế độ thiết lập

sau đó nó sẽ tạo ra AppName.entitlements tập tin như sau

//AppName.entitlements 
<key>aps-environment</key> 
<string>development</string> 

nhưng đối với phiên bản sản xuất ứng dụng, nếu chúng ta thay đổi chuỗi để

//AppName.entitlements 
<key>aps-environment</key> 
<string>production</string> 

thì khả năng hiển thị một cảnh báo

Capabilities warning

và có vẻ như không có vấn đề mà chuỗi giá trị quy định tại aps-môi trường, chúng tôi vẫn có thể nhận được các thiết bị đẩy thẻ tại application:didRegisterForRemoteNotificationsWithDeviceToken:

nên thiết lập chính xác của các quyền lợi thông báo đẩy là gì? cảm ơn bạn

+2

Bất kỳ tin tức về điều đó? Tôi đã thử tùy chọn "sản xuất" quá nhưng lực lượng XCode thay đổi thành "phát triển" sau khi nhấp vào "Khắc phục sự cố" – WedgeSparda

+4

Tôi đã lưu trữ ứng dụng và gửi cho Appstore với tùy chọn 'phát triển 'kỳ lạ và vẫn có thể nhận thông báo đẩy từ xa. tại thời điểm đó, tệp mobileprovision trong ứng dụng đã lưu trữ hiển thị tùy chọn 'production' 'aps-environment' –

+1

trong ứng dụng của tôi khi tôi đang gỡ lỗi apn hoạt động tốt, khi tôi phát hành cho phân phối doanh nghiệp i xcode 8.1 iOS không bao giờ nhận được bất kỳ thông báo đẩy nào ... –

Trả lời

32

Tôi đã đấu tranh với điều đó hôm nay trong Xcode 8 GM. Sau khi tắt cài đặt, xóa hồ sơ cấp phép cổng thông tin nhà phát triển của tôi và tạo lại hồ sơ và bật lại cài đặt, tôi có thể loại bỏ cảnh báo trong Xcode. Hãy nhớ rằng tôi đã không fiddle với các tập tin quyền lợi. Tôi để nó ở môi trường phát triển và sau khi lưu trữ, tôi nhận được thiết lập môi trường aps chính xác (sản xuất).

vẻ Xcode là im lặng rất buggy tho ngay cả trong GM

+3

cảm ơn, tôi đoán hiện tại chúng tôi phải gửi Ứng dụng bằng cách sử dụng tùy chọn kỳ lạ này, nhưng vẫn có thể nhận được thông báo đẩy từ xa chính xác. chờ đợi cho Apple sửa chữa. –

+2

Đây là sự điên rồ - nhóm của chúng tôi không thể thay đổi giá trị sản xuất, mặc dù đã xóa tất cả hồ sơ cấp phép cục bộ, ký mã theo cách thủ công và nhập hồ sơ sản xuất đã xác minh – Shaun

+0

@Shaun Bạn có cố gắng thay đổi nó trong tệp quyền lợi hay không bạn thấy rằng trong tổ chức sau khi lưu trữ và cố gắng gửi? Nếu bạn thấy nó trong tổ chức, hãy thử bỏ chọn "Tự động quản lý đăng nhập" trong tab "Chung" trong dự án của bạn và sau đó chọn cấu hình cấp phép chính xác từ trình đơn thả xuống. – Shardon

0

Vấn đề của tôi là khách hàng pusher của tôi là lỗi thời và sẽ chỉ đẩy thành công thẻ debug. Một vấn đề khác mà tôi vẫn đang khắc phục là tôi chỉ có thể xuất ứng dụng thông qua phòng tập thể dục với tính năng di sản-api được kích hoạt, điều này không đặt môi trường apns thành 'sản xuất' và để nó là 'phát triển' trong ' tệp nhúng-mobile.provision '. Tuy nhiên, tôi đã có thể triển khai thành công ứng dụng thông qua trình tổ chức xcode để làm việc với apns (prod) ngay bây giờ.

0

Tôi nghĩ rằng giải pháp tốt hơn là mở gói dự án và mở project.pbxproj

thay đổi các CODE_SIGN_ENTITLEMENTS

CODE_SIGN_ENTITLEMENTS = "your-app/production.entitlements"; 
+2

Ông đã có tập tin quyền lợi được liên kết trong dự án của mình, vấn đề là giao diện người dùng Xcode hiển thị cảnh báo và nếu bạn nhấp vào "Khắc phục sự cố", tệp quyền lợi sẽ chứa giá trị "phát triển", có thể là bây giờ bạn muốn khi bạn phát hành ứng dụng của mình. –

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