From 79453cea5efebe60c5927959c0b650240994247b Mon Sep 17 00:00:00 2001 From: Stephan Ritscher Date: Wed, 30 Aug 2023 22:26:04 +0200 Subject: [PATCH] Add support for client certificates --- .gitmodules | 6 ++++++ InteractiveKeyManager | 1 + MemorizingTrustManager | 1 + app/build.gradle | 6 ++++-- app/proguard-rules.pro | 5 ++++- app/src/main/AndroidManifest.xml | 8 ++++++++ .../patrick/grocy/web/RequestQueueSingleton.java | 16 +++++++++++++--- build.gradle | 2 -- settings.gradle | 4 +++- 9 files changed, 40 insertions(+), 9 deletions(-) create mode 100644 .gitmodules create mode 160000 InteractiveKeyManager create mode 160000 MemorizingTrustManager diff --git a/.gitmodules b/.gitmodules new file mode 100644 index 000000000..c60e9c01b --- /dev/null +++ b/.gitmodules @@ -0,0 +1,6 @@ +[submodule "InteractiveKeyManager"] + path = InteractiveKeyManager + url = https://github.com/stephanritscher/InteractiveKeyManager +[submodule "MemorizingTrustManager"] + path = MemorizingTrustManager + url = https://github.com/stephanritscher/MemorizingTrustManager.git diff --git a/InteractiveKeyManager b/InteractiveKeyManager new file mode 160000 index 000000000..cca85bfb5 --- /dev/null +++ b/InteractiveKeyManager @@ -0,0 +1 @@ +Subproject commit cca85bfb551573448ed17f508299491a9a7f3b11 diff --git a/MemorizingTrustManager b/MemorizingTrustManager new file mode 160000 index 000000000..d98391c42 --- /dev/null +++ b/MemorizingTrustManager @@ -0,0 +1 @@ +Subproject commit d98391c42f3d9275ba675a887fedba4ba9681493 diff --git a/app/build.gradle b/app/build.gradle index b8067d088..4ca25e988 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -38,7 +38,7 @@ android { defaultConfig { applicationId "xyz.zedler.patrick.grocy" - minSdk 21 + minSdk 23 targetSdk 34 compileSdk 34 versionCode 49 @@ -89,6 +89,8 @@ android { } dependencies { + implementation project(':InteractiveKeyManager') + implementation project(':MemorizingTrustManager') // Fix for Kotlin build error from some AndroidX dependencies implementation("org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.9.0") { because("kotlin-stdlib-jdk8 is now a part of kotlin-stdlib") @@ -144,4 +146,4 @@ dependencies { // prevents bug https://github.com/patzly/grocy-android/issues/425 //noinspection GradleDependency coreLibraryDesugaring 'com.android.tools:desugar_jdk_libs:2.0.3' -} \ No newline at end of file +} diff --git a/app/proguard-rules.pro b/app/proguard-rules.pro index bb3e3adb0..532953bd6 100644 --- a/app/proguard-rules.pro +++ b/app/proguard-rules.pro @@ -60,4 +60,7 @@ # This was generated automatically by the Android Gradle plugin to hide warnings # Only has effected these pre-KitKat two compatibility classes -dontwarn com.android.org.conscrypt.SSLParametersImpl --dontwarn org.apache.harmony.xnet.provider.jsse.SSLParametersImpl \ No newline at end of file +-dontwarn org.apache.harmony.xnet.provider.jsse.SSLParametersImpl + +# This is generated automatically by the Android Gradle plugin. +-dontwarn lombok.NonNull \ No newline at end of file diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index c0ab5f7c7..aa9dfeb98 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -85,6 +85,14 @@ android:theme="@style/Theme.Grocy.WebDialog"> + + + + +