diff --git a/src/org/linphone/LinphonePreferences.java b/src/org/linphone/LinphonePreferences.java index c5ef97bf3..abae7649d 100644 --- a/src/org/linphone/LinphonePreferences.java +++ b/src/org/linphone/LinphonePreferences.java @@ -988,6 +988,7 @@ public class LinphonePreferences { public void setPushNotificationRegistrationID(String regId) { getConfig().setString("app", "push_notification_regid", regId); + setPushNotificationEnabled(isPushNotificationEnabled()); } public String getPushNotificationRegistrationID() { diff --git a/src/org/linphone/compatibility/ApiEightPlus.java b/src/org/linphone/compatibility/ApiEightPlus.java index c9e47a198..04bb51d00 100644 --- a/src/org/linphone/compatibility/ApiEightPlus.java +++ b/src/org/linphone/compatibility/ApiEightPlus.java @@ -46,11 +46,9 @@ public class ApiEightPlus { final String regId = (String)GCMRegistrar.getMethod("getRegistrationId", Context.class).invoke(null, context); String newPushSenderID = context.getString(R.string.push_sender_id); String currentPushSenderID = LinphonePreferences.instance().getPushNotificationRegistrationID(); - if (regId.equals("") || currentPushSenderID == null || !currentPushSenderID.equals(newPushSenderID)) { + if (regId.equals("") || currentPushSenderID == null) { GCMRegistrar.getMethod("register", Context.class, String[].class).invoke(null, context, new String[]{newPushSenderID}); - Log.d("Push Notification: storing current sender id = " + newPushSenderID); - LinphonePreferences.instance().setPushNotificationRegistrationID(newPushSenderID); } else { Log.d("Push Notification: already registered with id = " + regId); LinphonePreferences.instance().setPushNotificationRegistrationID(regId);