Зависит от приложения.
Можно сделать оффлайн сайт и запускать его в приложении с помощью webview , далее обновляете только сайт.
Можете добавить check-ер , который раз в день будет обращаться на ваш сервер и смотреть есть ли обновление, если есть, то скачивать новый код (а обработчик скачанного кода должны будете внедрить в apk изначально), естественно, это опасно.
Самый удобный вариант без всяких маркетов - обновлять apk и выгружать на сайт, далее приложение запрашивает есть ли новая версия, если есть , то предлагает пользователю скачать его.
Выложить на yandex market и уже там обновлять, если не хотите тратиться на Гугл play