1. Главная
  2. Руководства

Как составить техническое задание для разработки Webview приложения


Статья взята с 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 должно корректно работать:

  1. Полная функциональность Javа Script.
  2. Сохранение Cookie пользователя.
  3. Сохранение кеша.
  4. Обработка изменения ориентации устройства (поворот экрана).
  5. При изменении ориентации устройства не перезагружать страницу заново.
  6. Загрузка файлов (чтобы пользователь мог выбрать какой-то файл и загрузить его на сайт, либо показать на экране).
  7. Работа кнопки назад и блокировка выхода с приложения при нажатии этой кнопки.
  8. Полноэкранный медиаплеер (если в web-страницу встроен медиаплеер, необходимо обеспечить возможность его работы в полноэкранном режиме).
  9. Работоспособность Alert в WebView.
  10. Размер загружаемых файлов (если нужно передать большие файлы, то данные придется резать и передавать частями).
  11. Определение состояния сети в JavaScript (делать это нужно постоянно на случай, если пропадет сеть, а пользователь будет играть в игру, то сообщить ему от этом).
  12. Сохранение последней посещенной ссылки/страницы и открытие ее при повторном входе.

По нативной части:

  1. Страница проверки на предмет подключения к сети.
  2. Страница с индикатором загрузки в момент открытия приложения, когда приложение совершает запросы на сервер и ожидает ответ.
  3. Основная нативная страница. Здесь каждый думает сам, что у него там будет.

Так же необходимо не забывать за установку SDK Firebase, Onesignal (для отправки пушей) и Facebook. Или любых других, которые необходимые под ваши нужды. И напоследок самое главное. Самостоятельно и очень тщательно проверяйте всю функциональность приложения. Это самый важный пункт! Иначе пожалеете.

Приложения заказывал по такому ТЗ на фрилансе за 50-70$. Разработка 2-4 дня. В стоимость разработки не входит аккаунт Google Play, загрузка и оформление приложения. Этим занимался самостоятельно. Ничего сложного. Надеюсь, статья приоткрыла для вас секрет разработки арбитражных приложений и понимание как составлять техническое задание для разработки Webview приложения. Всем успехов и до скорого!

Подписывайтесь на Telegram-канал


Комментарии