В Android-браузере Android Google Chrome можно настроить безопасное обращение-небезопасное происхождение как безопасное

Я использую getUserMedia() в своем веб-приложении, которое отлично работает, когда я тестирую свое приложение на localhost. Но если я рассматриваю свой ноутбук как сервер и запускаю приложение в браузере Google Chrome моего телефона Android, это дает мне ошибку:

GetUserMedia () больше не работает с небезопасным происхождением. Чтобы использовать эту функцию, вам следует переключить приложение в безопасное происхождение, например HTTPS. Подробнее см. Https://goo.gl/rStTGz .

Когда я проверил [ https://goo.gl/rStTGz][1], я узнал, что getUserMedia() устарел на ненадежном происхождении. Написано, что для режима разработки,

Вы можете запустить хром с флагом –unsafely-treat-insecure-origin-as-secure = "example.com" (заменив example.com на то, что вы действительно хотите протестировать)

Как и где я могу установить этот флаг? Есть ли другая альтернатива?

Solutions Collecting From Web of "В Android-браузере Android Google Chrome можно настроить безопасное обращение-небезопасное происхождение как безопасное"

Я столкнулся с этой проблемой, но в Chromium, Ubuntu. Я решил проблему с запуском этой команды в консоли:

 chromium-browser --unsafely-treat-insecure-origin-as-secure="http://localhost.dev:3000" --user-data-dir=~/.config/chromium/Profile 1 

Где localhost.dev:3000 – ваш сайт.

Для других систем информация:

Где находится каталог данных

Как запустить хром и установить ключи

Краткая информация о --unsafely-treat-insecure-origin-as-secure flag:

Лечить данное (небезопасное) происхождение как безопасное происхождение. Можно указать несколько истоков. Не имеет эффекта, если также предоставляется -user-data-dir. Пример:

--unsafely-treat-insecure-origin-as-secure=http://a.test,http://b.test --user-data-dir=/test/only/profile/dir

Я не проверял, но для android вы, возможно, можете также установить флаги на странице chrome: // flags.

Перенести localhost на устройство

Один из способов – запустить HTTP-сервер на вашем устройстве Android. Консенсус в ответах на этот вопрос заключается в том, что NanoHTTPD стоит попробовать. Если вы хотите готовое приложение, веб-поиск http server for android превратился в Simple HTTP Server в Google Play Store. После копирования клиентской стороны вашего веб-приложения на устройство и запуска сервера вы сможете открыть http://localhost:12345 в Chrome для Android.

Или сделайте ваш тестовый сервер безопасным

Вы можете протестировать защищенные контекстно- --unsafely-treat-insecure-origin-as-secure функции, не используя --unsafely-treat-insecure-origin-as-secure , превратив ваш существующий тестовый сервер в потенциально надежное происхождение. Следуй этим шагам:

  1. Если вы еще не являетесь владельцем домена у регистратора, который связывает хостинг DNS, совместимый с dehydrated клиентом ACME , зарегистрируйте его. Это несет плату, которая повторяется до тех пор, пока вы держите домен активным.
  2. Укажите субдомен на внутреннем IP-адресе вашего тестового веб-сервера. Он не может быть доступен из Интернета.
  3. Настройте тестовый веб-сервер для ответа на HTTPS на порт 443 этого субдомена, используя NameVirtualHost или тому подобное.
  4. Используйте dehydrated ACME-клиент с помощью соответствующего dns-01 крючка для вашего хоста DNS, чтобы получить сертификат от Let's Encrypt для вашего тестового веб-сервера.
  5. Установите этот сертификат на свой тестовый веб-сервер.