Skip to content

Commit f121dcd

Browse files
committed
write password into new storage
and fix migration and do not store empty strings and add missing newlines in German translation fixes #77
1 parent fada311 commit f121dcd

File tree

7 files changed

+19
-13
lines changed

7 files changed

+19
-13
lines changed

app/build.gradle.kts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -47,8 +47,8 @@ android {
4747
multiDexEnabled = true
4848
targetSdk = 35
4949
vectorDrawables.useSupportLibrary = true
50-
versionCode = 57
51-
versionName = "2.6.5"
50+
versionCode = 58
51+
versionName = "2.6.6"
5252
javaCompileOptions {
5353
annotationProcessorOptions {
5454
argument("room.schemaLocation", "$projectDir/schemas")

app/src/main/java/org/ostrya/presencepublisher/PresencePublisher.java

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -181,6 +181,13 @@ private void migratePreferences(SharedPreferences preferences) {
181181
if (!devicePreferences.contains(PASSWORD) && value != null) {
182182
devicePreferences.putString(PASSWORD, value);
183183
}
184+
// fix migration from 2.6.5: since the old storage returned "" if no data was stored,
185+
// we did store "" into the new storage even though that's pointless
186+
value = devicePreferences.getString(PASSWORD, null);
187+
// so just remove it again in this case
188+
if ("".equals(value)) {
189+
devicePreferences.putString(PASSWORD, null);
190+
}
184191
value = preferences.getString(MQTT_CLIENT_ID, null);
185192
if (!devicePreferences.contains(MQTT_CLIENT_ID) && value != null) {
186193
devicePreferences.putString(MQTT_CLIENT_ID, value);

app/src/main/java/org/ostrya/presencepublisher/device/DevicePreferences.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -85,7 +85,7 @@ private SecretKey getOrInitKey()
8585

8686
@Override
8787
public void putString(String key, @Nullable String value) {
88-
if (value != null) {
88+
if (value != null && !value.isEmpty()) {
8989
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {
9090
try {
9191
SecretKey secretKey = getOrInitKey();

app/src/main/java/org/ostrya/presencepublisher/preference/connection/PasswordPreference.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,7 @@
1515
import androidx.security.crypto.MasterKey;
1616

1717
import org.ostrya.presencepublisher.R;
18+
import org.ostrya.presencepublisher.device.DevicePreferences;
1819
import org.ostrya.presencepublisher.log.DatabaseLogger;
1920
import org.ostrya.presencepublisher.preference.common.TextPreferenceBase;
2021

@@ -37,7 +38,7 @@ public PasswordPreference(Context context) {
3738
editText.setAutofillHints(View.AUTOFILL_HINT_PASSWORD);
3839
}
3940
});
40-
setPreferenceDataStore(new SecureDataStore(context));
41+
setPreferenceDataStore(new DevicePreferences(context));
4142
}
4243

4344
@Override
Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
1+
v2.6.6
2+
• Fehler beim Speichern des MQTT-Passworts behoben
3+
14
v2.6.5
25
• neue Warnung, dass Nachrichten ohne 'conditionContent' immer versendet werden
3-
4-
v2.6.4
5-
• noch mehr Probleme bei WLAN-Erkennung für Android 10 und 11 behoben
6-
• falsches Versenden von Nachrichten ohne passende Bedingung behoben
Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
1+
v2.6.6
2+
• fixed issue when storing MQTT password
3+
14
v2.6.5
25
• new warning about always sending messages without 'conditionContent'
3-
4-
v2.6.4
5-
• fixed even more issues with wifi detection in Android 10 and 11
6-
• fixed wrongly sending messages if no condition matches

app/src/main/res/values-de/strings.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -130,7 +130,7 @@
130130
<string name="edit_message_title_2">Nachricht bearbeiten (2)</string>
131131
<string name="message_name_hint">Name</string>
132132
<string name="message_topic_hint">Topic</string>
133-
<string name="message_help_summary">Diese Liste von Nachrichten wird zum gegebenen Zeitplan versendet.\n\nTippe, um die Nachricht zu bearbeiten. Berühre länger, um einen Eintrag zu löschen.⚠️ Wenn der \"conditionContent\" Eintrag zu einer Nachricht hinzugefügt wird, so wird diese Nachricht nur versendet, wenn mindestens eine Bedingung erfüllt ist. Wenn der Eintrag nicht hinzugefügt wird, so wird die Nachricht immer versendet.</string>
133+
<string name="message_help_summary">Diese Liste von Nachrichten wird zum gegebenen Zeitplan versendet.\n\nTippe, um die Nachricht zu bearbeiten. Berühre länger, um einen Eintrag zu löschen.\n\n⚠️ Wenn der \"conditionContent\" Eintrag zu einer Nachricht hinzugefügt wird, so wird diese Nachricht nur versendet, wenn mindestens eine Bedingung erfüllt ist. Wenn der Eintrag nicht hinzugefügt wird, so wird die Nachricht immer versendet.</string>
134134
<string name="message_format_setting_title">Nachrichtenformat</string>
135135
<string name="message_format_setting_summary" formatted="true">Das Format, in dem MQTT-Nachrichten versendet werden.%nAktueller Wert: %1$s</string>
136136
<string name="message_format_help_summary">Für weitere Details über die verschiedenen Nachrichtenformate bitte hier klicken.</string>

0 commit comments

Comments
 (0)