Полноэкранное веб-приложение для Android
Я хочу запустить мое веб-приложение, которое я запрограммировал с помощью HTML5, в полноэкранном режиме на Android.
(скрыть строку состояния и строку адреса/навигации)
для iOS вы только пишете:
<meta name="apple-mobile-web-app-capable" content="yes" />
<meta name="viewport" content="width=device-width, initial-scale=1.0">
Но это не сработало на Android.
Есть много решений с Javascript, но все решения, которые я пытался, не работают.
Кто-нибудь знает решение?
Ответы
Ответ 1
Я не думаю, что вы найдете глобальное решение для этого, поскольку не все используют веб-браузер для Android по умолчанию (например, я предпочитаю дельфинов).
С учетом этого факта вам нужно попробовать каждый грязный javascript-хак, чтобы заставить это поведение.
Единственная причина, почему это работает для яблочных устройств, - это тот факт, что яблоко очень ограничительно относится к разработке пользовательского браузера, и все придерживаются стандартного приложения.
Ответ 2
Это работало для меня в Chrome для Android.
Добавьте это в теги заголовка:
<meta name="mobile-web-app-capable" content="yes">
Затем в меню браузера Chrome выберите Перейти на главную страницу. Этот значок теперь откроет ваш сайт в полноэкранном режиме.
Ответ 3
Я использую сочетание метатега HTML для iOS и JavaScript-решения.
Он убирает адресную строку на устройствах iOS и Android. Он не вынимает нижнюю панель в iOS, так как это исчезнет только тогда, когда пользователь установит веб-страницу в качестве приложения HTML5 на своем домашнем экране.
<meta name="apple-mobile-web-app-capable" content="yes" />
<meta name="viewport" content="user-scalable=no, width=device-width, initial-scale=1.0, maximum-scale=1.0"/>
<script type='text/javascript' charset='utf-8'>
// Hides mobile browser address bar when page is done loading.
window.addEventListener('load', function(e) {
setTimeout(function() { window.scrollTo(0, 1); }, 1);
}, false);
</script>
Я использую PHP в бэкэнд только для отображения JavaScript для мобильного браузера со следующим обнаружением мобильного браузера
if (preg_match('/iphone|ipod|android/',strtolower($_SERVER['HTTP_USER_AGENT'])))
Ответ 4
Вы можете добиться этого с помощью googles нового прогрессивного веб-приложения, добавляющего сервисного работника. Посмотрите здесь: https://addyosmani.com/blog/getting-started-with-progressive-web-apps/ и https://developers.google.com/web/progressive-web-apps/.
Вы можете добавить значок в рабочий стол для вашего веб-браузера, получить полноэкранный режим, использовать push-уведомление и т.д.
Ответ 5
<meta name="apple-mobile-web-app-capable" content="yes" />
Этот тег предназначен для отображения безхромовой среды после добавления вашего сайта на главный экран iPhone.
Я бы не стал полагаться на это, чтобы работать на Android.
Чтобы панель браузера прокручивалась с пути, как только ваша страница загрузилась, ответьте на этот вопрос:
Удаление адресной строки из браузера (для просмотра на Android)
Ответ 6
Как указано Google
С Chrome M31 вы можете настроить свое веб-приложение на наличие приложения значок ярлыка, добавленный на рабочий экран устройства, и запуск приложения в полноэкранном режиме приложения с использованием Chrome для андроидов. Добавить в homecreen ".
См. https://developer.chrome.com/multidevice/android/installtohomescreen
Ответ 7
Этот код может помочь...
public void onCreate(Bundle savedInstanceState) {
requestWindowFeature(Window.FEATURE_NO_TITLE); --> hide the Top Android Bar.
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
Ответ 8
Со стороны Android и для версий ниже сотовой, это должно быть сделано с помощью:
Window w = getWindow();
w.addFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN);
w.clearFlags(WindowManager.LayoutParams.FLAG_FORCE_NOT_FULLSCREEN);
Если Android-браузер не делает что-то подобное, когда читает метаинформацию, я бы попытался найти phonegap, чтобы проверить, решить эту проблему.