Разработка Android WebView приложения с удаленной конфигурацией
Необходимо создать простое и легкое Android-приложение, которое работает как оболочка для веб-контента с возможностью централизованного управления через веб-админку.
Основная концепция
Приложение при каждом запуске обращается к заданному PHP-скрипту на сервере, чтобы получить актуальную конфигурацию: конечную ссылку для загрузки в WebView и опциональный User-Agent. Это позволяет мгновенно обновлять контент приложения без публикации новой версии в магазине.
Ключевые требования к приложению
- Динамическая загрузка конфигурации: При каждом запуске приложение выполняет запрос к указанному URL админки (например, https://site.ru/webview-admin/app.php) для получения JSON или аналогичного ответа с полями
url и user_agent.
- Отсутствие кеширования конфигурации: Ссылка и User-Agent должны запрашиваться заново при каждом холодном запуске приложения. Изменения в админке вступают в силу сразу.
- Поддержка редиректов: WebView должен корректно обрабатывать цепочки перенаправлений (например, со сторонних сервисов сокращения ссылок).
- Минимализм и безопасность:
- Вес APK-файла не должен превышать 10 МБ.
- Приложение не запрашивает никаких лишних разрешений (доступ к камере, файлам, контактам и т.д.).
- Код должен быть "чистым" - без скрытых обращений к сторонним сервисам или аналитике.
- Настраиваемость при сборке: В коде проекта Android Studio должны быть легко задаваемые параметры:
- Иконка приложения.
- Название приложения.
- Базовый URL админ-панели.
- Уникальный параметр проекта (например, для идентификации).
Требования к результату работы
- Полный исходный код готового Android-приложения.
- Подробная инструкция в текстовом виде, позволяющая самостоятельно создавать новые приложения, меняя иконку, название и привязывая их к своей PHP-админке.
- Исходный код PHP-админки будет предоставлен заказчиком исполнителю после начала сотрудничества.
Технические детали
Архитектура предполагает разделение логики: легкий клиент на Android и серверная часть для управления. Это идеально для сценариев, где контент часто меняется или нужно управлять несколькими приложениями из одной точки.