Ich habe eine einfache Xamarin Forms App. Ich habe jetzt ein einfaches POCO-Objekt (z. B. User
Instanz oder eine Liste der neuesten Tweets oder Bestellungen oder was auch immer).
Wie kann ich dieses Objekt lokal auf dem Gerät speichern? Stellen wir uns vor, ich serialisiere es als JSON.
Wie sicher sind diese Daten? Ist es ein Teil von Keychains, etc.? Automatisch gesichert?
prost!
Sie haben ein paar Möglichkeiten.
Ich denke, Sie müssen nachforschen und herausfinden, welche Route Ihren Bedürfnissen am besten entspricht.
Was die Sicherheit anbelangt, hängt dies davon ab, wo Sie Ihre Daten auf jedem Gerät ablegen. Android speichert App-Daten standardmäßig in einem sicheren App-Ordner (nicht ganz so sicher, wenn Sie als Root angemeldet sind). IOS verfügt über verschiedene Ordner für die Datenspeicherung, die auf unterschiedlichen Anforderungen basieren. Lesen Sie hier mehr: - iOS Datenspeicher
Eine andere Option ist das xamarin Forms Settings Plugin https://github.com/jamesmontemagno/SettingsPlugin . Wenn Sie ein Geschäft benötigen, z. Benutzerinstanz, serialisieren Sie sie beim Speichern auf json und deserialisieren Sie sie beim Lesen.
Verwendet die native Einstellungsverwaltung
Windows RT/UWP: ApplicationDataContainer
public User CurrentUser
{
get
{
User user = null;
var serializedUser = CrossSettings.Current.GetValueOrDefault<string>(UserKey);
if (serializedUser != null)
{
user = JsonConvert.DeserializeObject<User>(serializedUser);
}
return user;
}
set
{
CrossSettings.Current.AddOrUpdateValue(UserKey, JsonConvert.SerializeObject(value));
}
}
Benutzen Sie bitte Xamarin.Essentials
Die Preferences-Klasse hilft beim Speichern von Anwendungseinstellungen in einem Schlüssel-/Wertespeicher.
So speichern Sie einen Wert:
Preferences.Set("my_key", "my_value");
So erhalten Sie einen Wert:
var myValue = Preferences.Get("my_key", "default_value");