如何在自助服务终端模式下创建有效充当启动页面的Chrome应用?

时间:2015-02-19 16:25:42

标签: javascript google-chrome-app kiosk kiosk-mode

这是我第一次尝试使用Chrome应用创建。我们学校希望为Chromebook创建自助服务终端应用程序,该应用程序将在我们的Web服务器上启动一个充满快捷方式链接的网页。这主要是因为像幼儿园的孩子这样的年轻用户可以绕过登录屏幕,使得登录屏幕仍然适用于年龄较大的学生。我昨天花了一点时间在它上面并通过Google Apps管理控制台进行部署,但该应用程序未显示在我们的设备上。我确定我的代码存在问题。

当我在Windows计算机上将该应用程序安装为Chrome中的扩展程序时,我收到以下错误消息:

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.

以下是manifest.json文件中的代码。

{
    "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
}

我希望允许访客模式可以工作,但似乎并不是为客人配置主页的方法。

2 个答案:

答案 0 :(得分:2)

如果您想要一个可以加载网页的自助服务终端应用,最好的办法是创建一个Chrome应用,其中的网页使用webview标记来加载您的学校主页。

创建基本应用的教程位于https://developer.chrome.com/apps/first_app。还有一些使用网络视图的samples

答案 1 :(得分:2)

您在此处遇到的问题是,文档对于托管应用程序和kiosk_enabled的使用情况并不十分清楚,因此manifest.json验证当前发生的事实并不复杂

Chrome托管应用是可以使用以下内容的应用:

"app": {
        "urls": ["http://mydomain/homepage/"],
        "launch": {
                "web_url": "http://mydomain/homepage/"
        }
    },

与Chrome打包应用程序不同,其中app标记通常包含javascript的background部分。创建打包应用的最简单方法是在Sarah Elan的回答中使用webview

Chrome托管应用无效为kiosk_enabled ,正如您在Windows下的Chrome中的错误消息所报告的那样。 只有打包的应用才适用于自助服务终端

不幸的是,目前的情况似乎是:

  • 没有明确的文档(我可以找到),托管应用程序不能是kiosk_enabled
  • 当您上传到CWS时无法验证上述事实,因此无效的应用程序可以在CWS中,甚至被指定为Google Apps管理界面中的自助服务终端应用程序 - 只会在以后失败。我有一份针对这些项目的Google公开问题报告,如果有解决方案,我会解决这个问题。

对于您来说,实现您希望将Public Sessions用作访客模式的其他方式似乎是另一种方式。这应该允许您控制在Chrome中打开的初始页面,并为您的学生提供可以限制的环境,即使不像自助服务终端模式那样具有限制性。