Я могу вынудить пользователя iPhone обновить приложение?

Действительно ли возможно вынудить пользователя обновить, после того как существует новая версия моего приложения, доступного в iTunes Store?

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

48
задан skaffman 31 August 2010 в 09:18
поделиться

5 ответов

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

* РЕДАКТИРОВАТЬ * Этот ответ больше не верен. Смотрите другие ответы, проголосовавшие за этот ответ.

8
ответ дан 7 November 2019 в 12:17
поделиться

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

6
ответ дан 7 November 2019 в 12:17
поделиться

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

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

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

Edit01: Мой комментарий здесь Как обновить приложение после того, как пользователи заплатили за обновление также может иметь отношение к вашим планам. Если ваш дизайн обновления исключает Apple из круга доходов, это не имеет смысла.

Обновление:

Просто чтобы уточнить, основываясь на комментарии ниже: Да, иногда вам действительно приходится требовать от пользователей обновления. Однако это значительно отличается от разработки приложения с самого начала для того, чтобы заставлять пользователей обновляться каждый раз, когда разработчик выпускает новую версию.

Такой дизайн призван облегчить жизнь разработчику, а не пользователю. Каждый раз, когда пользователю приходится тратить время на обновление для получения преимуществ, о которых он не просил и, возможно, не хочет, вы отнимаете время и ресурсы у клиента. Дизайн, который перекладывает время и усилия с разработчика на пользователя, - это плохой дизайн, потому что люди в конечном итоге покупают программное обеспечение ради собственной выгоды. Когда вы уменьшаете эту выгоду, вы уменьшаете конечную прибыльность программного обеспечения.

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

5
ответ дан 7 November 2019 в 12:17
поделиться

Конечно, нет никакого способа. Пользователь должен сам решить, хочет ли он загрузить более новую версию вашего приложения или нет.

AppStore будет показывать, если есть новые версии, поэтому я также не думаю, что Apple разрешит это. Также я не знаю, как вы это сделаете? Вы можете проверить его через интернет-соединение, но это не тот способ, который нравится Apple, и поэтому у вас не будет возможности сделать это.

-11
ответ дан 7 November 2019 в 12:17
поделиться

Если вам абсолютно необходимо, вы можете запустить App Store, чтобы ваши пользователи могли получить оттуда последнюю версию. Я бы порекомендовал сделать это необязательным или, по крайней мере, сначала представить диалог.

// iTunesLink should be your applications link
NSString *iTunesLink = @"http://phobos.apple.com/WebObjects/MZStore.woa/wa/viewSoftware?id=284417350&mt=8";


[[UIApplication sharedApplication] openURL:[NSURL URLWithString:iTunesLink]];
18
ответ дан 7 November 2019 в 12:17
поделиться
Другие вопросы по тегам:

Похожие вопросы: