问题
This is my first Chrome app creation attempt. Our school wants to create kiosk app for Chromebooks that will launch a webpage on our web server that is filled with shortcut links. This is mainly so young users like kindergarteners can bypass the login screen making the login screen is still available for older students. I spent a little bit of time on it yesterday and deployed it through the Google Apps management console, but the app does not display on our devices. I'm sure it's an issue with my code.
When I install the app as an extension in Chrome on a Windows computer I get this error message:
There were warnings when trying to install this extension:
'kiosk_enabled' is only allowed for packaged apps, but this is a hosted app.
'browser' is only allowed for packaged apps, but this is a hosted app.
Here is the code in my manifest.json file.
{
"name": "Homepage",
"version": "0.1",
"manifest_version": 2,
"description": "School homepage",
"icons": {
"128": "hn128x128.png",
"96": "hn96x96.png"
},
"app": {
"urls": ["http://mydomain/homepage/"],
"launch": {
"web_url": "http://mydomain/homepage/"
}
},
"permissions": [
"browser"
],
"kiosk_enabled": true
}
I was hoping that allowing guest mode would work, but there doesn't seem to be a way to configure a homepage for guests.
回答1:
If you want to have a kiosk app that loads a web page, your best bet is to create a Chrome app with a page that uses a webview tag to load your school homepage.
A tutorial for creating a basic app is at https://developer.chrome.com/apps/first_app. There are also several samples that use webviews.
回答2:
The issue you appear to have here is that the documentation is not quite as clear as it should be regarding hosted apps and the use of kiosk_enabled
, complicated further by the fact manifest.json
validation currently happens inconsistently.
A Chrome Hosted App is one that makes use of:
"app": {
"urls": ["http://mydomain/homepage/"],
"launch": {
"web_url": "http://mydomain/homepage/"
}
},
differentiated from a Chrome Packaged App where the app
tag would typically contain a background
section for javascript. The simplest way to create a packaged app is using a webview
as suggested by Sarah Elan in her answer.
Chrome Hosted Apps are not valid as kiosk_enabled
as reported by your error message in Chrome under Windows. Only packaged apps are valid for kiosk usage.
Unfortunately the situation seems to currently be that there is:
- No definitive documentation (that I can find) that Hosted Apps cannot be
kiosk_enabled
. - No validation of the above fact when you upload to the CWS so invalid apps can be in the CWS and even assigned to be kiosk apps in the Google Apps administration interface - only to fail later. I have a an open problem report with Google for these items and will fix this answer if and when there is a resolution to it.
It would seem another way for you to achieve what you want would be to use Public Sessions as apposed to Guest mode. This should allow you to control the initial page(s) opened in Chrome and provide an environment for your students that can be restricted, even if not as restrictive as kiosk mode.
来源:https://stackoverflow.com/questions/28611528/how-do-i-create-a-chrome-app-effectively-acting-as-a-launch-page-in-kiosk-mode