Apple kiểm soát thông báo đẩy từ xa. Nếu bạn đang ngoại tuyến, bạn không thể vô hiệu hóa nó. Khi Apple lần đầu tiên nhìn thấy bạn trực tuyến và đẩy không bị vô hiệu hóa, nó sẽ gửi cho bạn đẩy. Không có cách nào để ngăn chặn iDevice hiển thị các push mà apple gửi cho người dùng, vì nó không nằm trong tay của ứng dụng.
Vì vậy, chỉ có một khả năng: Bạn phải tắt tính năng NGAY LẬP TỨC sau khi thiết bị trực tuyến trở lại. Và nó vẫn là một câu hỏi may mắn, những gì Apple nhận được tin nhắn đầu tiên, rằng bạn đang trực tuyến hoặc bạn vô hiệu hóa push. Và cũng có câu hỏi, điều gì sẽ xảy ra với các thông báo mà Apple muốn gửi tới thiết bị khi nó ngoại tuyến. Nó sẽ gửi lại chúng dù sao khi trực tuyến hoặc loại bỏ chúng khi vô hiệu hóa đầu tiên? Tôi không biết. Bạn sẽ cần phải làm nghiên cứu.
Vì vậy, cơ hội duy nhất bạn có là nếu ứng dụng của bạn ở chế độ nền trong khi người dùng trực tuyến. Bạn sẽ cần phải ngăn ứng dụng của mình bị tạm ngưng (here's cách đạt được điều đó) để có thể phản hồi lại thông báo hệ thống. Thông báo mà bạn cần là thay đổi trạng thái trực tuyến, tôi chỉ biết nó tồn tại. This resource có thể hữu ích. Khi thiết bị trực tuyến, nó sẽ thông báo cho ứng dụng của bạn đang đợi trong nền (không bị treo). Sau đó, bạn có thể phản ứng bằng cách hủy đăng ký điều khiển từ xa ngay lập tức.
Đó là điều tốt nhất bạn có thể đạt được theo hướng đó. Hi vọng điêu nay co ich.
Bạn không cần phải kết nối với internet để hủy đăng ký? – DGund
@DGund Tôi đã cùng quan niệm sai lầm nhưng thực tế bạn cần trực tuyến để hủy đăng ký nhận thông báo thành công. Bạn vẫn nhận được thông báo nếu bạn chưa đăng ký trong khi bạn không có kết nối. – user1732255