Как защитить android-приложение при фриланс-разработке?
Добрый день.
Существуют фриланс-биржи, и там с защитой от обмана со стороны заказчика все более-менее понятно (хотя, возможно, недостаточно эффективно работает).
Подскажите, пожалуйста, как можно защитить свое приложение от воровства или обмана со стороны заказчика, если переписка/работа по проекту ведется вне бирж?
UPDATE 1: вопрос, в частности, о ситуации, когда клиента интересует не исходники, а сам продукт в виде приложения.
P.S.: Сам я wannabe Junior Android Developer, первый заказ получил, т.к. в родном городе туго с вакансиями. Очень надеюсь на вашу помощь, дорогие эксперты.
Простейший способ - при каждом запуске проверяйте дату на смартфоне. Если дата больше условленного срока оплаты - приложение отказывается работать.
Можно ограничивать функционал - реализовать все заказанное, но при демонстрации вырезать часть функций.
После оплаты отдаете полнофункциональное приложение.
Интересное решение, на самом деле). Спасибо огромное за предоставленный вариант! А еще вопрос - а есть возможность в SharedPreference вписать что-то такое (какую-нибудь пару ключ-значение), проверка которого бы определяла "легальность" софта?
Я не большой эксперт в области разработки, только учусь и учусь). Заранее извиняюсь, если вопрос глупый.
micsha: конечно можно. Хотя пофиксить запись в SharedPreferences может любой пользователь с root доступом, это обычные текстовые файлы. Если же заказчик не искушен в реверс-инжиниринге, а проект небольшой (платный "взлом" на стороне нерентабелен) - почему нет?
вариантов тьма ─ и как посоветовал LeEnot с датой, и на сервере делать проверку, и в случае чего выводить сообщение с информацией что работа не оплачена и своими контактами .... но это уже не работа а хз что, но тем не менее все это имеет право на жизнь )
не работайте без предоплаты и избегайте неадекватов ─самый лучший рецепт
Я практиковал такой способ: демонстрирую полностью рабочее приложение, но которое использовать полноценно нельзя - к примеру, время от времени оно показывает toast-ы или notification-ы, так что это немного бесит, да и в google play не выложишь. После оплаты собираю версию без этого.