Определите, было ли ранее установлено приложение - PullRequest
3 голосов
/ 17 февраля 2012

У меня есть приложение в App Store, и я хочу внести некоторые изменения, которые не затронут пользователей, которые ранее загрузили мое приложение.

Есть ли способ определить, загружал ли пользователь мое приложение ранее?

Ответы [ 2 ]

3 голосов
/ 11 июля 2015

Если кому-то все еще интересно, отличным решением этой проблемы (если у вас его еще нет) является использование цепочки для ключей, которая сохраняется через установку / удаление приложений.Эта библиотека позволяет вам получить доступ к связке ключей, используя NSDictionary-подобный синтаксис.

https://github.com/nicklockwood/FXKeychain

Таким образом, вы можете реализовать такую ​​функцию:

-(BOOL)alreadyInstalled
{
NSString *installDate = [[FXKeychain defaultKeychain] objectForKey:@"InstallDate"];
if (!installDate)
{
    NSString *newInstallDate = [NSString stringWithFormat:@"%i", [[NSDate date] timeIntervalSince1970]];
    [[FXKeychain defaultKeychain] setObject:newInstallDate forKey:@"InstallDate"]
    return NO;
}
return YES;
}
2 голосов
/ 17 февраля 2012

Я не знаю, отличный способ сделать это, но есть некоторые приемы, которые вы можете сделать, например:

  1. Найдите некоторые данные, которые ваше приложениегенерирует.Если данные уже существуют, то это не обновление (или обновление, которое было выполнено ранее);

  2. Подготовьтесь к этому, даже если это означает выпуск промежуточного обновления для вашего приложения, затем перейдитевернуться к # 1.См .: Как узнать, было ли приложение iOS недавно установлено или обновлено?

...