Xin chào chúng tôi đang làm việc trên một ứng dụng android trong đó GCM đóng vai trò rất quan trọng trong việc như mục đích tiếp thị, đẩy một số thông tin quan trọng cho người sử dụng, vvlà gì ID lý do GCM không có sẵn trong một số trường hợp trong android
Nó làm việc tốt trong 60-70% trường hợp nhưng khác 30-40% nó không hoạt động. Vì vậy, phần còn lại của người dùng không bao giờ nhận được bất kỳ thông báo nào chỉ hữu ích cho họ.
Đây là lý do khiến chúng tôi mất người dùng hàng ngày. Dưới đây là mã của tôi để có được ID đăng ký của GCM.
String msg = "";
int exceptionOccurRetry = 0;
while (exceptionOccurRetry < 5) {
try {
if (gcm == null) {
gcm = GoogleCloudMessaging.getInstance(context);
}
int retry = 0;
while (retry < 5 && regid.length() == 0) {
regid = gcm.register(SENDER_ID);
++retry;
}
msg = "Device registered, registration ID=" + regid;
if (!regid.equals("")) {
// You should send the registration ID to your
// server
// over HTTP, so it
// can use GCM/HTTP or CCS to send messages to your
// app.
sendRegistrationIdToBackend();
}
break;
} catch (IOException ex) {
msg = "Error :" + ex.getMessage();
exceptionOccurRetry++;
}
}
Chúng tôi đang tìm kiếm những lý do khiến ID GCM không khả dụng đối với một số người dùng.
Chúng tôi chỉ biết một lý do là nếu thiết bị của người dùng không cài đặt Dịch vụ của Google Play trên điện thoại của người dùng thì nó không hoạt động.
Chúng tôi đang tìm kiếm một số lý do khác để giải quyết vấn đề này.
Xin chào Williams, cậu đang làm việc tại Telegram sứ giả? –
Người dùng GCM ID có thể thay đổi, nếu họ thay đổi, bạn phải bắt kịp! –
Có, chúng tôi đã cập nhật GCM nếu tất cả người dùng. Tôi có nghĩa là khi tôi cố gắng gọi phương thức đăng ký thì đôi khi có thể không nhận được ID. Tôi muốn biết lý do tại sao nó là như vậy –