Статья взята с https://affblack.com/
Статей на тему «Техническое задание для разработки Webview приложения» или подобных еще не встречал на арбитражных просторах. Хотя тема довольно горячая. А год-два назад была вообще мега взрывной, когда Facebook любил прилки и давать отливать тысячи, а порой и десятки тысяч баксов с аккаунта. Эх, не поднажал тогда и упустил золотое время. Хотя уже даже тогда самостоятельно разобрался в прилах, заказывал разработку и лил через них траф на дейтинг. В общем, подумал и решил написать для вас годную статью. Данная тема все-таки еще актуальна, так что надеюсь оцените. Полетели!
Логика работы приложения
При открытии приложения пользователем отправляется запрос на сервер, передавая данные о часовом поясе устройства, языке устройства, модели устройства, рекламном id устройства, данные акселерометра и заряда батареи. Или другие на ваш выбор. На стороне трекера будете отслеживать и фильтровать трафик. На основании полученных данных сервер дает ответ, исходя из которого приложение принимает решение отобразить WebView или экран нативной части приложения.
В качестве сервера обработки можно использовать трекер Binom, Keitaro или написать собственное решение. Также можно использовать базу данных Firebase. Она бесплатная. Работает медленно и передавать в нее лучше только язык устройства. Логика работы с ней состоит в том, что приложение совершает запрос к БД Firebase, передавая язык устройства, а в БД прописано условие, что если язык соответствует указанному вами, то БД отдаст приложению ссылку вашей рекламной кампании, которая откроется в свою очередь в WebView браузере.
Для начинающих или не желающих заморачиваться над клоакингом, я бы рекомендовал использовать БД Firebase. По началу, чтобы пощупать, сойдет. Первое мое приложение было разработано именно с ней. Понравилось, что могу в любой момент изменить ссылку рекламной кампании.
Для более серьезных ребят советую использовать именно трекер Binom. Так как в нем есть крутые базы всех существующих ISP операторов. Благодаря им вы с легкостью отсеете любой гугловский трафик, на котором сидят модераторы, а также VРN и других провайдеров, если появится необходимость. В Кейтаро таких ISP баз нет. Вы можете в нее с помощью костылей подключить общедоступные бесплатные базы, но их качество оставляет желать лучшего. Хотя с другой стороны можно использовать интеграцию с IM KLO или HideClick, но как они будут работать - мне не известно.
Теперь перейдем к нюансам приложения.
Если нет сети на устройстве, нужно отобразить нативный экран с всплывающим сообщением: «Для использования приложения подключитесь к сети». Или любой другой текст на ваш выбор. Главное, чтобы пользователь понял, что от него требуется. Уведомление должно отображаться до момента, пока пользователь не подключиться к сети. После подключения исчезает и приложение отображает или главный нативный экран, или WebView.
Если пользователю при первом открытии приложения отобразился экран WebView, то при повторных его входах в приложения ему больше не нужно делать проверку через сервер, а сразу открывать последнюю посещенную им ссылку. Куки, разумеется, при этом должны всегда сохраняться. Так же проверяться наличие интернета.
Теперь переходим к WebView
В WebView должно корректно работать:
- Полная функциональность Javа Script.
- Сохранение Cookie пользователя.
- Сохранение кеша.
- Обработка изменения ориентации устройства (поворот экрана).
- При изменении ориентации устройства не перезагружать страницу заново.
- Загрузка файлов (чтобы пользователь мог выбрать какой-то файл и загрузить его на сайт, либо показать на экране).
- Работа кнопки назад и блокировка выхода с приложения при нажатии этой кнопки.
- Полноэкранный медиаплеер (если в web-страницу встроен медиаплеер, необходимо обеспечить возможность его работы в полноэкранном режиме).
- Работоспособность Alert в WebView.
- Размер загружаемых файлов (если нужно передать большие файлы, то данные придется резать и передавать частями).
- Определение состояния сети в JavaScript (делать это нужно постоянно на случай, если пропадет сеть, а пользователь будет играть в игру, то сообщить ему от этом).
- Сохранение последней посещенной ссылки/страницы и открытие ее при повторном входе.
По нативной части:
- Страница проверки на предмет подключения к сети.
- Страница с индикатором загрузки в момент открытия приложения, когда приложение совершает запросы на сервер и ожидает ответ.
- Основная нативная страница. Здесь каждый думает сам, что у него там будет.
Так же необходимо не забывать за установку SDK Firebase, Onesignal (для отправки пушей) и Facebook. Или любых других, которые необходимые под ваши нужды. И напоследок самое главное. Самостоятельно и очень тщательно проверяйте всю функциональность приложения. Это самый важный пункт! Иначе пожалеете.
Приложения заказывал по такому ТЗ на фрилансе за 50-70$. Разработка 2-4 дня. В стоимость разработки не входит аккаунт Google Play, загрузка и оформление приложения. Этим занимался самостоятельно. Ничего сложного. Надеюсь, статья приоткрыла для вас секрет разработки арбитражных приложений и понимание как составлять техническое задание для разработки Webview приложения. Всем успехов и до скорого!
Подписывайтесь на Telegram-канал