É possível ter vários bancos de dados de dados principais em um aplicativo iOS?

Eu estou querendo escrever um jogo de "gerenciamento" que utiliza dados do Core fortemente. O jogo requer um conjunto de dados pré-definido e predefinido que não pode ser alterado pelo usuário / sistema; Ele é usado para semear o jogo com dados e deve ser somente leitura.

O melhor exemplo que posso dar é um jogo de gerenciamento de futebol, mas pode ser qualquer coisa. Em alguns Sims de gerenciamento de futebol, eles oferecem cenários e conjuntos de dados pré-definidos.

À medida que o usuário avança no jogo, ele pode salvar / carregar seu progresso, que é salvo nos dados principais.

Além disso, o usuário pode receber atualizações dos dados pré-definidos ou adquirir cenários de pacotes de dados; que é salvo no dispositivo.

Assim, pode haver vários "bancos de dados de dados principais" (sim, eu sei que os dados principais não são estritamente um banco de dados) ou "baldes" nos quais o aplicativo pode mergulhar e usar.

O esquema dos dados não mudaria.

Então nós temos:

Dados pré-definidos (dados padrão) que são usados ​​apenas para a propagação do jogo.O jogo de salvamento atual do usuário.O usuário baixou um cenário da Internet.Problema: O que acontece quando o usuário salva o jogo enquanto está em um "cenário".Problema: Como faço para acompanhar todos os cenários e todos os jogos salvos pelo usuário nos dados principais?

Isso soa como vários bancos de dados em um determinado momento. Obviamente, deve-se restringir quantos jogos salvos um usuário pode fazer.

Uma solução alternativa para isso é que o dispositivo do usuário exporta uma cópia de backup dos dados em JSON ou XML e isso serve como "salvar dados" e eu poderia usar essa estratégia também para cenários. Obviamente, algum tipo de criptografia seria necessário para impedir que as pessoas simplesmente alterassem as estatísticas do jogo através do XML.

Mas eu estou querendo saber desde o início o que seria a melhor maneira de usar dados do Core para dispositivos iOS lidar com mais de um "banco de dados" de dados do núcleo?

Obrigado pelo seu tempo

questionAnswers(2)

yourAnswerToTheQuestion