Commit Graph

158 Commits

Author SHA1 Message Date
Benoit Marty
f916e4e3d4 Push: improve Push history screen, log and stored data (#4601)
* Add adb tools to help with doze mode and app standby

* Add info about the device state when an error occurs in push.

* Keep more events in the DB.

* Push history: add confirmation dialog when resetting the data

* Push history: add a filter to see only the errors

* Update screenshots

* Push history: print out invalid/ignored data received.

* Increase log level for push, to make such log more visible.
It also appears that sometimes Timber.d are not present in the rageshakes.

* Log priority

* Do not include device state for invalid/ignored event.

* Fix tests.

* Fix format issue.

* Fix mistake in code blocks and do not filter when not necessary.

* Improve formatting and add missing unit test.

* Reduce nesting of blocks.

---------

Co-authored-by: ElementBot <android@element.io>
2025-04-16 16:37:32 +02:00
ElementBot
270b420575 Sync Strings (#4590)
* Sync Strings from Localazy

* Fix strings usage after some were moved

* Fix Norwegian string that was causing lint to fail

* Update screenshots

---------

Co-authored-by: bmarty <3940906+bmarty@users.noreply.github.com>
Co-authored-by: Jorge Martín <jorgem@element.io>
2025-04-14 11:24:28 +02:00
Benoit Marty
a1d8322738 Introduce PushHistoryService to store data about the received push (#4573)
* Introduce PushHistoryService to store data about the received push

Add a push database.

* Update screenshots

* Improve preview.

* Update screenshots

* Add missing test.

* Add test for PushHistoryView

* Fix configuration issue.

Was: w: /libraries/troubleshoot/impl/src/test/kotlin/io/element/android/libraries/troubleshoot/impl/history/PushHistoryPresenterTest.kt:35:27 Cannot access class 'PushProvider' in the expression type. While it may work, this case indicates a configuration mistake and can lead to avoidable compilation errors, so it may be forbidden soon. Check your module classpath for missing or conflicting dependencies.

---------

Co-authored-by: ElementBot <android@element.io>
2025-04-11 12:56:54 +02:00
Benoit Marty
2dfa1ab64d Merge branch 'develop' into feature/bma/customPushGateway 2025-03-13 11:39:47 +01:00
Jorge Martin Espinosa
e3dcb683b8 Fix warnings in tests for push provider modules (#4398) 2025-03-12 17:36:31 +01:00
Benoit Marty
b30e1095c9 Give ability to configure the UnifiedPush default push gateway. 2025-03-12 17:10:33 +01:00
Benoit Marty
cd48d051a8 Give ability to configure the Firebase push gateway. 2025-03-12 16:50:46 +01:00
bmarty
9456ee921d Sync Strings from Localazy 2025-03-10 00:28:38 +00:00
Benoit Marty
68a76f83a0 Do not rely only on distributor name but consider value (appId) as well.
This will fix issue when multiple UnifiedPush distributor with the same friendly name are available on the phone.
Fixes #4306
2025-02-26 10:55:33 +01:00
Benoit Marty
c9890d3073 Move build parameters to a common file 2025-02-20 17:58:41 +01:00
Benoit Marty
83ede0f774 Sync strings again.
Revert wrong change on Hungarian plurals.
2025-02-17 11:29:49 +01:00
bmarty
3dddd90d97 Sync Strings from Localazy 2025-02-17 00:30:17 +00:00
bmarty
5a4cac7d2d Sync Strings from Localazy 2025-02-03 00:29:01 +00:00
Benoit Marty
05fc76822a Apply dual licenses: AGPL + Element Commercial to file headers.
2 replace all actions have been performed:
- "SPDX-License-Identifier: AGPL-3.0-only" to "SPDX-License-Identifier: AGPL-3.0-only OR LicenseRef-Element-Commercial"
- "Please see LICENSE in the repository root for full details." to "Please see LICENSE files in the repository root for full details."
2025-01-07 10:05:04 +01:00
Benoit Marty
b85d4bac1d UnifiedPush: extract logic to resolve the gateway url and unit test it. 2024-12-31 10:01:39 +01:00
Benoit Marty
9ada3791d7 Add test on VectorUnifiedPushMessagingReceiver.onReceive 2024-12-31 09:38:44 +01:00
Benoit Marty
4c8af0a66c Add missing tests on DefaultUnifiedPushGatewayResolver 2024-12-31 09:32:09 +01:00
Benoit Marty
e2cb0173a6 Fix issue with logger. 2024-12-30 13:20:06 +01:00
Benoit Marty
86a44b9035 Ensure that when no Matrix gateway exists, the default one is used. 2024-12-30 13:18:37 +01:00
ElementBot
411895456b Sync Strings - add translations to Finnish (#3883)
Co-authored-by: bmarty <3940906+bmarty@users.noreply.github.com>
2024-11-18 11:37:17 +00:00
Benoit Marty
8e3c44b60b Change signature of getCurrentDistributor. 2024-11-15 15:18:28 +01:00
Benoit Marty
16500a4e16 Add missing test for UnifiedPushProvider 2024-11-15 14:50:56 +01:00
Benoit Marty
c8a7f530d4 Add missing test for FirebasePushProvider 2024-11-15 14:44:51 +01:00
Benoit Marty
844e0216bd Properly unregister from the ntfy app when the user logs out. 2024-11-15 12:43:57 +01:00
Benoit Marty
f406433652 UnifiedPush: also invoke UnifiedPush.unregisterApp when endpoint == null || gateway == null 2024-11-15 12:43:55 +01:00
Benoit Marty
1f3a0eb698 UnifiedPush: unregister the application using the correct instance. 2024-11-15 12:43:53 +01:00
Benoit Marty
9d8d960a98 Handle Jorge's remarks. 2024-10-30 16:37:58 +01:00
Benoit Marty
a54eee042b Now that FCM token can be rotated, let the FirebaseTokenTest observe the value. 2024-10-30 11:54:10 +01:00
Benoit Marty
a6fdb90838 Add quick fix in notification troubleshot test to perform a Firebase token rotation 2024-10-30 11:54:10 +01:00
Benoit Marty
1f60509d92 Firebase token: the beginning of the token is always the same, print out the end of it. 2024-10-30 11:54:09 +01:00
Jorge Martin Espinosa
e44b5ad98d Upgrade Kotlin to v2.0 (#3594)
* Bump Kotlin to v2.0

* Fix lots of issues due to the upgrade: lint issues, function signature incompatibilities, broken tests, etc.

---------

Co-authored-by: Benoit Marty <benoit@matrix.org>
2024-10-10 08:32:00 +00:00
Jorge Martin Espinosa
2efdb3ae45 Centralise the DI code generation logic (#3562)
* Create Anvil extension helper

* Use the helper everywhere
2024-09-30 12:20:28 +00:00
Benoit Marty
a1515a62a0 Cleanup 2024-09-18 18:08:11 +02:00
bmarty
e0c24c0f1c Sync Strings from Localazy 2024-09-16 18:40:24 +00:00
Benoit Marty
62a6e916a6 Migrate license to AGPL - XML files. 2024-09-06 17:43:35 +02:00
Benoit Marty
2b016227e9 Migrate license to AGPL.
Run script `uv run license-editor --repository ../element-x-android`
2024-09-06 17:19:19 +02:00
Benoit Marty
7db5ac8195 Fix the test according to the behavior change. 2024-09-04 12:23:52 +02:00
Benoit Marty
264d1bc694 Let UnifiedPushProvider use UnifiedPushCurrentUserPushConfigProvider 2024-09-04 11:42:40 +02:00
Benoit Marty
3e74fa05d7 Fix injection issue. 2024-09-04 11:31:46 +02:00
Benoit Marty
22f9e5515c Fix quality issue. 2024-09-04 11:16:20 +02:00
Benoit Marty
35b019318e Imporve logs. 2024-09-04 11:12:21 +02:00
Benoit Marty
90352bd1ad Remove const val PUSH_GATEWAY_PATH, it makes the code more complex for no added value. 2024-09-04 11:09:27 +02:00
Benoit Marty
6eb5610bcc Add missing test on reset methods. 2024-09-04 10:57:14 +02:00
Benoit Marty
0423c36e08 Always use the custom url, even if no Matrix gateway is detected. 2024-09-04 10:48:31 +02:00
Benoit Marty
393f9c3637 Merge pull request #3294 from element-hq/ci/jme/fix-nightly-reports-firebase
Fix proguard config for nightly and release builds
2024-08-12 12:31:44 +02:00
ElementBot
01617e1c9d Sync Strings (#3297)
Co-authored-by: bmarty <3940906+bmarty@users.noreply.github.com>
2024-08-12 06:03:23 +00:00
Jorge Martín
7bbcc90cab Try removing isMinified instead. This should now be controlled at the app module level. 2024-08-11 12:32:28 +02:00
Jorge Martín
e9d8ba1177 Add proguard file for firebase for release variant too 2024-08-11 10:23:22 +02:00
Jorge Martín
e56c64cb10 Try fixing proguard config for nightly builds 2024-08-11 09:55:24 +02:00
renovate[bot]
9b061ca798 Update android.gradle.plugin to v8.5.2 (#3004)
* Update android.gradle.plugin

* Fix release builds with AGP 8.5 by removing the minification config in each library module. I believe this is now centralised.

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Jorge Martín <jorgem@element.io>
2024-08-09 15:04:10 +02:00