Просмотр этих вопросов / ответов может помочь вам, по крайней мере, немного:
Он не будет полностью отвечать на ваши вопросы, но все же может оказаться полезным: -)
Тем не менее, моя главная мысль будет заключаться в том, что ваша проблема - это больше правовая проблема, чем что-либо еще: если ваши клиенты хотят вас ограбить, они, вероятно, не являются клиентами, которых вы должны пытаться удержать ... Вероятно, самое важное, что вы должны сделать иметь надежный контракт со своими клиентами, который определяет, что они могут, а что не могут делать; всегда будут люди, пытающиеся обойти любую «защиту», которую вы можете установить - и они, скорее всего, все равно добьются успеха ...
Если вы хотите заняться таким бизнесом, вам нужно получить отличное лицензионное соглашение; это скорее юридический, чем технический бизнес, и вам наверняка понадобится помощь кого-то, чья работа связана с юридическими вопросами.
Тем не менее, прохождение лицензионного соглашения с приложениями / веб-сайтами, которые вы используете, может дать вам несколько советов.
Как примечание: об идее «позвони домой»: убедитесь, что, если ваш «домашний» веб-сайт / приложение не работает (это произойдет, однажды или другой) , оно не обрушит все сайты, на которых было развернуто ваше приложение - я уверен, что вашим клиентам это не понравится ^^
Кроме того: убедитесь, что то, что ваше программное обеспечение время от времени «звонит домой», четко указано в EULA / документации: если ваши клиенты сами узнают, что ваше приложение выполняет сетевые запросы, на которые они не согласились, оно будет плохо для вашего пиара.
И еще: я видел (несколько раз) приложений, развернутых на серверах, настроенных таким образом, что они не могли выполнять запросы к внешней сети компании (они говорят «причины безопасности» или что-то в этом роде) вот так) - я полагаю, что в такой ситуации мало что можно сделать ...
Другой подход заключается в том, чтобы не распространять приложение, а предоставлять услугу: не продавать само приложение, а размещать его и продавать услуги - это то, что многие компании делают (например: google, gmail или google docs; но есть много других примеров) , и, если сервис отличный, он может хорошо сработать.
Я должен добавить, что это дает вам больше возможностей для обновлений, более быстрого решения проблем, для бездействия или просто для добавления новых функций ... И вы можете контролировать, кто может использовать приложение; -)
Самая большая проблема этой идеи заключается в том, что ваше приложение не должно знать (почти) простоев: вам нужно найти отличный хостинг, создавать резервные копии, реагировать, быстро решать проблемы, ... Это тоже нелегкая работа на самом деле!