FOREGROUND_SERVICE_PHONE_CALL is removed because it is not necessary.
Seems it was introduced when moving to Android 14 because NCFirebaseMessagingService originally contained android:foregroundServiceType="phoneCall"
But this foregroundServiceType is not allowed/necessary for NCFirebaseMessagingService so it was removed, but it was forgotten to also remove FOREGROUND_SERVICE_PHONE_CALL permission.
This commit will remove FOREGROUND_SERVICE_PHONE_CALL permission so release process on gplay won't complain.
Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
- Fix injection in GetFirebasePushTokenWorker.
injection was not setup correctly in GetFirebasePushTokenWorker so the appPreferences were null. This resulted in the invinite loading screen during account setup if somehow onNewToken did not set the token.
- avoid to register push on every load of ConversationList.
- call GetFirebasePushTokenWorker instead of PushRegistrationWorker to make sure the firebase token is set(if onNewToken somehow fails to set it). Other than that, only call PushRegistrationWorker directly in NCFirebaseMessagingService as there the token is set.
- add logging
- trigger GetFirebasePushTokenWorker daily with periodical worker (instead monthly), and combine this with PushRegistrationWorker as this is defined inside GetFirebasePushTokenWorker
Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
this didn't make sense because time between firebase and devices is not synchronized, so the results were useless.
Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
- add missed call notifications in NotificationWorker and CallNotificationActivity
- introduce refactoring of Notification handling (isolate firebase stuff from other logic). All "UI-notification" logic from ChatAndCallMessagingService was moved to NotificationWorker. ChatAndCallMessagingService was renamed to NCFirebaseMessagingService because it is now only responsible for firebase stuff. This separation should make it easier for alternative push services to dock with the app (if they are incorporated in the future).
- for DEBUG mode: show delivery delay time in notifications (time between sending from firebase to receive on device).
Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
new notification channels must not be deleted. for this an enum was created, so that in removeOldNotificationChannels there is no manual work to do
Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
Renamed the service to 'ChatAndCallMessagingService' to respect that the
service handles chat messages and calls.
Signed-off-by: Tim Krüger <t@timkrueger.me>
move OneTimeWorkRequest for PushRegistrationWorker from NextcloudTalkApplication to ClosedInterface for gplay
add check in PushRegistrationWorker if google services are available
Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
* On devices with Android 8.0 (Oreo) or later, use system UI to change notification settings.
* Refactor sound selection code to cover differences between old (pre Oreo) and new devices.
* Always use the same notification channel for calls (Oreo or later).
Signed-off-by: Dariusz Olszewski <starypatyk@users.noreply.github.com>
- delete MagicCallActivity
- replace butterknife with viewbinding for CallActivity
TODO:
- also switch CallNotificationController to Activity
- check if CallActivity and CallNotificationActivity are called correctly
- testing!
Signed-off-by: Marcel Hibbe <dev@mhibbe.de>