fix: Android-Backup und Geraeteumzug fuer App-Daten abschalten (Aussperr-Schutz) + Gradle 8.14.3

Ohne allowBackup=false/dataExtractionRules zog die SQLCipher-Datenbank beim
Handywechsel ohne ihren Keystore-Schluessel mit - AppDatabase bricht dann
bewusst ab, die App waere unbenutzbar. Ausserdem lag der Push-Zugangsschluessel
(SharedPreferences) im Cloud-Backup. Neues Geraet = neu anmelden + Schluessel
per Wiederherstellungsschluessel (Matrix-Weg). Gradle-Wrapper auf 8.14.3
(Flutter kuendigte Ende der 8.13-Unterstuetzung an).

Co-Authored-By: Claude Opus 5.5 <[email protected]>
This commit is contained in:
Bernd Steckmeister
2026-10-07 17:44:58 +02:00
co-authored by Claude Opus 5.5
parent e90b954348
commit 36875ef9cd
5 changed files with 47 additions and 3 deletions
+6 -1
View File
@@ -17,10 +17,15 @@
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED"/>
<uses-permission android:name="android.permission.REQUEST_IGNORE_BATTERY_OPTIMIZATIONS"/>
<!-- Kein Backup/Umzug der App-Daten: siehe res/xml/data_extraction_rules.xml
(verschlüsselte DB ohne Keystore-Schlüssel = App startet nicht). -->
<application
android:label="Pyramid"
android:name="${applicationName}"
android:icon="@mipmap/ic_launcher">
android:icon="@mipmap/ic_launcher"
android:allowBackup="false"
android:fullBackupContent="false"
android:dataExtractionRules="@xml/data_extraction_rules">
<service
android:name="com.cloudwebrtc.webrtc.FlutterForegroundService"
android:enabled="true"
@@ -0,0 +1,27 @@
<?xml version="1.0" encoding="utf-8"?>
<!--
Kein Cloud-Backup und keine Gerät-zu-Gerät-Übertragung der App-Daten
(Android 12+). Grund: Die lokale Datenbank ist mit SQLCipher verschlüsselt,
ihr Schlüssel liegt im Android-Keystore und zieht NICHT mit um – eine
übertragene Datenbank ließe sich auf dem neuen Gerät nicht öffnen
(AppDatabase bricht dann bewusst ab, statt Daten zu überschreiben).
Außerdem enthalten die SharedPreferences den Zugangsschlüssel für den
Push-Dienst. Matrix-Weg auf neuem Gerät: neu anmelden + Schlüssel mit dem
Wiederherstellungsschlüssel aus dem Server-Backup holen.
-->
<data-extraction-rules>
<cloud-backup>
<exclude domain="root" path="." />
<exclude domain="file" path="." />
<exclude domain="database" path="." />
<exclude domain="sharedpref" path="." />
<exclude domain="external" path="." />
</cloud-backup>
<device-transfer>
<exclude domain="root" path="." />
<exclude domain="file" path="." />
<exclude domain="database" path="." />
<exclude domain="sharedpref" path="." />
<exclude domain="external" path="." />
</device-transfer>
</data-extraction-rules>
+1 -1
View File
@@ -2,4 +2,4 @@ distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-8.13-all.zip
distributionUrl=https\://services.gradle.org/distributions/gradle-8.14.3-all.zip