W takim przypadku SP (shared preferences) to najlepsze rozwiązanie 😉żeby zobrazować Ci czym jest SP i jak to tak w zasadzie działa to opowiem Ci troszkę o tym czy w zasadzie jest SP: jest to plik XML znajdujący się w katalogu z danymi Twojej aplikacji (/data/data/_your_package_name_/shared_prefs). Jeśli posiadasz roota na urządzenie to wystarczy, że po dotarciu tutaj zawołasz cat _your_sp_file_i zobaczysz jakie dane się tam znajdują 🙂Oto przykład takiego pliku:
<?xml version='1.0' encoding='utf-8' standalone='yes' ?>
<map>
<long name="pref_last_operators_update_check_2" value="1528350505619" />
<set name="pref_provisioned_apps">
<string>org.kiwix.kiwixmobile</string>
</set>
<long name="pref_last_update_time" value="1528350505619" />
</map>
Jak widzisz wszystko tutaj jest jawne i bardzo prosto dostępne, więc jeśli planujesz trzymać tutaj jakieś wrażliwe dane to musisz sam zadbać o ich zaszyfrowanie (ja osobiście odradzam trzymanie tutaj newralgicznych danych).
Gdy dodajesz coś do SP to zostaje dopisane do takiego pliku, gdy odczytujesz jest odnajdywane po nazwie klucza.
Aby zapisać coś do SP możesz użyć
SharedPreferences sp = context.getSharedPreferences("my_prefs_name", Context.MODE_PRIVATE);
SharedPreferences.Editor editor = sp.edit();
editor.putString("key", "value");
editor.apply();
lub
Editor prefEditor = PreferenceManager.getDefaultSharedPreferences(context).edit();
prefEditor.putString("key", "value");
prefEditor.apply();
Różnica między jednym a drugim sposobem jest taka, że w pierwszym to Ty decydujesz do jakiego pliku mają być zapisane Twoje dane (jeśli tego pliku jeszcze nie ma to zostanie utworzony), w drugim z automatu dane są zapisywane do pliku o nazwie takiej samej jak twój package name aplikacji.
Mam nadzieję, że pomogłem 😉Jeśli dopiero zaczynasz to zachęcam Cię do zajrzenia do naszej sekcji z tutorialami, którą ciągle staramy się powiększać. Jeśli jest jakiś temat, który chciałbyś abyśmy poruszyli napisz o tym koniecznie!