Заставить пользователей обновиться до последней версии моего приложения в Google Play Store

28

Есть ли способ установить «критическое обновление» для моего приложения в магазине Google Play, которое потребовало бы от пользователя обновления приложения, чтобы оно продолжало его использовать?

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

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

В основном, если есть критическое обновление, а пользователь еще не обновился, он не сможет использовать приложение, пока не сделает это.

Возможно ли это с помощью Play Store?

Спасибо за ваш отзыв!

пьер
источник
1
Я не знаю многих подробностей о том, как магазин игр работает для издателей, но нет, в общем случае это невозможно. Подумайте, что произойдет, если ваш пользователь не в сети. Держу пари, что Google не будет предоставлять эту услугу, но если у вашего приложения есть серверный компонент на сервере, которым вы управляете, то вы можете запретить клиентам version < xи добиться по существу того же самого. Тем не менее, учитывать пользовательский опыт. У вас будет один или несколько людей на плохом 3g-соединении, которые не могут обновляться, но могут использовать - вы действительно хотите заставить их искать в другом месте?
Фоши
1
Вы действительно хотите, чтобы издатели могли устанавливать программное обеспечение на ваше устройство, хотите ли вы «обновить» или нет?
GrandmasterB
Этот проект с открытым исходным кодом GitHub (MAHAndroidUpdater) полностью предоставляет эту функциональность. Попробуйте, очень просто. github.com/hummatli/MAHAndroidUpdater
Саттар Хумматли

Ответы:

20

Чтобы это работало, какая-то логика, которую использует приложение, должна быть под вашим контролем. И тогда без этой части логики приложение не будет работать, и вы можете показать сообщение: «Ваше приложение устарело, пожалуйста, скачайте новую версию, чтобы продолжить использование».

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

Питер Б
источник
Что касается первого подхода, есть идеи о том, как проинформировать пользователя, который использует приложение со старой версией, где «какая-то логика» не реализована?
GrokkingDroid
@GrokkingDroid «Какая-то логика» вообще не реализована в вашем приложении. Он сидит на вашем сервере. Просто сообщите пользователю, как только он запустит приложение и установит соединение с вашим сервером.
Питер Б
15

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

Лучший способ справиться с описанной вами ситуацией - уведомить пользователей о том, что выпущено критическое исправление безопасности, и что все должны обновить приложение.

mouviciel
источник
2
Возможно, тогда возникает вопрос: как вы можете уведомить своих пользователей?
Лу Морда
5
-1, поскольку это не отвечает на заданный вопрос, а вместо этого дает нам личное мнение ответчика о том, что пользователи должны иметь возможность свободно запускать любую версию по своему усмотрению.
Ваддади Картик
@VaddadiKartick - Иногда на вопросы лучше всего отвечать, используя подход, основанный на латеральном мышлении.
Моувициэль
В идеале это так, но бизнес-требования иногда требуют, чтобы мы прекратили поддержку старых версий приложений из-за разрыва API-изменений. В этом случае гораздо приятнее информировать пользователя о том, что его версия приложения больше не поддерживается, и ему нужно обновлять, а не позволять своему UX страдать от ошибок и сбоев, вызванных этими изменениями.
c.dunlap
@ c.dunlap: В некоторых отраслях, таких как разработка критически важного пространства, все должно быть под контролем, включая конкретные версии компиляторов, операционных систем и инструментов. Ни одно приложение не должно быть изменено, не зная точно все возможные прямые или косвенные последствия, и, конечно, не без уведомления
mouviciel
10

Лицензирование приложений

Единственный способ заставить пользователя обновиться до последней версии - это использовать схему лицензирования. Уже существует SDK Application Licensing , который позволит вам зарегистрировать пользователя. Как только они зарегистрированы, вы можете отозвать лицензию старых версий. Принуждение пользователя к обновлению, если он хочет продолжать использовать приложение.

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

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

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

С учетом сказанного, я не согласен с этими условиями и не буду использовать приложение;)

Reactgular
источник