das könnte eine gute Alternative sein (ohne externe Abhängigkeit):
https://developer.android.com/kotlin/multiplatform/datastore
fkt. mit android, iOS, JVM -> JS?
Die eigentliche Frage ist, was überhaupt darüber laufen soll. Für die Konfig des Programms (Server-Namen, etc.) reicht eine Properties-Datei (aus der o.g. Lib lassen sich zumindest Hinweise ziehen, wie das auf nicht-JVM-Platformen machbar wäre). Alles Andere könnte auch in der DB abgelegt werden (jedenfalls sollange die DB im gleichen Netz ist).
Oder: Config wird als .properties (o.ä.) mit ausgeliefert, "normale" User-Settings (Farben, Font-Size ...) liegen lokal in Preferences (schneller Zugriff) und nur wichtige User-Settings, die auch ein Abrauchen des Rechners überleben sollten, kommen in die DB (sicherer). Macht das Programm nicht unbedingt übersichtlicher, wäre aber sicherlich performanter, weil die allermeisten Einstellungen dann lokal gespeichert würden. Da könnte auch die Lib hilfreich sein.
Android DataStore ist raus, das ist kompletter Overkill.
Diese Lib ist handlicher, aber auch nicht unkompliziert im Handling:
https://github.com/russhwolf/multiplatform-settings
Die eigentliche Frage ist, was überhaupt darüber laufen soll. Für die Konfig des Programms (Server-Namen, etc.) reicht eine Properties-Datei (aus der o.g. Lib lassen sich zumindest Hinweise ziehen, wie das auf nicht-JVM-Platformen machbar wäre). Alles Andere könnte auch in der DB abgelegt werden (jedenfalls sollange die DB im gleichen Netz ist).
Oder: Config wird als .properties (o.ä.) mit ausgeliefert, "normale" User-Settings (Farben, Font-Size ...) liegen lokal in Preferences (schneller Zugriff) und nur wichtige User-Settings, die auch ein Abrauchen des Rechners überleben sollten, kommen in die DB (sicherer). Macht das Programm nicht unbedingt übersichtlicher, wäre aber sicherlich performanter, weil die allermeisten Einstellungen dann lokal gespeichert würden. Da könnte auch die Lib hilfreich sein.
Für Infos zu Preferences ist das hilfreich:
https://www.javathinking.com/blog/java-how-do-you-use-the-preference-api-where-do-these-variables-store/
Im Moment funktioniert es nur für die JVM-Platform, das reicht aber bis auf Weiteres. WASM wird implementiert, falls das ein Thema werden sollte und Android und iOS liegen sowieso in ferner Zukunft.
Implementiert als Java-Preferences für "unwichtige" User-Settings außerdem Java-Properties für Programm-Config (werden beim Start einmalig eingelesen und sind unveränderlich).
Die PKCE-JWTs landen erstmal in den Preferences, wobei das noch auszutesten ist, denn das Refresh-Token läuft nur 35 Minuten, da lohnt sich das Speichern kaum.
Im Moment funktioniert es nur für die JVM-Platform, das reicht aber bis auf Weiteres. WASM wird implementiert, falls das ein Thema werden sollte und Android und iOS liegen sowieso in ferner Zukunft.
Implementiert als Java-Preferences für "unwichtige" User-Settings außerdem Java-Properties für Programm-Config (werden beim Start einmalig eingelesen und sind unveränderlich).
Die PKCE-JWTs landen erstmal in den Preferences, wobei das noch auszutesten ist, denn das Refresh-Token läuft nur 35 Minuten, da lohnt sich das Speichern kaum.
Die Token werden nicht in den Settings gespeichert (wegen 35 Minuten lohnet es sich nicht ein Sicherheitsrisiko einzugehen).
Ansonsten läuft das und die fehlenden Platformen kommen dran wenn's soweit ist.
Die Token werden nicht in den Settings gespeichert (wegen 35 Minuten lohnet es sich nicht ein Sicherheitsrisiko einzugehen).
Ansonsten läuft das und die fehlenden Platformen kommen dran wenn's soweit ist.
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
this is the lib:
implementation("com.russhwolf:multiplatform-settings-no-arg:1.3.0")
das könnte eine gute Alternative sein (ohne externe Abhängigkeit):
https://developer.android.com/kotlin/multiplatform/datastore
fkt. mit android, iOS, JVM -> JS?
Android DataStore ist raus, das ist kompletter Overkill.
Diese Lib ist handlicher, aber auch nicht unkompliziert im Handling:
https://github.com/russhwolf/multiplatform-settings
Die eigentliche Frage ist, was überhaupt darüber laufen soll. Für die Konfig des Programms (Server-Namen, etc.) reicht eine Properties-Datei (aus der o.g. Lib lassen sich zumindest Hinweise ziehen, wie das auf nicht-JVM-Platformen machbar wäre). Alles Andere könnte auch in der DB abgelegt werden (jedenfalls sollange die DB im gleichen Netz ist).
Oder: Config wird als .properties (o.ä.) mit ausgeliefert, "normale" User-Settings (Farben, Font-Size ...) liegen lokal in Preferences (schneller Zugriff) und nur wichtige User-Settings, die auch ein Abrauchen des Rechners überleben sollten, kommen in die DB (sicherer). Macht das Programm nicht unbedingt übersichtlicher, wäre aber sicherlich performanter, weil die allermeisten Einstellungen dann lokal gespeichert würden. Da könnte auch die Lib hilfreich sein.
Für Infos zu Preferences ist das hilfreich:
https://www.javathinking.com/blog/java-how-do-you-use-the-preference-api-where-do-these-variables-store/
Im Moment funktioniert es nur für die JVM-Platform, das reicht aber bis auf Weiteres. WASM wird implementiert, falls das ein Thema werden sollte und Android und iOS liegen sowieso in ferner Zukunft.
Implementiert als Java-Preferences für "unwichtige" User-Settings außerdem Java-Properties für Programm-Config (werden beim Start einmalig eingelesen und sind unveränderlich).
Die PKCE-JWTs landen erstmal in den Preferences, wobei das noch auszutesten ist, denn das Refresh-Token läuft nur 35 Minuten, da lohnt sich das Speichern kaum.
Die Token werden nicht in den Settings gespeichert (wegen 35 Minuten lohnet es sich nicht ein Sicherheitsrisiko einzugehen).
Ansonsten läuft das und die fehlenden Platformen kommen dran wenn's soweit ist.