在Chrome Kiosk模式下运行应用程序有哪些技术优势?

时间:2018-04-20 12:54:08

标签: google-chrome kiosk-mode

我很想知道在自助服务终端模式下运行网络应用/网站是否有任何技术优势/劣势。

我从某人那里听说,在自助服务终端模式下运行您的网站会为您的网站提供额外的权限来访问文件,编写文件,打印等对我的网站有用但我无法在网上找到任何有关技术的信息两者之间的差异。我只是设法找到有关会话管理的信息以及" hack"信息亭模式。

具体来说,我想了解打印功能。我想在没有使用Windows服务的情况下将单据打印到点阵打印机。需要注意的重要事项是,此内容应仅打印一次,内置的PDF /网页功能不足以允许多次打印。所以我想跟踪/限制打印的打印量。

有没有人知道Chrome的普通模式和信息亭模式之间的技术差异列表,除了它显示页面全屏并将用户锁定在设备之外的某种程度?

1 个答案:

答案 0 :(得分:1)

我想让你远离Chrome,但这不是主题......真正的好处是可以在kiosk模式下运行Firefox(例如:使用简单的窗口管理器运行barebone linux; Windows也可以选择,多一点工作)。使用Firefox,您可以使用XUL编程语言,其中HTML浏览器只是您与其他组件结合使用的组件。所以你可以开发一个自定义键盘(带按钮,链接,表情符号等),它与firefox浏览器组件通信,设置它的url等等。使用Chrome,你无法以简单的方式实现这一点,因为它只支持Extensions,主要开发只在浏览器(网页)中。使用XUl,您可以真正制作自己的“自助服务终端”,浏览器就是其中之一。那么你可以举例如:

  • 检查网址用户类型,
  • 提供自己的书签行为,
  • 覆盖“后退”功能等等。
  • 覆盖打印功能,提供您自己的打印页面等......

这有特殊用途,可以让用户受益,或严格限制最终用户可以使用浏览器做什么。 XUL代码示例:

<?xml version="1.0"?>
<?xml-stylesheet href="chrome://global/skin/" type="text/css"?>
<?xml-stylesheet href="chrome://gustinmi-kiosk/content/overlay.css" type="text/css"?>
<?xul-overlay href="chrome://gustinmi-kiosk/content/overlay.xul"?>
<window
    id="main"
    title="gustinmi-kiosk"
    sizemode="maximized"
    height="1024"
    width="1280" 
    scrolling="no" 
    xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"
    xmlns:html="http://www.w3.org/1999/xhtml"
    class="blackbox"
>
    <script type="application/x-javascript" src="chrome://gustinmi-kiosk/content/touchscreen.js"/>

    <vbox id="navigator">
        <hbox class="address">
            <textbox id="omnibox" class="omnibox" type="autocomplete" value="" />
        </hbox>
        <hbox class="bookmarks">
            <button label="Google" class="kioskKey" oncommand="kiosk.navigate('http://www.google.si/')"/>     
            <button label="Gmail" class="kioskKey" oncommand="kiosk.navigate('http://www.gmail.com/')"/>
            <button label="GoogleMaps" class="kioskKey"  oncommand="kiosk.navigate('https://maps.google.com/')"/>
            <button label="Github" class="kioskKey"  oncommand="kiosk.navigate('https://github.com/gustinmi')"/>
        </hbox>
    </vbox>

    <vbox id="content" flex="1">
            <!-- the instance of browser will be added here -->
    </vbox>

</window>