2011-11-11 33 views
9

Tôi hiện đang làm việc trên một ứng dụng Android có triển khai C2DM và tôi đã triển khai thành công nó. Nhưng Bây giờ tôi gặp sự cố khi gửi tin nhắn tới nhiều thiết bị.Một số truy vấn trên C2DM trong Android

Theo hiểu biết của tôi sau đây sẽ được trình cho nó:

  1. Lưu reg id & authcode trong cơ sở dữ liệu (Giả sử trong bảng C2DM)
  2. Send message với một vòng lặp cho tất cả các dữ liệu từ C2DM.

Nhưng vấn đề là:

mỗi khi tôi bắt đầu ứng dụng nó yêu cầu reg id & gửi nó đến máy chủ vì vậy nếu một thiết bị đăng ký 10 lần vòng lặp trên sẽ thất bại 9 lần & làm việc một thời gian & điều này sẽ làm cho cơ sở dữ liệu rất lớn mà không phải là hữu ích.

Có ai biết mã phía máy chủ (Tôi đang sử dụng PHP) khi chúng tôi muốn gửi tin nhắn tới tất cả thiết bị bằng ứng dụng của tôi & cách tôi nên lưu reg_id & authcode trong cơ sở dữ liệu.

cảm ơn

+0

u cũng có thể gắn thẻ bài đăng ur bằng PHP để nhận câu trả lời có liên quan. – Kanika

+0

bạn nên biết mã thông báo đăng ký với máy chủ c2dm sẽ thay đổi giờ làm thêm. do đó trong db máy chủ của bạn cùng một thiết bị có thể có rất nhiều mã thông báo khác nhau được lưu trữ. u có thể thực hiện một công việc cron để xóa những công việc cũ hơn. – Jianhong

Trả lời

3

Giải pháp của tôi vừa được để đánh dấu kỷ lục như xóa trong cơ sở dữ liệu của tôi nếu Google mang lại cho tôi một câu trả lời cho thấy rằng nó là một đăng ký không hợp lệ hoặc không còn đăng ký. Sau đó, nó chỉ thất bại một lần cho một đăng ký nhất định.

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