Loading app/src/main/java/app/fedilab/android/mastodon/helper/PushNotifications.java +17 −0 Original line number Diff line number Diff line Loading @@ -45,6 +45,23 @@ import retrofit2.converter.gson.GsonConverterFactory; public class PushNotifications { public static void unregisterPushNotifications(Context context, String slug) { new Thread(() -> { String[] slugArray = slug.split("@"); BaseAccount accountDb = null; try { accountDb = new Account(context).getUniqAccount(slugArray[0], slugArray[1]); } catch (DBException e) { e.printStackTrace(); } if (accountDb == null) { return; } MastodonNotificationsService mastodonNotificationsService = init(context, accountDb.instance); mastodonNotificationsService.deletePushsubscription(accountDb.token); }); } public static void registerPushNotifications(Context context, PushEndpoint pushEndpoint, String slug) { Loading app/src/main/java/app/fedilab/android/mastodon/services/PushServiceImpl.java +8 −1 Original line number Diff line number Diff line Loading @@ -56,6 +56,13 @@ public class PushServiceImpl extends PushService { } @Override public void onUnregistered(@NonNull String s) { public void onUnregistered(@NonNull String slug) { Context context = getApplicationContext(); if (context != null) { synchronized (this) { PushNotifications .unregisterPushNotifications(context, slug); } } } } Loading
app/src/main/java/app/fedilab/android/mastodon/helper/PushNotifications.java +17 −0 Original line number Diff line number Diff line Loading @@ -45,6 +45,23 @@ import retrofit2.converter.gson.GsonConverterFactory; public class PushNotifications { public static void unregisterPushNotifications(Context context, String slug) { new Thread(() -> { String[] slugArray = slug.split("@"); BaseAccount accountDb = null; try { accountDb = new Account(context).getUniqAccount(slugArray[0], slugArray[1]); } catch (DBException e) { e.printStackTrace(); } if (accountDb == null) { return; } MastodonNotificationsService mastodonNotificationsService = init(context, accountDb.instance); mastodonNotificationsService.deletePushsubscription(accountDb.token); }); } public static void registerPushNotifications(Context context, PushEndpoint pushEndpoint, String slug) { Loading
app/src/main/java/app/fedilab/android/mastodon/services/PushServiceImpl.java +8 −1 Original line number Diff line number Diff line Loading @@ -56,6 +56,13 @@ public class PushServiceImpl extends PushService { } @Override public void onUnregistered(@NonNull String s) { public void onUnregistered(@NonNull String slug) { Context context = getApplicationContext(); if (context != null) { synchronized (this) { PushNotifications .unregisterPushNotifications(context, slug); } } } }