2011-11-07 59 views
15

enter image description hereLàm cách nào để hiển thị lại Chế độ xem thông báo "Bạn muốn gửi cho bạn thông báo đẩy"?

Tôi có thể hiển thị Chế độ xem thông báo giống như hình ảnh ở trên sau khi đăng ký Thông báo từ xa. Nhưng khi tôi xóa Ứng dụng dự án của mình và tạo lại nó, nó sẽ không hiển thị nữa.

Sẽ có cơ hội để hiển thị lại chế độ xem cảnh báo cho cùng một thiết bị không?

Điều tôi thích là nhận mã thông báo thiết bị của mình một lần nữa vì tôi không thể lưu tạm thời mã thông báo thiết bị trong NSUserDefaults.

Trả lời

7

Lúc khởi động, ứng dụng của bạn nên yêu cầu một mã thông báo qua:

- (void)registerForRemoteNotificationTypes:(UIRemoteNotificationType)types 

và sẽ nhận được một mã thông báo từ iOS trong thông điệp đại biểu:

– application:didRegisterForRemoteNotificationsWithDeviceToken: 

iOS sẽ nhắc nhở người dùng cho phép thông báo chỉ khi cần thiết. Nếu thông báo từ xa đã được ủy quyền cho ứng dụng của bạn thì cảnh báo sẽ không xuất hiện và ứng dụng của bạn sẽ nhận được mã thông báo hợp lệ.

Net là bạn không thể buộc cảnh báo nhưng bạn không cần.

+0

sẽ ứng dụng của tôi luôn nhận được bên trong phương pháp này - ứng dụng: didRegisterForRemoteNotificationsWithDeviceToken: tại thời điểm ra mắt? không thể kiểm tra được ở đây tại nhà, sẽ kiểm tra mặc dù ngày mai tại nơi làm việc – bluezald

+3

Bạn sẽ luôn nhận được một trong 'ứng dụng: didRegisterForRemoteNotificationsWithDeviceToken:' hoặc 'application: didFailToRegisterForRemoteNotificationsWithError:' – XJones

+0

tôi thấy, tôi gặp lỗi này, không hợp lệ 'aps-environment , anyway anyway cảm ơn cho câu trả lời: D – bluezald

3

Có.

http://developer.apple.com/library/ios/#technotes/tn2265/_index.html

Nếu bạn muốn mô phỏng một lần đầu chạy ứng dụng, bạn có thể rời khỏi ứng dụng gỡ bỏ cài đặt cho một ngày. Bạn có thể đạt được thứ hai mà không thực sự chờ đợi một ngày bằng cách thiết lập đồng hồ hệ thống chuyển tiếp một ngày trở lên, tắt thiết bị hoàn toàn, sau đó bật lại thiết bị.

+0

Điều này dường như không hoạt động nữa ... – jwhat

+0

Rõ ràng đây là lỗi và một báo cáo lỗi đã được mở bằng Apple. – perezda

+1

Apple nói điều này chỉ hoạt động với iOS <5 (tức là <= 4. *) Không rõ liệu chúng có nghĩa là mẹo cài đặt đồng hồ chỉ hoạt động với iOS <5 hoặc gỡ cài đặt trong một ngày chỉ hoạt động với iOS <5. – rjmunro

11

Phát biểu vấn đề trình bày các thông báo đẩy quyền thoại lại khi cần thiết để thử nghiệm - điều này chắc chắn là một cách giải quyết, nhưng ở đây đi:

Có vừa hoàn thành công việc trên một ứng dụng có sử dụng Đẩy Thông báo rộng rãi, và có Tôi đã thử tất cả các hoán vị thông thường, không thành công ... Cuối cùng tôi nhận ra rằng cách hợp lý nhất để giải quyết vấn đề đó là sử dụng thiết bị chỉ để thử nghiệm (ví dụ, iPod Touch cấp thấp).

Để đặt lại hộp thoại, hãy thực hiện Cài đặt> Chung> Đặt lại> Xóa tất cả nội dung và cài đặt. Đi qua quá trình thiết lập của thiết bị, cài đặt lại ứng dụng và Go.

Đây là cách duy nhất tôi tìm thấy để kiểm tra trải nghiệm 'khởi chạy đầu tiên' theo yêu cầu, khi cần thiết trong quá trình phát triển/thử nghiệm. Nó cũng bổ sung thêm rất nhiều tính linh hoạt bổ sung cho quá trình này.

Không cần thiết phải nghỉ mát cho tất cả điều này, nhưng tôi rất vui vì tôi đã làm, vì nó hóa ra là một vị thần thực sự. FWIW.

[P.S. Nó cũng có thể sẽ chứng minh tiện dụng trong tương lai để thử nghiệm các phiên bản beta của hệ điều hành, v.v.]

+2

Có cách tốt hơn để thực hiện việc này - https://developer.apple.com/library/ios/technotes/tn2265/_index.html Cuộn xuống cuối Ghi chú công nghệ ("Đặt lại thông báo cấp quyền thông báo đẩy trên iOS") để xem hướng dẫn để đặt lại quyền thông báo đẩy mà không cần đặt lại thiết bị. Điều này rất hữu ích nếu bạn không thể sử dụng thiết bị riêng chuyên dụng và không muốn phải đặt lại thiết bị cá nhân của mình mỗi lần. – Sid

+1

Điều này, kết hợp với nhận xét của @ Sid là câu trả lời đúng. Tôi đã theo dõi quy trình tại liên kết được tham chiếu bởi sid và tôi có thể lặp lại hiển thị cảnh báo. Mặc dù xóa tất cả nội dung và cài đặt là thực tế hơn, không phải ai cũng sẽ có một iDevice chỉ có sẵn để thử nghiệm. – Chris

3

Tạm thời thay đổi id gói của bạn.

com.mycompany.app -> com.mycompany.app1

+0

Tôi thấy đây là cách dễ dàng hơn để kiểm tra ứng dụng của bạn nhiều lần thay vì sau đó bật thiết bị của bạn và tắt ngày khác. – fahrulazmi

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