Czy możliwe jest posiadanie wielu baz danych „baz danych” w jednej aplikacji na iOS?

Chcę napisać grę „zarządzającą”, która w dużym stopniu wykorzystuje dane podstawowe. Gra wymaga predefiniowanego, wstępnie zdefiniowanego zestawu danych, którego użytkownik / system nie może zmienić; służy do zapełnienia gry danymi i ma być tylko do odczytu.

Najlepszym przykładem, jaki mogę dać, jest gra zarządzania piłką nożną, ale może to być wszystko. W niektórych symulacjach zarządzania piłką nożną dają Ci scenariusze i gotowe zestawy danych.

Gdy użytkownik przechodzi przez grę, może zapisać / załadować swój postęp, który jest zapisany w podstawowych danych.

Oprócz tego użytkownik może otrzymywać aktualizacje predefiniowanych danych lub może kupować pakiety danych; który jest zapisany na ich urządzeniu.

Tak więc może istnieć wiele „bazowych baz danych” (tak, znam podstawowe dane to nie tylko baza danych) lub „wiadra”, do których aplikacja może się zanurzyć i używać.

Schemat danych nie ulegnie zmianie.

Więc mamy:

Wstępnie zdefiniowane dane (dane domyślne), które są używane tylko do rozsiewania gry.Aktualna zapisana gra użytkownika.Użytkownik pobrał scenariusz z Internetu.Problem: Co się dzieje, gdy użytkownik zapisuje grę w „scenariuszu”.Problem: Jak śledzić wszystkie scenariusze i wszystkie zapisane przez użytkownika gry w podstawowych danych?

Brzmi to jak wiele baz danych w danym momencie. Oczywiście należy ograniczyć liczbę zapisywanych gier, które użytkownik może wykonać.

Alternatywne rozwiązanie tego problemu polega na tym, że urządzenie użytkownika eksportuje kopię zapasową danych w JSON lub XML, a to służy jako „zapisywanie danych” i mógłbym użyć tej strategii również w przypadku scenariuszy. Oczywiście, aby zapobiec zwykłym zmianom statystyk w grze za pomocą XML, potrzebne byłoby pewne szyfrowanie.

Ale od samego początku zastanawiam się, jaki byłby najlepszy sposób wykorzystania danych Core na urządzeniach z systemem iOS do obsługi więcej niż 1 podstawowej „bazy danych” danych?

Dziękuję za Twój czas

questionAnswers(2)

yourAnswerToTheQuestion