Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

AirGuard Version 2.2 #175

Merged
merged 166 commits into from
Jun 11, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
166 commits
Select commit Hold shift + click to select a range
1c95950
improve LocationProvider, can handle COARSE_LOCATION, works with any …
Sep 24, 2023
50fc255
small improvements to map rendering
Sep 27, 2023
5cca04d
make ObserveTracker functionality visible again
Sep 27, 2023
76b2c50
improve Observation Screen Design
Sep 27, 2023
79ad24e
ObserveTrackerWorker now calls ScanBluetoothWorker manually before ch…
Oct 2, 2023
ba43134
update gradle version
Oct 3, 2023
1f46a9d
improve Background Worker Scheduling, add Error Case for ObserveTracker
Oct 3, 2023
656baf9
add handling for inconsistent database entries in ObserveTracker, mak…
Oct 4, 2023
ffc1a2e
Tracker Observation can now be stopped, added visual indicator whethe…
Oct 5, 2023
f1baf67
add Article Fragment
Oct 11, 2023
9a6a264
fix crash in Play Sound Dialog
Oct 17, 2023
a3ff542
Merge branch 'ShowAllDevices' into ObserveTracker
Oct 17, 2023
96fa537
add navigation to article
Oct 17, 2023
2d1330b
Adding new API endpoint that deletes study data for a specific user
Sn0wfreezeDev Oct 23, 2023
a50fb54
Setting request to DELETE method
Sn0wfreezeDev Oct 23, 2023
a9fd70c
implement Data Deletion in UI
Oct 23, 2023
ec2150d
fix api initialization bug, better initialization of api token, add e…
imbissbudenaesthetik Oct 24, 2023
87b5b90
add first implementation of Online Article Download
Oct 26, 2023
66d89b4
Merge branch 'ShowAllDevices' into ObserveTracker
Oct 26, 2023
333154e
add additional information in JSON
Oct 26, 2023
a1127e8
Article Download now Coroutine, loading animation while downloading J…
Oct 27, 2023
359897b
Design improvement
Oct 27, 2023
d172e47
Article offline handling
Oct 28, 2023
a31cbc7
Merge branch 'ShowAllDevices' into ObserveTracker
imbissbudenaesthetik Oct 31, 2023
ed0dce1
support Online Articles in multiple languages
Nov 4, 2023
42a90dd
upgrade to gradle 8.1.3
Nov 11, 2023
5321602
fix security issues in the AndroidManifest
Nov 11, 2023
55f841b
update backup rules to confirm to android 12 standards
Nov 11, 2023
de32b38
optimize Article Offline Handling and add old cards again
Nov 11, 2023
3857e52
Merge remote-tracking branch 'origin/ObserveTracker' into ObserveTracker
imbissbudenaesthetik Nov 15, 2023
fa2c4ea
upgrade gradle and some libraries
Nov 19, 2023
78fcf61
speed up map rendering and add permission necessary for Android 14
Nov 19, 2023
ecaab97
Merge remote-tracking branch 'origin/ObserveTracker' into ObserveTracker
Nov 19, 2023
5aa2324
Rename SmartTags to be consistent with Samsungs current product lines
Nov 20, 2023
201b7e3
fix for common IllegalStateException in PlaySoundDialogFragment
Nov 20, 2023
bb3993b
add previewImage to the Article Function
Nov 22, 2023
7f06d31
Fix for Delete Study Data
Nov 24, 2023
534872a
Relevant Tracking Days can be set inividually for each Type of tracke…
Nov 25, 2023
973891c
upgrade gradle to 8.2.0
Dec 8, 2023
47657db
upgrade to Android 14 / SDK 34
Dec 8, 2023
24762e9
fix Crash when clicking on Scan Element
imbissbudenaesthetik Dec 11, 2023
7696ca0
optimize BluetoothReceiver for Android 13 or higher
imbissbudenaesthetik Dec 11, 2023
249a6d4
upgrade some plugins and dependencies
imbissbudenaesthetik Dec 11, 2023
a93b687
UI improvements: Manual Scan now more user friendly, more explanation…
Dec 18, 2023
24066ec
adjust articles for in production Server files
Dec 18, 2023
2d5fd57
Merge branch 'ObserveTracker' into TrackingOptimizations
Dec 18, 2023
c67bed3
number of Locations can be set individually for each tracker, in defa…
Dec 22, 2023
27f8e31
remove own location on map
Jan 2, 2024
ec5c2d0
NumberofLocations override can now be overwritten for every RiskLevel
Jan 2, 2024
da2042e
separate the connected / low Risk devices from the offline / high ris…
Jan 3, 2024
264696f
separated ScanView is now a NestedScrollView
Jan 3, 2024
0ebc53d
Manual Scan Behaviour now resembles the one from the iOS App
Jan 7, 2024
3a54b66
replace some of the deprecated Java Functions with backwards compatib…
imbissbudenaesthetik Jan 8, 2024
238247e
upgrade gradle to 8.2.1
imbissbudenaesthetik Jan 9, 2024
0ae5330
Scanning behaviour of Tile Tracker now closer to iOS Version
imbissbudenaesthetik Jan 9, 2024
66dbcfb
Device Detail Page now vertical, similar to iOS Design
imbissbudenaesthetik Jan 9, 2024
b723cff
add Website Link to Tracker Detail Page
imbissbudenaesthetik Jan 9, 2024
8652868
Update deprecated Code
Jan 9, 2024
19b1eb8
change relevant days to relevant hours
imbissbudenaesthetik Jan 15, 2024
c500fbf
Fixed an issue where the versionProvider was removed in the LocationP…
Sn0wfreezeDev Sep 21, 2023
2a089e2
Update 2.1 for F-Droid
Sn0wfreezeDev Oct 20, 2023
3b8f8d6
2.0 F-Droid Release version
Sn0wfreezeDev Jun 27, 2023
8e5f035
Fix Google Play badge in README.md
PeterDaveHello Sep 28, 2023
69199e5
Working on fixing SendStatisticsWorker
Sn0wfreezeDev Nov 12, 2023
f35fcdb
Changing proguard rules
Sn0wfreezeDev Nov 12, 2023
1cd320f
Reducing duplicate devices uploads
Sn0wfreezeDev Nov 14, 2023
a9e495e
F-Droid 2.1.1 Release
Sn0wfreezeDev Nov 14, 2023
eacf8bd
Updating F-Droid Metadata
Sn0wfreezeDev Nov 14, 2023
1dacfc1
Rebasing Main onto current branch
Sep 24, 2023
e086ed0
ObserveTrackerWorker now calls ScanBluetoothWorker manually before ch…
Oct 2, 2023
49b3192
Updating version in Manifest
Sn0wfreezeDev Jan 18, 2024
76c9390
some optimizations to the processing of manual scan items
Jan 21, 2024
f607a7e
some more optimizations to the processing of manual scan items, Devic…
Jan 22, 2024
6d09a21
A New notification for a device will only be sent if the device meets…
Jan 15, 2024
60ffc7a
upgrade Gradle and some dependecies
imbissbudenaesthetik Jan 25, 2024
fca9339
upgrade Kotlin Version to 1.9.22, more dependencies, migrate some fun…
imbissbudenaesthetik Jan 25, 2024
a2a64cd
reintroduce Scan Sorting again
Jan 31, 2024
74ad9c6
Detail Scan now shows correct Time since Tracker is in offline Mode
Jan 31, 2024
f5a9b09
add Legend to map
imbissbudenaesthetik Feb 7, 2024
b0a0d6b
upgrade some dependencies
imbissbudenaesthetik Feb 7, 2024
45031bf
upgrade some dependencies, modify dependency structure
Feb 7, 2024
7a21509
Merge branch 'TrackingOptimizations' into ScanRedesign
Feb 8, 2024
ea2b700
hide Website URL Button if Website URL could not be determined
imbissbudenaesthetik Feb 10, 2024
e58dd95
fix bug in sorting of manual scan, fix bug in article rendering in da…
imbissbudenaesthetik Feb 13, 2024
c1c23ac
adjust RiskLevel Numbers so they are consistent with the iOS Version
imbissbudenaesthetik Feb 14, 2024
0ab67ec
use separate Algorithm for Notifications and RiskLevel evaluation
imbissbudenaesthetik Feb 18, 2024
44b556e
optimize and Bugfix RiskLevelEvaluator
Feb 19, 2024
6d05b83
add feedback options other and not found. Add message success when su…
imbissbudenaesthetik Feb 22, 2024
b17376d
save sensitivity level for every notification, save connectionState f…
imbissbudenaesthetik Feb 22, 2024
f911ed8
devices that have not been seen in the last 30 days and beacons older…
imbissbudenaesthetik Feb 23, 2024
bb4e6d4
improve connectionState for chipolo devices
imbissbudenaesthetik Feb 23, 2024
a2598fa
safe all devices no matter in what connectionState. Hide safe tracker…
imbissbudenaesthetik Feb 23, 2024
1ee5ee4
log when and how many devices are getting deleted, small optimization…
imbissbudenaesthetik Feb 25, 2024
4a358ed
upgrade gradle to 8.3.0 and upgrade some dependencies
imbissbudenaesthetik Mar 5, 2024
335112a
remove Battery from Distance Scan
imbissbudenaesthetik Mar 5, 2024
ee89dd4
Show No trackers found since installation date, instead of last 14 days
Mar 6, 2024
7971408
Merge remote-tracking branch 'origin/TrackingOptimizations' into Trac…
Mar 6, 2024
a014d76
fix string showing wrong device type in feedback View
imbissbudenaesthetik Mar 6, 2024
beecb0b
Redesign Feedback, Fix Crashes in Feedback
Mar 6, 2024
adf6e03
make Feedback Button more visible, also improve some padding
imbissbudenaesthetik Mar 6, 2024
bcea3bf
add explanation text to device view that explains that some devices c…
imbissbudenaesthetik Mar 6, 2024
07c434e
add explanation for safe trackers in manual scan
imbissbudenaesthetik Mar 6, 2024
05fe801
Merge branch 'TrackingOptimizations' into development
imbissbudenaesthetik Mar 6, 2024
9f044b3
ignored trackers will be treated as safe trackers in manual scan
Mar 9, 2024
29d3952
Merge branch 'TrackingOptimizations' into development
imbissbudenaesthetik Mar 9, 2024
4807113
add Advanced Mode, that hides complicated to understand options and m…
imbissbudenaesthetik Mar 11, 2024
59f9d78
when deleting old devices and beacons, locations that are not used an…
imbissbudenaesthetik Mar 15, 2024
ae0532d
add Clustering to the map
imbissbudenaesthetik Mar 15, 2024
7b61934
highly optimize speed in loading map markers, update some dependencies
imbissbudenaesthetik Mar 17, 2024
7e67e4f
fix bug where numbers of locations being displayed were inconsistent
imbissbudenaesthetik Mar 17, 2024
e0ab32f
fix bug where map markers where not displayed correctly in TrackingFr…
imbissbudenaesthetik Mar 17, 2024
559d298
automatic adjustments to the code
imbissbudenaesthetik Mar 17, 2024
2f062e2
fix a bug where markers were not displayed correctly when accessed vi…
imbissbudenaesthetik Mar 17, 2024
98004f7
optimize retrieval of markers from the database
imbissbudenaesthetik Mar 17, 2024
884e509
Moving background scans to be scheduled by AlarmManager instead of ba…
Sn0wfreezeDev Mar 22, 2024
9df5356
Fixing map marker display issue:
Sn0wfreezeDev Mar 22, 2024
bb04ff3
first merge
imbissbudenaesthetik Mar 22, 2024
3bd1721
fix merge conflict
imbissbudenaesthetik Mar 22, 2024
d5f5a29
add indices to Beacon and BaseDevice
imbissbudenaesthetik Mar 22, 2024
1ef909f
Checking permission for setExact Alarm
Sn0wfreezeDev Mar 22, 2024
a1570e2
Fixing merge issues with git
Sn0wfreezeDev Mar 23, 2024
fae75e9
upgrade gradle to 8.3.1, upgrade dependencies
imbissbudenaesthetik Mar 23, 2024
ed860fa
replace some Strings with Plurals
Mar 23, 2024
7032a09
fix crash when double tapping scan result
imbissbudenaesthetik Mar 23, 2024
15a0150
add caching to deviceType retrieval and fix bug in old Beacon deletion
imbissbudenaesthetik Mar 23, 2024
0e6cf73
manual scan keeps pause state while viewing scan items. Limit notifyD…
imbissbudenaesthetik Mar 24, 2024
cbf9655
device name can be edited from device detail view by clicking on the …
imbissbudenaesthetik Mar 30, 2024
3112824
limit device name to 255 characters and one line, device name cannot …
imbissbudenaesthetik Mar 30, 2024
14ee5a1
revert savedConnections only to for Tracking Detection relevant
imbissbudenaesthetik Apr 8, 2024
52ed100
make corners of minimap rounded
imbissbudenaesthetik Apr 9, 2024
34444c0
add (currently not visible) simpler design for device view
imbissbudenaesthetik Apr 9, 2024
be5a604
altitude of each location now gets saved
imbissbudenaesthetik Apr 13, 2024
d9bdf5d
update existing locations if more recent and more accurate data is av…
imbissbudenaesthetik Apr 13, 2024
515f9a3
upgrade gradle and some dependecies
imbissbudenaesthetik Apr 15, 2024
0aa3318
upgrade Kotlin Version
imbissbudenaesthetik Apr 15, 2024
8300ced
do not save devices above an altitude of 9000 meters. This should avo…
imbissbudenaesthetik Apr 16, 2024
dfa1975
don't create location object above 3000 meters, this is different to …
imbissbudenaesthetik Apr 26, 2024
cefded6
upgrade gradle to 8.4.0
imbissbudenaesthetik May 2, 2024
9fff0da
fix bug where devices where not correctly put into safe and unsafe tr…
imbissbudenaesthetik May 2, 2024
d5d0fba
make some string more understandable
imbissbudenaesthetik May 2, 2024
7b4b574
make padding of map more consistent
imbissbudenaesthetik May 2, 2024
ee0717e
massive speed up of manual scan, cleanup code
imbissbudenaesthetik May 13, 2024
281215a
replace ScanResult in manual scan with Wrapper Object. Massive Speed …
imbissbudenaesthetik May 14, 2024
63200b4
Setting minimum detection events to 3 on medium security mode.
Sn0wfreezeDev May 15, 2024
7da26e0
Updating gradle and manifest
Sn0wfreezeDev May 15, 2024
88f5e3b
Updating gradle and manifest
Sn0wfreezeDev May 15, 2024
536da88
Testing app without FOREGROUND_SERVICE
Sn0wfreezeDev May 16, 2024
aa3f5ed
Rssi indicator image in manual scan updates if rssi value changes, up…
imbissbudenaesthetik May 16, 2024
f15ee71
optimize Repository Loading in manual scan
imbissbudenaesthetik May 16, 2024
063274c
further use of ScanResultWrapper in Backend. Put back Exact Alarm Per…
imbissbudenaesthetik May 19, 2024
c0656bd
fix TypeToken Error on some devices by updating proguard rules
imbissbudenaesthetik May 19, 2024
2ce1de6
add message in manual scan that Location Permission has to turned on
imbissbudenaesthetik May 19, 2024
e0f87ec
handle case if wakeLock cannot be held
imbissbudenaesthetik May 19, 2024
f0652b8
upgrade gradle to 8.4.1.
imbissbudenaesthetik May 22, 2024
802c86c
avoid unnecessary duplicate calls of getDeviceType
imbissbudenaesthetik May 22, 2024
c220f94
low risk "secure tracker" explanation in manual scan is hidden if the…
imbissbudenaesthetik May 22, 2024
7c442e4
Show Website URL also for Low Risk Devices
imbissbudenaesthetik May 22, 2024
de97650
Fix DeviceType Detection and Display of Explanation for it for unknow…
imbissbudenaesthetik May 22, 2024
4893218
fix bug in ScanDistance
imbissbudenaesthetik May 30, 2024
c2af3d7
fix bug in fetching deviceType from safe trackers
imbissbudenaesthetik May 30, 2024
8ed52d4
fix compilation bug
imbissbudenaesthetik May 30, 2024
c297ae3
Adopting changes to set alarms more reliably
Sn0wfreezeDev Jun 10, 2024
a4e5c83
Removing second launch icon
Sn0wfreezeDev Jun 10, 2024
8f79ecc
Adding Scheduling alarms with new permission for Android 13 and Andro…
Sn0wfreezeDev Jun 10, 2024
d974f6c
F-Droid 2.2
Sn0wfreezeDev Jun 11, 2024
0022220
Merge branch 'main' into development
Sn0wfreezeDev Jun 11, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion api.properties
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
API_KEY="UCKgXwP.Dvmxyn1UygvnJfy2DV16OjbmHia4xXpd"
API_KEY="AGdk9qPF.Bl9yatnjjoy9WEEjXYGVewE7ZyJET9Yy"
API_BASE_ADDRESS="https://tpe.seemoo.tu-darmstadt.de/api/"
72 changes: 39 additions & 33 deletions app/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -17,16 +17,18 @@ android {
viewBinding true
dataBinding true
compose true
buildConfig true
}

compileSdk = 34

defaultConfig {
applicationId "de.seemoo.at_tracking_detection"
minSdkVersion 28
targetSdkVersion 33
compileSdk 33
versionCode 39
versionName "2.1.1"

targetSdk = 34
versionCode 44
versionName "2.2"

buildConfigField "String", "API_KEY", apiProperties["API_KEY"]
buildConfigField "String", "API_BASE_ADDRESS", apiProperties["API_BASE_ADDRESS"]

Expand Down Expand Up @@ -64,7 +66,7 @@ android {
}

composeOptions {
kotlinCompilerExtensionVersion "1.4.8"
kotlinCompilerExtensionVersion "1.5.11"
}


Expand All @@ -91,79 +93,83 @@ dependencies {

implementation 'com.jakewharton.timber:timber:5.0.1'
implementation 'com.github.bastienpaulfr:Treessence:1.0.0'
implementation 'androidx.work:work-runtime-ktx:2.8.1'
implementation 'androidx.core:core-ktx:1.10.1'
implementation "androidx.work:work-runtime-ktx:$work_version"
implementation 'androidx.core:core-ktx:1.13.1'
implementation 'androidx.appcompat:appcompat:1.6.1'
implementation 'com.google.android.material:material:1.9.0'
implementation 'com.google.android.material:material:1.12.0'
implementation 'androidx.constraintlayout:constraintlayout:2.1.4'
implementation 'androidx.vectordrawable:vectordrawable:1.1.0'
implementation 'androidx.navigation:navigation-fragment-ktx:2.6.0'
implementation 'androidx.navigation:navigation-ui-ktx:2.6.0'
implementation 'androidx.lifecycle:lifecycle-livedata-ktx:2.6.1'
implementation 'androidx.lifecycle:lifecycle-viewmodel-ktx:2.6.1'
implementation 'androidx.vectordrawable:vectordrawable:1.2.0'
implementation 'androidx.navigation:navigation-fragment-ktx:2.7.7'
implementation 'androidx.navigation:navigation-ui-ktx:2.7.7'
implementation 'androidx.lifecycle:lifecycle-livedata-ktx:2.8.0'
implementation 'androidx.lifecycle:lifecycle-viewmodel-ktx:2.8.0'
implementation 'androidx.lifecycle:lifecycle-extensions:2.2.0'
implementation 'androidx.preference:preference-ktx:1.2.1'
implementation 'androidx.cardview:cardview:1.0.0'
implementation 'androidx.recyclerview:recyclerview:1.3.1'
implementation 'androidx.recyclerview:recyclerview:1.3.2'

implementation 'com.squareup.retrofit2:retrofit:2.9.0'
implementation 'com.squareup.retrofit2:converter-gson:2.9.0'
implementation 'com.squareup.okhttp3:okhttp:5.0.0-alpha.5'
implementation 'com.squareup.okhttp3:okhttp:5.0.0-alpha.12'
implementation 'com.google.code.gson:gson:2.10.1'
implementation 'androidx.legacy:legacy-support-v4:1.0.0'
implementation 'androidx.work:work-testing:2.8.1'
implementation 'androidx.core:core-ktx:1.10.1'
debugImplementation 'com.squareup.okhttp3:logging-interceptor:5.0.0-alpha.5'
implementation "androidx.work:work-testing:$work_version"
implementation 'androidx.core:core-ktx:1.13.1'
debugImplementation 'com.squareup.okhttp3:logging-interceptor:5.0.0-alpha.12'

implementation "com.google.dagger:hilt-android:$hilt_version"
implementation 'androidx.hilt:hilt-work:1.0.0'
implementation 'androidx.hilt:hilt-navigation-fragment:1.0.0'
implementation 'androidx.hilt:hilt-work:1.2.0'
implementation 'androidx.hilt:hilt-navigation-fragment:1.2.0'

implementation 'com.github.AppIntro:AppIntro:6.1.0'

implementation 'org.osmdroid:osmdroid-android:6.1.16'
implementation 'org.osmdroid:osmdroid-android:6.1.18'
implementation 'com.github.MKergall:osmbonuspack:6.9.0'

implementation 'com.github.ybq:Android-SpinKit:1.4.0'

implementation "com.mikepenz:aboutlibraries:$about_libraries_version"

implementation 'io.noties.markwon:core:4.6.2'
implementation 'com.github.mukeshsolanki:MarkdownView-Android:2.0.0'

implementation 'com.github.bumptech.glide:glide:4.16.0'


kapt "com.google.dagger:hilt-compiler:$hilt_version"
kapt 'androidx.hilt:hilt-compiler:1.0.0'
kapt 'androidx.hilt:hilt-compiler:1.2.0'

implementation "androidx.room:room-runtime:$room_version"
implementation "androidx.room:room-ktx:$room_version"
kapt "androidx.room:room-compiler:$room_version"

androidTestImplementation 'androidx.test.ext:junit:1.1.5'
androidTestImplementation 'androidx.test.espresso:espresso-core:3.5.1'
androidTestImplementation 'androidx.room:room-testing:2.5.2'
androidTestImplementation 'org.jetbrains.kotlinx:kotlinx-coroutines-test:1.7.3'
androidTestImplementation "androidx.room:room-testing:$room_version"
androidTestImplementation 'org.jetbrains.kotlinx:kotlinx-coroutines-test:1.8.0'
androidTestImplementation 'androidx.test:core:1.5.0'
androidTestImplementation 'androidx.test:core-ktx:1.5.0'
androidTestImplementation 'androidx.test.ext:junit-ktx:1.1.5'
androidTestImplementation 'androidx.test:runner:1.5.2'
androidTestImplementation 'androidx.test.espresso:espresso-contrib:3.5.1'

coreLibraryDesugaring 'com.android.tools:desugar_jdk_libs:2.0.3'
coreLibraryDesugaring 'com.android.tools:desugar_jdk_libs:2.0.4'

//Finds memory leaks while running the app in Debug mode
// debugImplementation 'com.squareup.leakcanary:leakcanary-android:2.8.1'

//Compose
// Integration with activities
implementation 'androidx.activity:activity-compose:1.7.2'
implementation 'androidx.activity:activity-compose:1.9.0'
// Compose Material Design
implementation 'androidx.compose.material:material:1.4.3'
implementation 'androidx.compose.material:material:1.6.7'
// Animations
implementation 'androidx.compose.animation:animation:1.4.3'
implementation 'androidx.compose.animation:animation:1.6.7'
// Tooling support (Previews, etc.)
implementation 'androidx.compose.ui:ui-tooling:1.4.3'
implementation 'androidx.compose.ui:ui-tooling:1.6.7'
// Integration with ViewModels
implementation 'androidx.lifecycle:lifecycle-viewmodel-compose:2.6.1'
implementation 'androidx.lifecycle:lifecycle-viewmodel-compose:2.8.0'
// UI Tests
androidTestImplementation 'androidx.compose.ui:ui-test-junit4:1.4.3'
androidTestImplementation 'androidx.compose.ui:ui-test-junit4:1.6.7'
// When using a MDC theme
implementation "com.google.android.material:compose-theme-adapter:1.2.1"

Expand Down
13 changes: 12 additions & 1 deletion app/proguard-rules.pro
Original file line number Diff line number Diff line change
Expand Up @@ -72,4 +72,15 @@
# R8 full mode strips generic signatures from return types if not kept.
-keep,allowobfuscation,allowshrinking class retrofit2.Response

-keep class de.seemoo.at_tracking_detection.** { *; }
# Keep Gson classes
-keep class com.google.gson.reflect.TypeToken { *; }
-keep class com.google.gson.Gson { *; }
-keep class com.google.gson.TypeAdapter { *; }
-keep class com.google.gson.stream.JsonReader { *; }
-keep class com.google.gson.stream.JsonWriter { *; }

# Ensure that the classes related to Article are not stripped
-keep class de.seemoo.at_tracking_detection.ui.dashboard.Article { *; }

# Keep ProGuard/R8 from stripping out important methods or classes
-keep class * implements com.google.gson.reflect.TypeToken { *; }
Loading
Loading