From what I can gather from google searches and here, Xojo Web Apps are not supported on Chromebooks. I am getting reports from end users that they arre getting the “Your browser is not supported,…:” page when trying to open my web app on a Chromebook.
If not, is there any workaround. This is unfortunate as I have a whole school that uses Chromebooks in the classroom trying to access the web app.
[quote=240983:@John Baughman]From what I can gather from google searches and here, Xojo Web Apps are not supported on Chromebooks. I am getting reports from end users that they arre getting the “Your browser is not supported,…:” page when trying to open my web app on a Chromebook.
If not, is there any workaround. This is unfortunate as I have a whole school that uses Chromebooks in the classroom trying to access the web app.
[/quote]
That would be worth a bug report. What would probably help is if you can get the user-agent string from a Chromebook.
I know that site. But if Xojo Web does not recognize the particular browser in Chrome OS, I suspect it is not your run off the mill Chrome. In the page where user-agent strings are listed by browser, Chrome Book or Chrome OS are not listed.
Ok. I added the Session.HandleUnsupportedBrowser event and am returning true. I do not have a Chromebook so am now waiting on feedback from one of the end users that contacted me. I tested with an old version of Firefox that I know is not supported and it appears to be working for me there.
How can I determine if it is a ChromeBook that is being rejected in the event handler. I would like to return true only for the Chromebook if it indeed does work. For all other rejections what would I return, false?
[quote=240995:@John Baughman]Ok. I added the Session.HandleUnsupportedBrowser event and am returning true. I do not have a Chromebook so am now waiting on feedback from one of the end users that contacted me. I tested with an old version of Firefox that I know is not supported and it appears to be working for me there.
How can I determine if it is a ChromeBook that is being rejected in the event handler. I would like to return true only for the Chromebook if it indeed does work. For all other rejections what would I return, false?
John[/quote]
Look at Session.Header(“User-Agent”) and compare to the user agent strings posted on the site I posted above.
I guess it is pretty safe to look for the string “CrOS” with Instr() as a marker for Chrome OS, which is the system that powers ChromeBooks.
@Michel Bujardet Look at Session.Header(“User-Agent”) and compare to the user agent strings posted on the site I posted above.
Again, Thank you Michel! The Chromebooks are working now. I have provided an obscure button which I have asked one of them to click for me while on one of their Chromebooks. The button directs the database server to email me with their User-Agent. When I get the User-Agent, I should be able to restrict access for unsupported browsers to only their Chromebooks.
I will also submit the User-Agent as a possible bug.
[quote=241007:@John Baughman]@Michel Bujardet Look at Session.Header(“User-Agent”) and compare to the user agent strings posted on the site I posted above.
Again, Thank you Michel! The Chromebooks are working now. I have provided an obscure button which I have asked one of them to click for me while on one of their Chromebooks. The button directs the database server to email me with their User-Agent. When I get the User-Agent, I should be able to restrict access for unsupported browsers to only their Chromebooks.
I will also submit the User-Agent as a possible bug.
Thanks again
John[/quote]
Keep in mind that every time the browser is updated, that user-agent string will change slightly. You’ll need to handle that if you want your app to still be working next month when Chrome is updated (they do a new release of Chrome just about once a month).
Indeed why I suggested only looking at the presence of “CrOS” in the user agent. The site I linked to is very exhaustive, though, and shows AFAIK all possible user agents. Which obviously vary.
I just checked, found nothing with the mention “chromebook” in feedback. What would really be neat is to file a report, with the chromebook’s user agent, so Greg can add that to the list of supported browsers.
I tried to google “chromebook user agent” with no luck.
[quote=316523:@Peter Stallo]Just a follow up to answer my own question for anyone else who may encounter it:
I did simply type Return True in the AllowUnsupportedBrowser event for the Session and the user with a Chromebook had no trouble after that.[/quote]
Just remember that blindly returning true also means that it’ll allow any browser to connect and start a session. Even those which don’t have all of the requirements for our framework. It would be better to look at the user-agent header, find something unique about it and only return True if its present.
This is also useful if your developing web apps that need to be accessed on a Windows 10 phone using the Mobile web preference. Web apps work fine using the Desktop web preference, but not mobile.
Yes there are Windows 10 Phone users in the world…
Windows phone are pretty rare, but indeed, there are countries where they are more popular. At one point they represented 15% of the market in the Netherlands.
To bump a somewhat old thread: I’m using Xojo 2018R3 and one of my users is reporting my WebApp doesn’t work on ChromOS (they get the “unsupported browser” message).
Is this expected behavior in modern ChromeBooks with 2018R3?