summaryrefslogtreecommitdiffhomepage
path: root/android/service/src
AgeCommit message (Collapse)AuthorFilesLines
2025-10-28Rename 'shared' to 'repository'Kalle Lindström3-9/+9
2025-10-28Add option to show relay location in notificationKalle Lindström3-16/+245
This PR adds the following: - An option to show the relay location in the connection notification. - A new submenu under Settings called Notifications. - In the new Notifications screen a toggle to enable/disable showing the location in the notification.
2025-10-23Fix failing test due to time zone changeKalle Lindström1-2/+2
2025-09-11Move ApiEndpointOverride to its own bean in app moduleJonatan Rhodin1-8/+1
2025-08-04Attempt to fix potential ANRKalle Lindström1-2/+3
In onReceive in NotificationAlarmReceiver onBlocking() was used which could potentially take too much time and cause an ANR. This PR changes the onBlocking() call to instead use the goAsync() API so that the onReceive method can return immediately.
2025-06-19Use AlarmManager for notificationsKalle Lindström7-125/+140
Instead of scheduling system notifications from a flow we now schedule them independently from the app lifecycle via AlarmManager. This is done so that for example an expiry notification that the user dismissed won't get redisplayed if the app process gets killed and then restarted. When the account exiry time is fetched we schedule an alarm that will show a notification 3 days before the account time expires. This alarm then also schedules a new alarm to show the following notification and so on. To make this work this PR also introduces two new broadcast receivers; one on boot received listener and one on time time/timezone changed listener. Beause Android clears alarms when the devices is rebooted/the time is changed we need these listeners to re-trigger the alarm. To enable the broadcast receivers to re-trigger the alarm we also have to persist the expiry time in the DataStore preferences.
2025-05-21Supply IP address when using API overrideDavid Göransson1-1/+1
Previously we did a DNS lookup for Stagemole and Devmole however, this causes problem when starting the app with no internet and is different from how the app performs in production mode. This commit removes that logic in order to align closer to what we expect in prod.
2025-04-03Add product flavor to in app logsKalle Lindström2-0/+3
2025-02-26Remove Joda Time and use java.time package insteadKalle Lindström4-23/+23
Joda Time has been superseded by the Java 8 java.time package which has more or less the same API. This commit removes all usage of Joda Time and replaces it with the java.time classes. This is done so that we can remove the dependency on Joda Time.
2025-01-28Bundle a pre-generated relay list instead of generating oneJonatan Rhodin2-7/+18
The android app will try to bundle the relays.json found under dist-assets/relays/ if it exists. Otherwise it will rely on the relay list downloaded by the api. For alpha, beta and stable release builds it is required to have a bundled relays.json file.
2025-01-07Add support for blocking and disconnecting text in notificationDavid Göransson2-48/+20
2024-12-13Replace intentholder with api override intent holderJonatan Rhodin1-6/+4
2024-12-12Remove machines file except on WindowsDavid Lönnhager1-2/+0
2024-11-27Fix usecaseDavid Göransson1-3/+3
2024-11-27Handle legacy always-on vpn profilesDavid Göransson3-49/+51
Co-authored-by: Jonatan Rhodin <jonatan.rhodin@mullvad.net>
2024-11-22Refactor ConnectivityListenerDavid Göransson1-1/+1
2024-11-18Use ticker flow for Android system notificationsKalle Lindström5-91/+115
2024-11-12Fix account expiry in app notif not resettingKalle Lindström1-1/+3
2024-11-12Use maybenotv2 on iOS, remove maybenotv1Emīls1-1/+1
2024-10-30Add back maybenot_machines version 1Joakim Hulthe1-1/+1
2024-10-07Use Duration instead of PeriodKalle Lindström1-5/+4
2024-10-07Fix review feedbackKalle Lindström2-38/+22
2024-10-07Update in app expiry notifications over timeKalle Lindström4-6/+87
2024-09-25Align internal and external notification expiryKalle Lindström2-5/+7
2024-09-18Implement new Connect screen with feature indicatorsDavid Göransson1-3/+3
2024-09-06Add daita grpc and uiAlbin3-34/+30
2024-08-30Fix foreground not starting in timeDavid Göransson1-24/+25
2024-08-30Fix incorrect offline notification when not blockingDavid Göransson1-3/+3
2024-08-30Add notification throttlingDavid Göransson1-1/+13
2024-08-30Initialize mullvad daemon directly in vpn service on createJonatan Rhodin5-59/+66
As a consequence move the address resolve to the daemon
2024-08-28Reformat kotlin code using updated ktfmt pluginAlbin10-37/+27
This commit mostly adds trailing commas throughout the project, but also includes a few other formatting changes.
2024-08-19Fix for failing mockapi and e2e testsNiklas Berglund1-2/+1
2024-08-07Fix bind not being invokedDavid Göransson4-34/+38
2024-08-07Fix tunnel state notification behavior when logged outDavid Göransson1-4/+0
2024-08-05Add dummy name resolverDavid Göransson1-2/+5
Co-authored-by: Jonatan Rhodin <jonatan.rhodin@mullvad.net>
2024-08-02Reset the backoff and start/stop management service in proper orderDavid Göransson1-3/+6
2024-08-01Add log to detect slow start up of daemonDavid Göransson1-0/+1
2024-06-26Change app log calls to info severityAlbin2-14/+14
2024-06-26Migrate log calls to kermitAlbin2-19/+16
2024-06-24Refactor daemon init and deinit on AndroidDavid Lönnhager2-78/+41
2024-06-17Get value of data directory value at app startupMarkus Pettersson2-2/+11
Remove `APP_PATH` from `mullvad-paths` on Android since it should not be a constant value. Instead, it is passed down from the Android app startup. As it turns out, it is really ever used for pointing to the RPC socket in use.
2024-06-13Fix broken IS_PLAY_BUILD checkAlbin1-1/+1
2024-05-29Migrate to gRPCDavid Göransson36-2641/+852
Co-authored-by: Jonatan Rhodin <jonatan.rhodin@mullvad.net> Co-authored-by: Markus Pettersson <markus.pettersson@mullvad.net> Co-authored-by: David Lönnhager <david.l@mullvad.net>
2024-05-14Remove tunnel state from lifecycle logAlbin1-1/+1
2024-03-19Add daemon support for Server IP overridesDavid Göransson4-0/+114
2024-03-14Return success or error when creating and updating a custom listJonatan Rhodin2-9/+21
2024-02-15Add toggle button for split tunnelingMaryamShaghaghi1-1/+8
Co-Authored-By: Boban Sijuk <49131853+Boki91@users.noreply.github.com>
2024-02-08Add custom lists to the serviceJonatan Rhodin4-7/+72
2024-02-05Fix wildcard importDavid Göransson1-1/+5
2024-02-05Add const property to old constDavid Göransson3-4/+4