Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
61 commits
Select commit Hold shift + click to select a range
14834a5
fix Scan Distance Button Visibility issues
imbissbudenaesthetik Jan 19, 2025
803057a
Merge remote-tracking branch 'origin/development' into development
imbissbudenaesthetik Jan 19, 2025
d6a4598
rewrite 15 minute algorithm
imbissbudenaesthetik Jan 22, 2025
7ad7a12
Merge branch 'development' into Samsung15Minutes
imbissbudenaesthetik Jan 22, 2025
133ab94
improve rewrite of 15 minute algorithm
imbissbudenaesthetik Jan 25, 2025
89d5d29
15 minute algorithm also works now when every scan has failed in the …
imbissbudenaesthetik Jan 26, 2025
b8e137f
fix ConnectionState mismatch
imbissbudenaesthetik Jan 26, 2025
4b52269
use discoveryDate as a reference for samsung device matching instead …
imbissbudenaesthetik Jan 26, 2025
9118367
fix payload matching issue in samsung 15 minute algorithm
imbissbudenaesthetik Feb 3, 2025
4890779
update kotlin version to 2.1.10 and update dependencies
imbissbudenaesthetik Feb 3, 2025
fdc13f3
force kapt to use k2 compiler
imbissbudenaesthetik Feb 3, 2025
78f85d9
Merge branch 'development' into Samsung15Minutes
imbissbudenaesthetik Feb 3, 2025
4fa8278
makes testing on samsung devices easier
imbissbudenaesthetik Feb 3, 2025
021c5fd
remove twitter from information page
imbissbudenaesthetik Feb 3, 2025
29f2f7a
Merge branch 'development' into Samsung15Minutes
imbissbudenaesthetik Feb 3, 2025
b207b8c
make 15 minute algorithm queries less strict
imbissbudenaesthetik Feb 4, 2025
8352fce
simplify 15 minute algorithm implementation, fix math bug
imbissbudenaesthetik Feb 5, 2025
16c9c76
minor changes, fix wrong assumptions in comments
imbissbudenaesthetik Feb 7, 2025
25f40b9
rewrite 15 minute algorithm so that beacon join is no longer necessary
imbissbudenaesthetik Feb 12, 2025
155a454
remove scanRepository usage in 15 minute algorithm again due to poor …
imbissbudenaesthetik Feb 14, 2025
aecdd14
update gradle and some dependencies
imbissbudenaesthetik Feb 18, 2025
e77498a
Google Find My Network Devices are saved for 12 hours in Premature Of…
imbissbudenaesthetik Feb 21, 2025
6274d6b
Google Tracker can be matched both by mac address and advertisement. …
imbissbudenaesthetik Feb 26, 2025
5603b08
update gradle, dependencies. Small fix in logs
imbissbudenaesthetik Feb 28, 2025
21ff9d9
add Last Seen Overview to per Device Page (expert mode only)
imbissbudenaesthetik Mar 4, 2025
1cbb8ea
Merge branch 'development' into updatedGoogle
imbissbudenaesthetik Mar 6, 2025
bb0eacc
F-Droid 2.4.1
Sn0wfreezeDev Mar 17, 2025
566b788
Adding ndk debug symbols to Android bundles
Sn0wfreezeDev Mar 17, 2025
592733d
Adding more information to the Scan DB table, to make background scan…
Sn0wfreezeDev Mar 18, 2025
122df0b
Fixing a small warning
Sn0wfreezeDev Mar 18, 2025
7777eb4
Merge branch 'refs/heads/development' into updatedGoogle
imbissbudenaesthetik Mar 19, 2025
6bd3443
fix Database Merge Conflict
imbissbudenaesthetik Mar 19, 2025
1ca5332
match Google Devices that are not connectable within a timeframe of 2…
imbissbudenaesthetik Mar 19, 2025
0d84d70
update gradle to 8.9.1, kotlin to 2.1.20 and update some dependencies
imbissbudenaesthetik Mar 31, 2025
fbb466b
further optimizations for Android 15
imbissbudenaesthetik Apr 4, 2025
2d7e633
fix color scheme bug on Android 10+
imbissbudenaesthetik Apr 7, 2025
c2bcece
improvements to the deactivate scanning options
imbissbudenaesthetik Apr 7, 2025
4a200e8
Implementing a permanent Bluetooth background scanner
Sn0wfreezeDev Apr 8, 2025
72ecb9c
remove blue location dot on map
imbissbudenaesthetik Apr 9, 2025
9216ca9
fix color scheme of Safe Trackers label
imbissbudenaesthetik Apr 9, 2025
c7fc331
fix color scheme on tracker last seen page
imbissbudenaesthetik Apr 9, 2025
f69af2a
fix bug where location numbers on map where not consistent across views
imbissbudenaesthetik Apr 9, 2025
bb2b1a1
Adding a location history controller that receives all location updat…
Sn0wfreezeDev Apr 10, 2025
9a160bc
Printing reduced number of location decimals for privacy enhancements.
Sn0wfreezeDev Apr 10, 2025
5893d23
Adding a tracking network enum. Fixing the check if the device is tra…
Sn0wfreezeDev Apr 10, 2025
3ba85b3
update app to use predictive back for future compatibility with Andro…
imbissbudenaesthetik Apr 12, 2025
34f7c46
fix expert mode toggle from a previous commit
imbissbudenaesthetik Apr 12, 2025
3b928f4
Merge branch 'development' into optimized_scanning
imbissbudenaesthetik Apr 22, 2025
18881f7
fix merge conflict and Database Migration
imbissbudenaesthetik Apr 22, 2025
1bc2cf3
upgrade gradle and dependencies
imbissbudenaesthetik Apr 23, 2025
d52c39f
Merge branch 'development' into optimized_scanning
imbissbudenaesthetik Apr 23, 2025
fd2171b
Adding HTTP logging in DEBUG mode
Sn0wfreezeDev Apr 24, 2025
68a3a8a
Adding a debug API key for testing uploads
Sn0wfreezeDev Apr 24, 2025
1d982f0
fix dark mode detection
imbissbudenaesthetik Apr 26, 2025
15d33da
Merge branch 'development' into optimized_scanning
imbissbudenaesthetik Apr 27, 2025
f4ed152
Updating ScanRepository to use computed properties
Sn0wfreezeDev Apr 28, 2025
147c26a
Adding new Keep statements for API related models, because the ProGua…
Sn0wfreezeDev Apr 28, 2025
61e7095
Sending security level to the statistics server to evaluate notificat…
Sn0wfreezeDev Apr 30, 2025
33aeb0a
Updating version number
Sn0wfreezeDev Apr 30, 2025
f02230e
Updating pro-guard rules
Sn0wfreezeDev Apr 30, 2025
791e9d2
Merge branch 'main' into development
Sn0wfreezeDev Apr 30, 2025
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="GGzcJJ3J.EtaKNlPiZ6euI5JBI6OwoVSyH9sG9Q2q"
API_KEY="g3T1wgsH.bb40FsxMYET7HC12I8CH83jtQ1FT0a9A"
API_BASE_ADDRESS="https://tpe.seemoo.tu-darmstadt.de/api/"
39 changes: 21 additions & 18 deletions app/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -28,9 +28,8 @@ android {
applicationId "de.seemoo.at_tracking_detection"
minSdkVersion 28
targetSdk = 35
versionCode 51
versionName "2.4.1"

versionCode 52
versionName "2.5"
buildConfigField "String", "API_KEY", apiProperties["API_KEY"]
buildConfigField "String", "API_BASE_ADDRESS", apiProperties["API_BASE_ADDRESS"]

Expand All @@ -44,6 +43,9 @@ android {
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
applicationIdSuffix ".release"
resValue "bool", "debug", "false"
ndk {
debugSymbolLevel = "FULL"
}
}
debug {
minifyEnabled false
Expand Down Expand Up @@ -85,13 +87,13 @@ dependencies {
implementation 'com.jakewharton.timber:timber:5.0.1'
implementation 'com.github.bastienpaulfr:Treessence:1.1.2'
implementation "androidx.work:work-runtime-ktx:$work_version"
implementation 'androidx.core:core-ktx:1.15.0'
implementation 'androidx.core:core-ktx:1.16.0'
implementation 'androidx.appcompat:appcompat:1.7.0'
implementation 'com.google.android.material:material:1.12.0'
implementation 'androidx.constraintlayout:constraintlayout:2.2.0'
implementation 'androidx.constraintlayout:constraintlayout:2.2.1'
implementation 'androidx.vectordrawable:vectordrawable:1.2.0'
implementation 'androidx.navigation:navigation-fragment-ktx:2.8.7'
implementation 'androidx.navigation:navigation-ui-ktx:2.8.7'
implementation 'androidx.navigation:navigation-fragment-ktx:2.8.9'
implementation 'androidx.navigation:navigation-ui-ktx:2.8.9'
implementation 'androidx.lifecycle:lifecycle-livedata-ktx:2.8.7'
implementation 'androidx.lifecycle:lifecycle-viewmodel-ktx:2.8.7'
implementation 'androidx.lifecycle:lifecycle-extensions:2.2.0'
Expand All @@ -103,9 +105,10 @@ dependencies {
implementation 'com.squareup.retrofit2:retrofit:2.11.0'
implementation 'com.squareup.retrofit2:converter-gson:2.11.0'
implementation 'com.squareup.okhttp3:okhttp:5.0.0-alpha.14'
implementation 'com.google.code.gson:gson:2.10.1'
implementation 'com.squareup.okhttp3:logging-interceptor:5.0.0-alpha.14'
implementation 'com.google.code.gson:gson:2.11.0'
implementation "androidx.work:work-testing:$work_version"
implementation 'androidx.core:core-ktx:1.15.0'
implementation 'androidx.core:core-ktx:1.16.0'
debugImplementation 'com.squareup.okhttp3:logging-interceptor:5.0.0-alpha.14'

implementation "com.google.dagger:hilt-android:$hilt_compiler_version"
Expand All @@ -127,35 +130,35 @@ dependencies {

ksp "com.google.dagger:hilt-compiler:$hilt_compiler_version"
ksp "androidx.hilt:hilt-compiler:$hilt_version"

implementation "org.jetbrains.kotlinx:kotlinx-coroutines-core:1.10.1"
implementation "org.jetbrains.kotlinx:kotlinx-coroutines-android:1.10.1"


implementation "org.jetbrains.kotlinx:kotlinx-coroutines-core:1.10.2"
implementation "org.jetbrains.kotlinx:kotlinx-coroutines-android:1.10.2"
implementation "androidx.room:room-runtime:$room_version"
implementation "androidx.room:room-ktx:$room_version"
ksp "androidx.room:room-compiler:$room_version"

androidTestImplementation 'androidx.test.ext:junit:1.2.1'
androidTestImplementation 'androidx.test.espresso:espresso-core:3.6.1'
androidTestImplementation "androidx.room:room-testing:$room_version"
androidTestImplementation 'org.jetbrains.kotlinx:kotlinx-coroutines-test:1.10.1'

androidTestImplementation 'org.jetbrains.kotlinx:kotlinx-coroutines-test:1.10.2'
androidTestImplementation 'androidx.test:core:1.6.1'
androidTestImplementation 'androidx.test:core-ktx:1.6.1'
androidTestImplementation 'androidx.test.ext:junit-ktx:1.2.1'
androidTestImplementation 'androidx.test:runner:1.6.2'
androidTestImplementation 'androidx.test.espresso:espresso-contrib:3.6.1'

coreLibraryDesugaring 'com.android.tools:desugar_jdk_libs:2.1.4'
coreLibraryDesugaring 'com.android.tools:desugar_jdk_libs:2.1.5'

//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.10.0'
implementation 'androidx.activity:activity-compose:1.10.1'
// Compose Material3 Design
implementation 'androidx.compose.material3:material3:1.3.1'
implementation 'androidx.compose.material3:material3-window-size-class:1.3.1'
implementation 'androidx.compose.material3:material3:1.3.2'
implementation 'androidx.compose.material3:material3-window-size-class:1.3.2'
// Animations
implementation 'androidx.compose.animation:animation:1.7.8'
// Tooling support (Previews, etc.)
Expand Down
16 changes: 16 additions & 0 deletions app/proguard-rules.pro
Original file line number Diff line number Diff line change
Expand Up @@ -35,6 +35,16 @@
@retrofit2.http.* <methods>;
}

-keepclassmembers class * {
@com.google.gson.annotations.SerializedName <fields>;
@de.seemoo.at_tracking_detection.database.relations.DeviceBeaconNotification <fields>;
@de.seemoo.at_tracking_detection.statistics.api.models.** <fields>;
}

-keepclassmembers class de.seemoo.at_tracking_detection.database.** { <fields>; }

-keepclassmembers class de.seemoo.at_tracking_detection.statistics.api.models.** { <fields>; }

# Ignore annotation used for build tooling.
-dontwarn org.codehaus.mojo.animal_sniffer.IgnoreJRERequirement

Expand Down Expand Up @@ -109,3 +119,9 @@

# Keep the SharedPrefs class and its methods
-keep class de.seemoo.at_tracking_detection.util.SharedPrefs { *; }

# Keep Gson annotations
-keepattributes Signature,RuntimeVisibleAnnotations

# Keep all data classes with Gson annotations
-keep class de.seemoo.at_tracking_detection.database.relations.** { *; }
Loading
Loading