Правильный способ разработки бесплатной и платной версии приложения - PullRequest
0 голосов
/ 21 сентября 2018

У меня есть приложение с бесплатными и платными функциями.

Предположим, что действие в бесплатной версии может выполнять операцию A, операцию B и имеет отказ от ответственности, что для разблокирования операции C пользователь должен приобрести полную версию.У этого актива также есть реклама.

То же действие в платной версии имеет ту же операцию A, ту же операцию B и, конечно, операцию C разблокирован.В этом упражнении нет рекламы.

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

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

Хотя, конечно, я добавлю только платные функции в платную версию.

1 Ответ

0 голосов
/ 21 сентября 2018

Вы можете сделать так:

if(BuildConfig.Flavor.equals("free")) {
    //do something
}
else if(BuildConfig.Flavor.equals("paid")) {
   //do other thing
}

и нажмите ctrl + shift + f для поиска файла BuildConfig.java, вы увидите структуру этого файла.

...