WebApp HTTPS camera restrictions when executed from a home screen access in the phone

When I call an xojo webapp under the HTTPS protocol in the iOS Safari browser, I have access to restricted devices like the iPhone’s cameras, of course, after I’m asked for permission and I give it to them.
If I add the webapp to the home screen of the iphone, when I start the webapp from the icon created by that process, permission is not requested to access those devices, so those devices are not available for the web application. It seems as if it were running not under the HTTPS protocol, but instead under the HTTP protocol, restricting access to those devices.
Any idea how to solve this?
I like to start webapps directly from an icon on the home screen, which avoids the typical toolbar at the top of the browser and gives the webapps a more similar appearance to a native mobile application.

You can’t. That’s Apple protecting user privacy by not letting your app transmit their pictures & data in the clear.

I don’t understand Greg…
If i call the webapp typing https://IP:port Apple let me access to the camera inside the webapp (using GraffitiSuite web controls), but if I create a home screen access to the same webapp, Apple do not let me access to the camera ?
Which is the logic of such protection ?

Hi Mariano,

I think Greg’s not answering your question :wink:
I’m facing a similar situation, using HTTPS and having troubles with the web app running from home screen.
My web app runs on a machine in a LAN with no access to the internet.
Because of this I’m using a self-signed certificate.
Running from iOS Safari, the users gets a warning, because of the certificate, but can accept to visit the web site.
When running from home screen, the user doesn’t get the warning but if you look at the console for the iPad/iPhone you’ll see the error message.
Try connecting your iOS device with a cable to your development computer and use Safari development tools to look at the iOS device console, it may give you some info…

Oliver, you do understand exactly the problem I have:
Running from iOS Safari, as I run the webapp under HTTPS and I had placed a certificate in the server, I get a warning to access to the camera… I accept the warning and I can use the camera inside my webapp.
This do not happened when running from home screen. No warning, so no access to the camera is possible.

I never used Safari Development Tools… I will see there if I could find some answer or solution.
If someone in the forum have another idea of how to solve it I will apreciate a lot.

You’r not reading ?

It looks like apple is not allowing you to do this while you actually are still connected over a https connection. Do you automaticly redirect from http to https?

It seems this is an apple bug:


My webapp is built in order to use port 9500 via HTTP
In the server side, I run the webapp with the following command:
C:/WebReader/WebQRReader.exe --secureport=8082
When I run the webapp in the browser I type https://ServerIPaddress:8082, redirecting to a secure port and using HTTPS protocol.
The browser requieres my permision to use the camera, and it works fine.
If I create a home screen access to the webapp from the browser, and once the icon of the webapp is in the home screen, if I run the webapp from that icon, no permision was asked me, and of course the camera is not accesible.

It is possible that this is an Apple bug, but I am not sure.
The article you indicated reffers to the same problem, and says that it was solved on iOS version 11.2.
But I am using iOS 12.1 and the problem is still there.

Anyone knows if it is an iOS bug, a Xojo limitation or a misconfiguration of any iPhone/iOS parameter ?