I'm using getUserMedia()
in my web app which works fine when I test my app on localhost. But if I treat my laptop as server and launch app in Google Chrome browser of my android phone, it gives me the error:
getUserMedia() no longer works on insecure origins. To use this feature, you should consider switching your application to a secure origin, such as HTTPS. See https://goo.gl/rStTGz for more details.
When I checked [https://goo.gl/rStTGz][1] I got to know that getUserMedia()
is deprecated on insecure origins. It is written that for development mode,
You can run chrome with the --unsafely-treat-insecure-origin-as-secure="example.com" flag (replacing "example.com" with the origin you actually want to test)
How and where can I set this flag? Is there any other alternative?
This can be done from chrome://flags/
or about://flags
.
Go to about://flags
, search for unsafely-treat-insecure-origin-as-secure
flag, and enable it. You will have to provide the origin which you want to be treated as secure.
Multiple origins can be entered as comma-separated values.
Note that protocol part is also important, and specifying the IP address, or the domain name isn't enough. eg. http:// in http://192.168.43.45
.
The following is a screenshot from my mobile phone.
Mobile: Samsung Galaxy S10e
Android version: 10 (Android 10)
Google Chrome version: 79.0.3945.136
For local testing of a website I am building, geolocation was needed. Geolocation is allowed in secure locations. I do have a production server with https certificate, but the development and debugging process would become too slow if I have to upload content to it every time.