Разработка под iOS: как я могу внести изменения в свое приложение, чтобы оно влияло только на новых пользователей? - PullRequest
0 голосов
/ 31 мая 2011

Я хотел бы внести некоторые радикальные изменения в свое приложение для iOS, но я не хочу, чтобы эти изменения влияли на существующие установки, так как это может привести к жалобам существующих пользователей.Как я могу ограничить новую функциональность только для новых установок?

Одним простым способом было бы установить глобальный флаг в той точке кода, которая возникает только до того, как пользователь завершит обучение, а затем, если этот флаг установлен, использовать новый код.Другие, более элегантные решения?

Большое спасибо за вашу мудрость!

Ответы [ 5 ]

3 голосов
/ 31 мая 2011

Я отложу, если должен сделать это. Другие ответчики сказали, что я должен сказать по этому поводу.

Технически как вы могли бы сделать это путем поиска любых данных, которые сохраняются, когда пользователь обновляет приложение. Итак, любые значения NSUserDefaults, которые вы установили, все, что вы записали в изолированную программную среду приложения, значения цепочки для ключей ... Любая подсказка, которой вы были здесь раньше, и вы устанавливаете себе флаг userDefaults, чтобы показывать только старые вещи. В противном случае установите себе флаг, чтобы показывать только новые вещи.

1 голос
/ 31 мая 2011

Если приложение радикально отличается, то создайте новое приложение.В противном случае, каждый, кто обновится, получит новый.

Некоторые существующие пользователи могут захотеть получить нового, а некоторые - старого.Это дает всем выбор.

1 голос
/ 31 мая 2011

Если вы хотите 2 разных поведения приложений, вы можете просто отправить новое приложение в магазин приложений. Apple может или не может понравиться «скрытые» поведения, которые они не могут найти во время обзора.

1 голос
/ 31 мая 2011

самое элегантное решение, которое я могу придумать, - позволить пользователю выбирать.

если ваши изменения разделены настолько хорошо, что вы можете использовать флаг (как вы говорите в своем вопросе), чтобы решить, какой код вы запускаете, я бы добавил параметр useNewUI, который по умолчанию ДА, если вы не обнаружили, что приложение было уже установлен (подробнее об этом читайте далее). Затем пользователь может перейти к настройкам (вы также можете спросить их) и принять решение и в любой момент изменить.

Вы можете решить, является ли ваш пользователь новым или старым, проверив все данные, которые вы храните в NSUserDefaults. В начале программы вы проверяете, есть ли данные, затем вы добавляете useNewUI к NSUserDefault со значением NO, в противном случае вы добавляете его со значением YES.

Этот подход, основанный на NSUserDefault, может быть полезен для вас, даже если вы игнорируете возможность позволить пользователю выбирать настройки.

0 голосов
/ 31 мая 2011

Вы не можете. После того, как вы отправите обновление, все ваши пользователи смогут загрузить его и получат новую функцию. Если обновление будет раздражать ваших существующих клиентов, оно, вероятно, будет раздражать и новых пользователей.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...