CN107870746B - 图像形成装置 - Google Patents
图像形成装置 Download PDFInfo
- Publication number
- CN107870746B CN107870746B CN201710242924.6A CN201710242924A CN107870746B CN 107870746 B CN107870746 B CN 107870746B CN 201710242924 A CN201710242924 A CN 201710242924A CN 107870746 B CN107870746 B CN 107870746B
- Authority
- CN
- China
- Prior art keywords
- application
- core logic
- applications
- framework
- screen
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/12—Digital output to print unit, e.g. line printer, chain printer
- G06F3/1201—Dedicated interfaces to print systems
- G06F3/1202—Dedicated interfaces to print systems specifically adapted to achieve a particular effect
- G06F3/1203—Improving or facilitating administration, e.g. print management
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N1/00—Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
- H04N1/00912—Arrangements for controlling a still picture apparatus or components thereof not otherwise provided for
- H04N1/00938—Software related arrangements, e.g. loading applications
- H04N1/00941—Interaction of different applications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B15/00—Systems controlled by a computer
- G05B15/02—Systems controlled by a computer electric
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/12—Digital output to print unit, e.g. line printer, chain printer
- G06F3/1201—Dedicated interfaces to print systems
- G06F3/1202—Dedicated interfaces to print systems specifically adapted to achieve a particular effect
- G06F3/121—Facilitating exception or error detection and recovery, e.g. fault, media or consumables depleted
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/12—Digital output to print unit, e.g. line printer, chain printer
- G06F3/1201—Dedicated interfaces to print systems
- G06F3/1202—Dedicated interfaces to print systems specifically adapted to achieve a particular effect
- G06F3/1222—Increasing security of the print job
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/12—Digital output to print unit, e.g. line printer, chain printer
- G06F3/1201—Dedicated interfaces to print systems
- G06F3/1223—Dedicated interfaces to print systems specifically adapted to use a particular technique
- G06F3/1229—Printer resources management or printer maintenance, e.g. device status, power levels
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/12—Digital output to print unit, e.g. line printer, chain printer
- G06F3/1201—Dedicated interfaces to print systems
- G06F3/1223—Dedicated interfaces to print systems specifically adapted to use a particular technique
- G06F3/1229—Printer resources management or printer maintenance, e.g. device status, power levels
- G06F3/123—Software or firmware update, e.g. device firmware management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/12—Digital output to print unit, e.g. line printer, chain printer
- G06F3/1201—Dedicated interfaces to print systems
- G06F3/1223—Dedicated interfaces to print systems specifically adapted to use a particular technique
- G06F3/1229—Printer resources management or printer maintenance, e.g. device status, power levels
- G06F3/1234—Errors handling and recovery, e.g. reprinting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/12—Digital output to print unit, e.g. line printer, chain printer
- G06F3/1201—Dedicated interfaces to print systems
- G06F3/1223—Dedicated interfaces to print systems specifically adapted to use a particular technique
- G06F3/1237—Print job management
- G06F3/1238—Secure printing, e.g. user identification, user rights for device usage, unallowed content, blanking portions or fields of a page, releasing held jobs
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/12—Digital output to print unit, e.g. line printer, chain printer
- G06F3/1201—Dedicated interfaces to print systems
- G06F3/1278—Dedicated interfaces to print systems specifically adapted to adopt a particular infrastructure
- G06F3/1285—Remote printer device, e.g. being remote from client or server
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/12—Digital output to print unit, e.g. line printer, chain printer
- G06F3/1201—Dedicated interfaces to print systems
- G06F3/1278—Dedicated interfaces to print systems specifically adapted to adopt a particular infrastructure
- G06F3/1285—Remote printer device, e.g. being remote from client or server
- G06F3/1286—Remote printer device, e.g. being remote from client or server via local network
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/61—Installation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/61—Installation
- G06F8/62—Uninstallation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/451—Execution arrangements for user interfaces
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N1/00—Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
- H04N1/00002—Diagnosis, testing or measuring; Detecting, analysing or monitoring not otherwise provided for
- H04N1/00071—Diagnosis, testing or measuring; Detecting, analysing or monitoring not otherwise provided for characterised by the action taken
- H04N1/00074—Indicating or reporting
- H04N1/00076—Indicating or reporting locally
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N1/00—Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
- H04N1/0035—User-machine interface; Control console
- H04N1/00405—Output means
- H04N1/00408—Display of information to the user, e.g. menus
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N1/00—Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
- H04N1/0035—User-machine interface; Control console
- H04N1/00405—Output means
- H04N1/00474—Output means outputting a plurality of functional options, e.g. scan, copy or print
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N2201/00—Indexing scheme relating to scanning, transmission or reproduction of documents or the like, and to details thereof
- H04N2201/0077—Types of the still picture apparatus
- H04N2201/0094—Multifunctional device, i.e. a device capable of all of reading, reproducing, copying, facsimile transception, file transception
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Human Computer Interaction (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Health & Medical Sciences (AREA)
- Biomedical Technology (AREA)
- General Health & Medical Sciences (AREA)
- Automation & Control Theory (AREA)
- Computer Security & Cryptography (AREA)
- Facsimiles In General (AREA)
- Stored Programmes (AREA)
- Accessory Devices And Overall Control Thereof (AREA)
- Debugging And Monitoring (AREA)
Abstract
一种图像形成装置包括:架构上的应用,所述应用分离为负责基本处理的核心逻辑部分和负责渲染处理的用户接口框架部分并且进行操作;以及控制器,所述控制器执行所述应用和所述架构。所述核心逻辑部分利用由所述架构定义的应用编程接口实现。所述应用包括含特定应用的多个应用,所述特定应用的核心逻辑部分利用启动器编程接口实现,显示启动画面,并且在另一应用中出现错误的情况下显示意外画面。
Description
技术领域
本发明涉及图像形成装置。
背景技术
具有诸如复印、打印和传真的功能的多功能机器的功能被进一步扩展,因此要求有效率地构造包括各种应用的整个系统。
日本未审专利申请公开No.2012-248102描述了一种图像形成装置,其允许用户容易地识别应用列表画面上显示的图标的应用是否在执行期间。构造包括画面信息存储单元,针对用于调用其中注册了应用和应用的操作设置的宏的图标,存储包括图标位置、图标图像、应用识别信息和宏识别信息的列表画面信息;画面控制单元,获取与作业状态从待机变为执行的应用有关的状态信息,输出识别信息,并且作出画面更新请求;画面创建单元,如果在基于列表画面信息创建的应用的列表画面上接收到画面更新请求,则将由获取的识别信息指示的应用的图标的显示风格更新为不同于另一应用的图标的显示风格;显示单元,显示包括更新的图标的列表画面。
日本未审专利申请公开No.2012-27662描述了在具有扩展功能的多功能机器中改进用户的可操作性。构造包括:布置信息存储单元,存储图标布置信息,在图标布置信息中,标准应用、扩展应用、以及用于标准和扩展应用之间的识别的应用识别信息与关于对应图标的坐标信息和关于图标的图像信息相关联;列表画面创建单元,创建其中基于图标布置信息显示与标准和扩展应用对应的图标的应用列表画面;显示单元,显示创建的应用列表创建画面;画面控制单元,从图标布置信息指定与按下的图标对应的标准或扩展应用,并且作出对于指定的标准或扩展应用的操作画面显示请求。
在现有技术中,作为图像形成装置的系统,准备大的根应用并且提供要从各应用使用的各种功能。所有应用依赖于根应用。
而且,专门负责(handle)图像形成装置中的各种设备的状态的设备应用独立存在。实质上所有应用依赖于设备应用。
另外,应用之间的公共实现发展,应用也彼此依赖。
因此,每次添加或删除应用时,要求在应用之间进行调整,同时,时常要求修正根应用。因此,不可容易地添加或删除应用。
发明内容
本发明的目的是提供一种图像形成装置,其限制应用之间的依赖性(dependence)并且允许容易地添加或删除应用。
根据本发明的第一方面,提供了一种图像形成装置,包括:架构上的应用,所述应用分离为负责基本处理的核心逻辑部分和负责渲染处理的用户接口框架部分并且进行操作;以及控制器,所述控制器执行所述应用和所述架构。所述核心逻辑部分利用由所述架构定义的应用编程接口(API)实现。所述应用包括含特定应用的多个应用,所述特定应用的核心逻辑部分利用启动器编程接口实现,显示启动画面,并且在另一应用中出现错误的情况下显示意外画面。
根据本发明的第二方面,基于第一方面中描述的图像形成装置,如果出现错误,则所述另一应用的核心逻辑部分可向架构发送意外画面显示请求。所述架构可响应于意外画面显示请求指示所述特定应用显示意外画面。
利用本发明的第一方面,能限制应用之间的依赖性,能容易地添加或删除应用,并且能显示在另一应用中出现错误的情况下的意外画面。
利用本发明的第二方面,其他应用不需要识别意外显示应用的位置或状态。
附图说明
将基于以下附图详细描述本发明的示例性实施方式,其中:
图1是图像形成装置的功能框图;
图2是系统的逻辑配置图;
图3是示出主画面的示例的说明图;
图4是应用的逻辑配置图;
图5是现有技术的系统的逻辑配置图;
图6是架构上的应用的配置图;
图7是示出应用的特定配置示例的说明图;
图8是示出应用列表的特定配置示例的说明图;
图9提供示出核心逻辑和UI框架的模式的说明图;
图10A至10C是UI和逻辑改变时的说明图;
图11A和11B是均示出架构上的应用的模式的说明图;
图12是包括引导器(booter)和启动器(starter)的生命周期管理的系统配置图;
图13是生命周期管理的顺序图;
图14是示出从系统激活到主画面显示的时间的图表;
图15是启动器应用的操作流程图。
具体实施方式
下面参照附图描述本发明的示例性实施方式。
系统总体构成
图1是包括根据此示例性实施方式的图像形成装置的图像形成系统的构成框图。图像形成系统包括终端装置10和图像形成装置12。终端装置10和图像形成装置12通过通信单元14彼此连接。通信单元14例如使用数据通信网络,诸如局域网(LAN)。
终端装置10通过通信单元14与图像形成装置12连接,并且根据用户的指令发送例如包括文档的打印命令的打印作业。
图像形成装置12包括只读存储器(ROM)16、随机存取存储器(RAM)18、硬盘驱动(HDD)20、由一个或多个中央处理单元(CPU)构成的控制器22、输入/输出接口(I/F)24、诸如触摸面板的操作单元26、图像形成单元28。
由一个或多个CPU构成的控制器22根据ROM 16中存储的处理程序通过输入/输出I/F 24从终端装置10接收例如打印作业命令,解释页面描述语言(PDL)数据并且生成中间数据,并且从生成的中间数据进一步生成渲染数据(光栅数据)。而且,控制器22执行从操作单元26接收的各种命令,诸如复印、扫描和传真。
图像形成单元28包括打印模块、扫描模块、传真模块、纸馈送模块、原稿馈送模块和图像处理加速器。
打印模块具有在纸上输出图像的功能。例如,打印模块包括已知喷墨方法的构成并且在纸上打印渲染数据。打印模块从喷嘴等排出液体或溶融固体墨,并且在纸、膜或另一材料上执行记录。排出墨的方法包括利用静电引力排出墨的按需喷墨方法(压力脉冲法),以及利用通过在高温下用热形成和生长气泡而生成的压力来排出墨的热喷墨方法。要使用的记录头包括例如排出青色墨的头、排出品红色墨的头、排出黄色墨的头和排出黑色墨的头。每个头使用至少具有等于纸宽度的宽度的线头。各色的墨滴通过用于记录的记录头排出在中间转印体上,然后转印在纸上用于打印。
扫描模块从纸读取图像并且将图像转换为电子数据。
传真模块包括调制解调器和传真图像处理模块,并且执行传真功能。
纸馈送模块将纸从纸盘传输到打印模块。
原稿馈送模块将纸从原稿盘传输到扫描模块。
图像处理加速器是与例如扫描模块关联地执行压缩/扩展处理的模块。图像处理加速器不一定要提供并且可以是附加模块。
除了前述模块以外,图像形成装置12可以包括提供例如纸的穿孔和分类的装订器;通用串行总线(USB);由集成电路(IC)卡读取器等构成并且验证用户的验证单元;计费单元;和/或人体传感器、面部相机等。
而且,图像形成装置12可通过通信单元14与互联网连接,或者可包括以太网(注册商标)和/或Wi-Fi(注册商标)。
程序的逻辑构成
图2示出由控制器22执行的系统的逻辑构成。系统大致分离为两层,包括表示层30和设备服务层32。
表示层30是实现各种应用的层,包括架构31和各种应用。架构31是允许JavaScript(注册商标)应用在计算机系统上可操作的执行环境软件组。更具体地,JavaScript在网页浏览器上执行,并且基本框架和UI框架被加载作为超文本标记语言(HTML)的iframe。而且,这种应用是利用由架构31提供的应用编程接口实现的JavaScript软件。架构31管理各种应用的生命周期。即,对于各种应用中的每个,架构31创建基本框架,读取应用的核心逻辑,并且向核心逻辑给出初始化指令。而且,在系统停用(deactivation)时,架构31向各种应用中的每个的核心逻辑给出终止化指令,并且删除基本框架。稍后更详细地描述各种应用中的每个的核心逻辑和生命周期管理。
设备服务层32是管理各种硬件设备的层。硬件设备例如包括上面描述的图像形成单元28的打印模块。
图3示出图像形成装置12的操作单元26上显示的画面(主画面)的示例。主画面包括显示在上面的图标。图标包括复印按钮34、ID卡复印(ID复印)按钮36、扫描按钮38、传真按钮40、我的复印按钮42、网络应用(网络app1)按钮44和轻松复印按钮46。当用户触摸并选择按钮之一时,分配给按钮的应用激活,画面转移到应用画面。用户可意识到按钮对应于应用。
每个应用是如上所述的利用由架构31提供的应用编程接口实现的JavaScript软件,并且是直接向用户提供功能的组件。每个应用具有由架构31定义的公共构成。而且,每个应用配置为针对另一应用具有低联系(link)度。应用包括通过用户接口(UI)与用户协作的应用以及不与用户协作的应用。与用户协作的应用主观地执行通过表示层30的显示和输入。
图还示出使用户进行登录的登录按钮48。此按钮也对应于应用。
应用的实现结构
图4示出应用的结构。应用50大致分离为三个组件。即,应用50分离为核心逻辑52、UI框架54、manifest文件(清单文件)56。在这种情况下,“分离”不表示物理分离,而是表示逻辑分离。
核心逻辑52是作为应用执行基本处理(基本行为和应用间关联)的组件,必须存在于每个应用中。核心逻辑提供由架构31定义的应用编程接口。
UI框架54是作为应用提供渲染和显示的组件,或者更具体地,被管理为显示窗口。
manifest文件56是关于每个应用的状态信息的列表。状态信息可包括应用的标识符(ID)、显示名称、图标图像、版本、创建日期等。manifest文件56包括核心逻辑manifest文件56-1和UI框架manifest文件56-2。要由manifest文件56写入的一条信息是isLaunchable属性。利用此属性,确定应用是否显示为主画面上的图标(按钮)。属性如下:
如果isLaunchable=true则选择显示;
如果isLaunchable=false则选择不显示。
利用此构成,核心逻辑52与UI框架54之间的通信规则如下:
(1)核心逻辑52与另一核心逻辑52通信;
(2)UI框架54仅与核心逻辑52通信。
因此,UI框架54不与另一UI框架54通信。
图5示出现有技术的程序构成。在现有技术中,准备大的根应用(root app)600,并且提供各个应用要使用的各种功能。所有应用依赖于此根应用600。而且,专门负责各种设备的状态的设备应用(device app)620也独立存在。实质上所有应用依赖于此设备应用620。另外,应用之间的公共实现发展,而且应用彼此依赖。因此,即使在添加或删除应用的情况下,每次情况发生时要求在应用之间进行调整,并且时常要求修正根应用600。应用不可容易地添加或删除。
相比之下,图6示出此示例性实施方式的程序构成。每个应用分离为核心逻辑52、UI框架54、manifest文件56。每个应用的核心逻辑52与架构31连接。每个应用的UI框架54与应用的核心逻辑52连接。
例如,示例性描述复印应用,复印应用分离为核心逻辑52、UI框架54、manifest文件56。核心逻辑52与架构31连接。UI框架54与核心逻辑52连接。不同于现有技术,在不存在依赖性的情况下限制各个应用之间的联系,因此由架构31通过核心逻辑52执行应用之间的关联。每个应用的核心逻辑52提供由架构31定义的应用编程接口。因此,当新添加应用时,可通过提供由架构31定义的应用编程接口容易地执行添加。而且,因为应用之间的联系受限,所以可容易地删除应用。
图7示出复印应用的示例。在图中,baseframe.html是核心逻辑52,base_manifest.json是核心逻辑52的manifest文件56-1。而且,uiframe.html是UI框架54,app_manifest.json是UI框架54的manifest文件56-2。
图8示出应用列表的示例。在图中,“base”表示核心逻辑52的manifest文件56-1,“app”表示UI框架54的manifest文件56-2。在manifest文件56-2中,“type”表示应用的类型。应用的类型如下。
特别地,应用包括四种类型。
STD:预安装的应用
OT:预安装的应用(STD)的快捷方式
EXT:可添加的应用(类型I应用)
CS:可添加的应用(类型II应用)
预安装的应用是图3中示出的对应于复印、扫描、传真等的应用。而且,OT、EXT、CS的每个应用分配有特别的陪伴(companion)应用。每个陪伴应用负责对应的功能。与STD应用类似,每个陪伴应用也包括核心逻辑52。因为manifest文件56包括应用的类型,所以每个应用的内部实现可与另一应用的内部实现区分。
而且,manifest文件56-2中的“isLaunchable”是如上所述的确定图标是否显示在主画面上的属性信息。在图中,显示如下。
isLaunchable=true
这表示复印按钮被显示。
因为应用分离为核心逻辑52和UI框架54,所以应用列表描述二者之间的对应关系。
对于每个应用创建manifest文件56。因此,期望设置表示每个应用的类型的标识符和类型中的唯一标识符。例如,复印应用的manifest文件具有如下的标识符。
type:STD
ID:copy
在这些标识符中,type是表示类型(预安装的应用)的标识符,ID是唯一标识符。
另外,manifest文件56包括作为静态信息的、激活时需要的信息和渲染主画面需要的信息。激活时需要的信息是关于核心逻辑52的存储位置信息和关于UI框架54的存储位置信息。架构31参照关于核心逻辑52的存储位置信息加载核心逻辑52。而且,如果需要,核心逻辑52参照关于UI框架54的存储位置信息加载UI框架54。
渲染主画面需要的信息是关于图标按钮的存储位置信息和按钮的显示顺序。
manifest文件56由设备服务层中的应用管理组件参照,并且用于创建应用列表(稍后描述)。
图9示出应用的实现结构的模式。
图9中的(a)部分符合核心逻辑52存在但UI框架54不存在的模式。这不对应于预安装的应用,而是例如对应于陪伴应用。图9中的(d)部分是对应于图9中的(a)部分的应用列表。
图9中的(b)部分符合核心逻辑52和UI框架54通过一一对应关系存在的模式。图9中的(e)部分对应于图9中的(b)部分的应用列表。
相比之下,图9中的(c)部分示出核心逻辑52和多个UI框架54存在并且多个UI框架54共享公共核心逻辑52的情况。UI框架54确定当按钮显示在主画面上时的显示风格。即使当显示多个按钮时,通过共享公共核心逻辑52,提高了实现效率。而且,如果多个应用共享公共核心逻辑52,则提高了维护性能。共享公共核心逻辑52的UI框架54的数量不受限制。图9中的(f)部分是对应于图9中的(c)部分的应用列表。manifest文件56-1的特定示例例如如下。
manifest文件56-2的特定示例例如如下。
另一示例如下。
在图9中的(b)部分和(c)部分中,通过设置UI框架54的manifest文件56-2的isLaunchable属性值,确定按钮是否实际显示在主画面上。例如,在图9中的(c)部分中,在存在共享公共核心逻辑52的第一UI框架54和第二UI框架54的情况下,第一UI框架54的manifest文件是isLaunchable=true,第二UI框架54的manifest文件是isLaunchable=false,前一个显示为按钮,而后一个不显示。
作为应用的执行结构,核心逻辑52与UI框架54分离。因此,可仅改变UI框架54而不改变核心逻辑52,并且可容易地定制应用的画面上的显示风格。
图10A至10C均示出定制画面上的显示风格的示例。
图10A是初始显示风格。关注ID卡复印的应用,它的UI框架54是idcopy/uiframe.html,它的manifest文件56-2是idcopy/app_manifest.json。
图10B示出定制显示风格的情况。在ID复印的应用中,用idcopy_for_xxx/uiframe.html和idcopy_for_xxx/app_manifest.json替换UI框架54和manifest文件56-2用于新的显示风格。当然,也可仅替换manifest文件56-2。
相比之下,图10C示出不改变显示风格而改变应用逻辑的情况。在这种情况下,所有核心逻辑52、UI框架54、manifest文件56用新组件替换。即,copy以下指示的部分被copy_for_xxx替换。
图11A和11B均示出包括架构31的特定应用的实现结构的模式。
图11A示出实现复印应用和ID复印应用的情况下模式的示例。复印应用分离为核心逻辑52和UI框架54。核心逻辑52与架构31通信。UI框架54仅与核心逻辑52通信。类似地,ID复印应用分离为核心逻辑52和UI框架54。核心逻辑52与架构31通信。UI框架54仅与核心逻辑52通信。
图11B是除了复印应用和ID复印应用以外实现打印应用的情况下的另一示例。复印应用和ID复印应用分离为公共核心逻辑52和相应的UI框架54。即,复印应用和ID复印应用通过公共核心逻辑52与架构31通信。而且,打印应用具有核心逻辑52,但不具有UI框架54。图11A和11B包括图9中示出的所有模式。
在现有技术的应用实现结构中,不同于上述结构,核心逻辑52和UI框架54彼此不分离,并且处理和画面渲染混合,导致复杂的结构。而且,不存在应用的公共编程接口,每个应用自由地发布(publish)编程接口并且自由地参照编程接口。相比之下,在此示例性实施方式中,架构31定义应用编程接口,每个应用的核心逻辑52必须用应用编程接口实现。因此,此示例性实施方式中的应用编程接口的方向不同于现有技术中的应用编程接口的方向。而且,除了架构31与每个应用之间的通信以外,应用之间的通信编程接口也可由架构31提供的编程接口发布功能和应用编程接口参照功能实现。
理论上,多个应用可共享公共UI框架54并且可分别具有个体核心逻辑52。然而,在这种情况下,从架构31的观点看,结构可能复杂,因此在此示例性实施方式中不特别描述这种情况。当然,不一定意图排除这种模式。
应用的生命周期管理
图12示出当架构31对于每个应用执行生命周期管理时的基本构成。在这种情况下,架构31是应用的执行环境。
架构31和各种应用50以及引导器60和启动器应用64存在于表示层中。而且,应用管理组件62存在于设备服务层中。
引导器60是执行整个表示层的激活/停用管理的组件。架构31被引导器60初始化和激活。
应用管理组件62基于各种应用50的manifest文件56向架构31提供应用列表。
启动器应用64是利用由架构31定义的启动器编程接口70实现的应用。启动器应用64是系统中存在的仅一个应用,当所有应用50的初始化完成时被从架构31调用。
各种应用50包括复印应用、ID复印应用、传真应用等,并且包括如上所述的核心逻辑52。各种应用50的核心逻辑52均利用由架构31定义的应用编程接口72实现。
具体地,每个应用50中实现的应用编程接口如下。
·初始化处理(initialize)
·终止化处理(finalize)
·窗口推出处理(windowPushedOut)
·窗口准备露出处理(windowPrepareExposed)
·窗口准备终结处理(windowPrepareTerminated)
利用这些事件的句柄实现每个应用50。
架构31包括JavaScript组件(称为通信控制组件),用于使能方法的发布/调用,以及各种应用50的核心逻辑52之间的事件的发布/购买/发出(issue)。方法可定义为取得期望参数并且返回期望返回值。以应用为基础独立地管理发布的方法。调用方法的应用可通过回调检查方法的处理完成。而且,可由每个应用利用期望数据定义事件。以应用为基础独立地管理发布的事件。更具体地,通信控制组件使能由核心逻辑52发布和调用方法,使能事件的定义和发出以及监听器的注册,通过“ON”(开)发布方法,并且通过“OFF”(关)停止方法的发布。发布的方法能够通过调用而被调用。例如,第一应用设置特定应用编程接口“开”用于向架构31发布,第二应用针对第一应用的发布的编程接口向架构31作出“调用”。
图13是架构31对于各种应用中的每个的生命周期管理的顺序图。
当引导器60激活架构31时,架构31从设备服务层中的应用管理组件62请求应用列表,并且从应用管理组件62获取应用列表。
当架构31获取了应用列表时,架构31根据列表以应用为基础创建基本框架,并且加载包括启动器应用64的各种应用50(加载阶段)。即,架构31读取每个应用的核心逻辑52。具体地,架构31参照manifest文件56中定义的关于核心逻辑52的存储位置信息加载核心逻辑52。基本框架是用于执行每个应用的核心逻辑52的框架,并且此框架不被显示。期望地确定各个应用的核心逻辑的加载顺序并且顺序不特别受限。在所有应用已完成应用编程接口实现的注册的时间点,此阶段进入下一阶段。
要注意,每个应用的方法和事件在应用编程接口实现的注册处理之前发布。
接下来,架构31通过应用编程接口向每个应用给出初始化指令(初始化阶段)。具体地,架构31向每个应用发出“app”事件和“initialize”方法。在响应于初始化指令的处理完成后所有应用回调的时间点,架构31通知引导器60关于初始化处理的完成,并且阶段进入下一阶段。也可期望地确定各应用的初始化顺序。在此初始化处理中,每个应用执行从设备服务层的数据获取。
然后,引导器60向架构31给出用于由应用提供功能的启动指令,并且架构31响应于给出的指令向启动器应用64给出启动指令(启动阶段)。启动器应用64获取关于在设备服务层中管理的初始激活应用的信息,并且显示初始画面。在响应于启动指令的处理完成后启动器应用64回调的时间点,此阶段完成。
在系统停用时,架构31向每个应用的核心逻辑52给出终止化的指令。而且,架构31删除每个应用的基本框架。
在加载阶段中,各个应用的核心逻辑52被读取,而无需特别受限的顺序。因此,即使当添加应用时,也不必改变加载阶段。而且,在初始化阶段中,所有应用被初始化。因此,确保调用其他应用,并且不需要个体同步。如上所述,因为不再要求应用之间的同步并且仅加载大小相对小的核心逻辑52,所以系统激活时间和应用激活时间缩短。
如果每个应用独立地发布应用编程接口,则激活、初始化前处理、初始化处理、初始化后处理、停止、暂时停止等对每个应用不同。在每个应用的初始化级别产生差异,并且应用能够被调用的时间也变化。特别地,在调用主题应用之前要求检查该应用是否能够被调用。控制可能复杂。相比之下,在示例性实施方式中,初始化时间可如上所述缩短,并且初始化之后主画面的激活时间可缩短。
图14示出根据现有技术和示例性实施方式的从系统激活到主画面显示的时间。
在现有技术中,应用初始化时间要求纯初始化时间加上同步,主画面的激活时间类似地要求纯激活时间加上同步。相比之下,在此示例性实施方式中,可缩短纯初始化时间,并且可消除同步。而且,对于主页激活时间,可提供类似的效果。在现有技术中,如果应用彼此依赖,则需要调整以防止产生死锁。然而,在此示例性实施方式中,不存在这种依赖,因此不再需要死锁调整。
进一步详细描述启动器应用64。
启动器应用64是各种应用50中的一个,是在由架构31进行的加载和初始化处理结束后用作向各种应用50中的每个给出控制的控制给出目标的应用。启动器应用64执行启动阶段并且利用启动器编程接口实现。例如,渲染主画面的应用可用作启动器应用64。启动器应用64的manifest文件56具有写入其中的如下属性信息。
isStarter=true
换言之,架构31将具有isStarter的属性值为真的manifest文件56的应用识别为启动器应用64。
图15示出启动器应用(启动器app)64和另一应用(例如,应用1)的操作。
在初始化阶段,架构31如以上描述的向每个应用给出初始化指令。启动器app响应于初始化指令执行初始化处理,并且在架构31中注册启动和SCS的方法。在这种情况下,SCS表示意外画面显示(Show Contingency Screen)。
在初始化阶段结束之后,架构31向启动器app 64给出启动指令。启动器app 64响应于此指令显示启动画面,或者更具体地,主画面。而且,应用1在主画面上显示它自己的图标。
同时,如果在应用1中出现特定错误,例如,在复印应用的情况下,如果当再次显示复印画面时用户改变并且作为检查许可的结果用户不具有许可,或者如果因为复印数量超过允许数量导致复印服务无法继续,则复印应用可偶尔请求架构31显示意外画面。此时,从应用1向架构31发送意外画面显示(showcontignecyscreen)的请求。
如果架构31接收到这种请求,则架构31指示由启动器app 64注册的SCS显示意外画面(showcontignecyscreen)。启动器app 64响应于此指令显示意外画面。
如上所述,启动器app 64具有在加载处理和初始化处理结束后显示启动画面(主画面)并且如果在应用中的任一个中出现错误则显示意外画面的功能。
在现有技术中,用于显示意外画面的意外显示应用固定,并且意外显示应用的识别信息和激活信息以分布式方式存在于每个应用的编码中。相比之下,在此示例性实施方式中,启动器app 64显示启动画面和意外画面。其他应用不需要保持表示执行意外显示的应用的识别信息,而是仅需要向架构31作出显示意外画面的请求。不需要识别意外显示应用的位置或状态。
如上所述,在此示例性实施方式中,应用分离为核心逻辑52和UI框架54,由架构31定义的应用编程接口在核心逻辑52中实现,核心逻辑52通过架构31与另一应用的核心逻辑52通信,UI框架54仅与应用的核心逻辑52通信。相应地,每个应用具有由架构31定义的公共构成,并且可配置为与另一应用具有低联系度。应用可容易地添加或删除。
此示例性实施方式中的“组件”表示可逻辑上分离的软件的组件。组件可由一个或多个处理器执行。在此示例性实施方式中,使用JavaScript。然而,当然,可使用其他编程语言中的任一种。
而且,本发明不限于上述示例性实施方式,可按各种方式变形。下面描述变形。
变形
在示例性实施方式中,图像形成装置12的控制器(处理器)22执行表示层30中的架构31和各种应用50。然而,由于如图2所示表示层30和设备服务层32彼此分离,所以用于控制图像形成装置12的不同于图像形成装置12的个体装置(例如诸如智能电话或平板终端的移动终端中的处理器)可执行表示层30中的架构31和各种程序50。而且,图1中的操作单元26期望安装在移动终端上。在这种情况下,移动终端和图像形成装置12可统称图像形成装置或图像形成系统。
出于例示和描述的目的提供了对本发明的示例性实施方式的前述描述。不意图穷举或将本发明限制为所公开的精确形式。明显地,很多修改和变形将对于本领域技术人员而言显而易见。选择和描述实施方式以便最优地解释本发明的原理和其实践应用,从而使本领域的其他技术人员能够理解本发明的各种实施方式、以及适合于所预期的特定使用的各种修改。意图由所附权利要求和它们的等同物定义本发明的范围。
Claims (2)
1.一种图像形成装置,所述图像形成装置包括:
架构上的多个应用,每个所述应用分离为负责基本处理的核心逻辑部分和负责渲染处理的用户接口框架部分并且进行操作;以及
控制器,所述控制器执行所述应用和所述架构,
其中,每个所述应用的所述核心逻辑部分利用由所述架构定义的应用编程接口实现,并且
其中,所述多个应用包括特定应用,所述特定应用的所述核心逻辑部分利用启动器编程接口实现,显示启动画面,并且在另一应用中出现错误的情况下显示意外画面。
2.根据权利要求1所述的图像形成装置,
其中,如果出现所述错误,则所述另一应用的所述核心逻辑部分向所述架构发送意外画面显示请求,并且
其中,所述架构响应于所述意外画面显示请求指示所述特定应用显示所述意外画面。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2016-187282 | 2016-09-26 | ||
JP2016187282A JP6876231B2 (ja) | 2016-09-26 | 2016-09-26 | 画像形成装置及びプログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107870746A CN107870746A (zh) | 2018-04-03 |
CN107870746B true CN107870746B (zh) | 2022-07-19 |
Family
ID=61685925
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710242924.6A Active CN107870746B (zh) | 2016-09-26 | 2017-04-14 | 图像形成装置 |
Country Status (3)
Country | Link |
---|---|
US (1) | US10044895B2 (zh) |
JP (1) | JP6876231B2 (zh) |
CN (1) | CN107870746B (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2012018530A (ja) * | 2010-07-07 | 2012-01-26 | Ricoh Co Ltd | 画像形成装置及びアプリケーション管理プログラム |
CN102630380A (zh) * | 2009-12-02 | 2012-08-08 | 佳能株式会社 | 图像处理设备及其控制方法 |
JP2014241494A (ja) * | 2013-06-11 | 2014-12-25 | 株式会社リコー | 情報処理システム、情報処理方法およびプログラム |
JP2016024524A (ja) * | 2014-07-17 | 2016-02-08 | セイコーエプソン株式会社 | 情報処理装置、情報処理装置を制御する方法、コンピュータープログラム、情報処理システム |
Family Cites Families (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5848246A (en) * | 1996-07-01 | 1998-12-08 | Sun Microsystems, Inc. | Object-oriented system, method and article of manufacture for a client-server session manager in an interprise computing framework system |
US7100195B1 (en) * | 1999-07-30 | 2006-08-29 | Accenture Llp | Managing user information on an e-commerce system |
JP2005250974A (ja) * | 2004-03-05 | 2005-09-15 | Ricoh Co Ltd | ソフトウェア開発装置、ソフトウェア開発方法、ソフトウェア開発用プログラム、ソフトウェア、記録媒体、画像形成装置、及び電気機器 |
JP5019817B2 (ja) * | 2005-08-15 | 2012-09-05 | 株式会社リコー | 情報処理装置、情報処理方法、情報処理プログラム、及び記録媒体 |
JP4335206B2 (ja) * | 2005-12-22 | 2009-09-30 | シャープ株式会社 | 複合機制御システム、複合機制御システムの制御方法、プログラム、および記録媒体 |
EP2042989A1 (en) * | 2006-02-03 | 2009-04-01 | Research In Motion Limited | System and method for extending a component-based application platform with custom services |
US9021375B2 (en) * | 2006-08-15 | 2015-04-28 | International Business Machines Corporation | Notification of state transition of an out-of-focus application |
JP2011011427A (ja) * | 2009-07-01 | 2011-01-20 | Oki Data Corp | 電子装置及び電子システム |
JP5451372B2 (ja) * | 2009-12-28 | 2014-03-26 | キヤノン株式会社 | 情報処理システム、情報処理方法、及びプログラム |
JP5510147B2 (ja) | 2010-07-22 | 2014-06-04 | 株式会社リコー | 画像形成装置及び画面制御方法 |
JP2012248102A (ja) | 2011-05-30 | 2012-12-13 | Ricoh Co Ltd | 画像形成装置、表示制御方法及び表示制御プログラム |
US9002929B2 (en) * | 2012-03-02 | 2015-04-07 | Fisher Controls International Llc | Methods and apparatus to reduce memory requirements for process control system software applications |
JP6326795B2 (ja) * | 2013-12-04 | 2018-05-23 | 株式会社リコー | 情報処理システム、情報処理装置、情報処理方法及びプログラム |
JP2016009461A (ja) * | 2014-06-26 | 2016-01-18 | 株式会社Nttドコモ | 端末装置及びプログラム |
-
2016
- 2016-09-26 JP JP2016187282A patent/JP6876231B2/ja active Active
-
2017
- 2017-03-06 US US15/450,440 patent/US10044895B2/en active Active
- 2017-04-14 CN CN201710242924.6A patent/CN107870746B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102630380A (zh) * | 2009-12-02 | 2012-08-08 | 佳能株式会社 | 图像处理设备及其控制方法 |
JP2012018530A (ja) * | 2010-07-07 | 2012-01-26 | Ricoh Co Ltd | 画像形成装置及びアプリケーション管理プログラム |
JP2014241494A (ja) * | 2013-06-11 | 2014-12-25 | 株式会社リコー | 情報処理システム、情報処理方法およびプログラム |
JP2016024524A (ja) * | 2014-07-17 | 2016-02-08 | セイコーエプソン株式会社 | 情報処理装置、情報処理装置を制御する方法、コンピュータープログラム、情報処理システム |
Also Published As
Publication number | Publication date |
---|---|
CN107870746A (zh) | 2018-04-03 |
US10044895B2 (en) | 2018-08-07 |
JP6876231B2 (ja) | 2021-05-26 |
US20180091688A1 (en) | 2018-03-29 |
JP2018055182A (ja) | 2018-04-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107870747B (zh) | 图像形成装置 | |
CN107872598B (zh) | 图像形成设备 | |
CN107870864B (zh) | 图像形成装置 | |
JP6911405B2 (ja) | 画像処理装置及びプログラム | |
CN107870745B (zh) | 图像形成装置 | |
JP6876234B2 (ja) | 画像形成装置及びプログラム | |
CN107872599B (zh) | 图像形成设备 | |
CN107870796B (zh) | 图像形成设备 | |
CN107870746B (zh) | 图像形成装置 | |
CN107870767B (zh) | 图像形成装置 | |
CN107870778B (zh) | 图像形成设备 | |
CN107870797B (zh) | 图像处理装置 | |
JP6868185B2 (ja) | 画像処理装置及びプログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
CB02 | Change of applicant information |
Address after: Tokyo, Japan Applicant after: Fuji film business innovation Co.,Ltd. Address before: Tokyo, Japan Applicant before: Fuji Xerox Co.,Ltd. |
|
CB02 | Change of applicant information | ||
GR01 | Patent grant | ||
GR01 | Patent grant |