Commit Graph

14 Commits

Author SHA1 Message Date
Arjan Schrijver 557bfea35c Add lint baseline, enable linting on CI, fix some reported errors (#3291)
This PR:
- fixes some errors reported by `gradlew lint` and the Android Studio "Code Inspection" tool
- adds a snapshot file `lint-baseline.xml` of the remaining lint errors and warnings to be used by the linter as baseline
- adds a job for CI to run `gradlew lint` on every build

Reviewed-on: https://codeberg.org/Freeyourgadget/Gadgetbridge/pulls/3291
Reviewed-by: José Rebelo <joserebelo@noreply.codeberg.org>
Co-authored-by: Arjan Schrijver <a_gadgetbridge@anymore.nl>
Co-committed-by: Arjan Schrijver <a_gadgetbridge@anymore.nl>
2023-09-11 09:17:04 +00:00
Daniel Dakhno e36bd2eae7 Core: replaced device initialization logic with class based decision
Core: cleaned up imports

Device management: try single-argument-constructor first

Device management: fixed wrong device support class

Device management: added missing initial flags for Mi band 2 HRX

Device management: removed unused import

Device management: removed unused import

Device management: improved exception handling

Device management: prevent constructors from being optimized out

Device management: added UnknownDeviceSupport
2023-08-26 08:14:06 +00:00
mormegil dccb8ed1c4 Changes suggested in PR
- use `BLETypeConversions`, added the missing functions there (+ unit tests for all)
- change Java package of Protobuf definitions so that they are not discarded by Proguard
-- +add subpackages to the Proguard rules so we can subdivide the classes

+ disable device-specific settings for Vivomove (no settings yet)
2023-07-20 20:30:14 +00:00
José Rebelo b5a016a03f Exclude protobuf classes from proguard
Fixes #2932
2022-10-16 21:12:27 +01:00
Marc Nause c0adbf59c3 Added rule to keep static members of GattCharacteristic class 2022-04-28 22:08:26 +02:00
Marc Nause 677d8503d9 Added rule to keep static members of CallSpec class
The support class for BangleJS devices uses reflection to retrieve an array of the fields and used them to generate JSON which is sent to the devices. Without the new rule ProGuard breaks alerts for incoming calls in release builds.

See also: https://github.com/espruino/BangleApps/issues/976
2022-03-22 19:50:53 +01:00
TaaviE 1cc9dafd59 Added a R8 rule to make sure data classes for Gson don't get optimized out 2021-06-09 00:52:50 +03:00
TaaviE 33f3144e9a Added Nordic DFU library to dependencies 2020-10-11 19:16:31 +03:00
Andreas Shimokawa 8394928b94 enable minifiy for release, but don't obfuscate
(shrinks apk size from 6.1 to 5.1MB)
2020-10-11 16:10:35 +02:00
TaaviE 8795acd0fd Improved ProGuard rules (for DB migrations and logback) 2020-08-01 04:03:15 +03:00
TaaviE 97f4b275f7 These logback classes are required for an optimized build to work properly 2020-07-28 08:12:27 +02:00
TaaviE a34c28090d Added android-emojify's dependency to be excluded from Proguard 2020-06-17 08:48:20 +02:00
TaaviE a773258f49 Added a base set of Proguard rules in case optimization is enabled 2020-01-31 18:43:38 +01:00
Andreas Shimokawa dada70e92c First checkin of actual code 2015-01-07 14:00:18 +01:00