2009-11-17 40 views
6

Với APNS, khi một thiết bị đăng ký, mã thông báo đăng ký có hiệu lực trong bao lâu? Toàn bộ thời gian ứng dụng được cài đặt? Tôi dường như nhớ lại một lưu ý trong tài liệu nói rằng nó chỉ tốt cho đến khi đồng bộ/thiết lập lại, nhưng nhìn vào tài liệu một lần nữa tôi không thể tìm thấy ghi chú đó (và nó đã không đúng trong thử nghiệm của tôi) . Có ai có thể xác nhận mỗi mã thông báo có hiệu lực trong bao lâu không?Mã thông báo APNS có hiệu lực trong bao lâu?

Trả lời

1

Dường như nó chỉ thay đổi khi thiết bị bị xóa. Các mặt hàng này trong các tài liệu cho các ứng dụng: didRegisterForRemoteNotificationsWithDeviceToken:

Lưu ý rằng các dấu hiệu thiết bị đang khác với uniqueIdentifier tài sản của UIDevice bởi vì, cho lý do an ninh và sự riêng tư, nó phải thay đổi khi thiết bị được xóa.

+0

Tôi không nghĩ như vậy. Nó C ALNG và EVERYTIME thay đổi, khi thiết bị bị xóa, nhưng chỉ ngoài tất cả các thay đổi mã thông báo khác. – stk

+0

câu trả lời khác dường như trích dẫn một công nghệ táo rằng mã thông báo APN hết hạn, nhưng sau một khoảng thời gian (đối với hầu hết các ứng dụng) tương đương với không bao giờ: 24 tháng. Xem phần này để biết thêm chi tiết http://stackoverflow.com/questions/6652242/does-the-device-token-ever-change-once-created –

5

Ngoài việc thay đổi khi thiết bị bị xóa sạch, mã thông báo cho combo ứng dụng/thiết bị cũng sẽ thay đổi khi được sửa lỗi trên thiết bị có Xcode.) phiên bản của ứng dụng.

Tôi gặp sự cố gần đây khi lưu trữ nhiều mã thông báo thiết bị cho điện thoại của riêng mình. Tôi có hai thẻ trong cơ sở dữ liệu của chúng tôi cho một điện thoại. Một người được giao cho tôi khi tôi đang phát triển với Xcode và người kia được chỉ định từ phiên bản phát hành của ứng dụng.

Sự cố là mã thông báo gỡ lỗi chỉ hoạt động trên máy chủ hộp cát và mã thông báo phát hành chỉ hoạt động trên máy chủ sản xuất. Khi tôi đang thử nghiệm, tôi đã gửi cảnh báo cho cả hai thẻ và Apple sẽ thả kết nối SSL của tôi vì một trong số chúng không hợp lệ.

Điều đó đang được nói, tôi tin rằng Apple có quyền thay đổi chúng bất cứ khi nào họ muốn, đó là lý do tại sao cần phải yêu cầu mã thông báo khi khởi chạy ứng dụng.

Tôi hy vọng điều đó sẽ hữu ích.

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