EP2510674A1 - Verfahren zur bereitstellung einer zielanwendung - Google Patents

Verfahren zur bereitstellung einer zielanwendung

Info

Publication number
EP2510674A1
EP2510674A1 EP10805620A EP10805620A EP2510674A1 EP 2510674 A1 EP2510674 A1 EP 2510674A1 EP 10805620 A EP10805620 A EP 10805620A EP 10805620 A EP10805620 A EP 10805620A EP 2510674 A1 EP2510674 A1 EP 2510674A1
Authority
EP
European Patent Office
Prior art keywords
application
target application
terminal
interceptor
deployment
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.)
Withdrawn
Application number
EP10805620A
Other languages
English (en)
French (fr)
Inventor
Alexandre Macris
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Spawnapps
Original Assignee
Spawnapps
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Spawnapps filed Critical Spawnapps
Publication of EP2510674A1 publication Critical patent/EP2510674A1/de
Withdrawn legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/40Support for services or applications
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/40Transformation of program code
    • G06F8/54Link editing before load time
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements

Definitions

  • the present invention relates to a method for providing a target application on a terminal.
  • Native applications are known, running through the operating system of the terminal, forming a link between such applications and the hardware elements of the terminal, such an operating system being for example Windows Vista or Linux.
  • a method of providing such applications may include a step of downloading the native application from a server followed by a step of installing this application on the user's terminal. During this step, the various files constituting the application are notably stored in the memory of the terminal and a path to the application is created.
  • Internet applications are also known that run using an internet browser, such as Internet Explorer, Mozilla Firefox or Google Chrome, for example, and a virtual machine, such as Java, Javascript or Flash, which allows the user to access the Internet. execution of the internet application while the elements constituting it are not stored on the terminal. The elements constituting this one are stored largely on an external server to which the terminal can access by means of an Internet network. To use this application, the terminal must always communicate with the server storing these elements.
  • the method of providing such an application therefore generally comprises a step of accessing the server, accompanied by user authentication.
  • the invention makes it possible to provide an alternative to the above-mentioned internet applications, by providing a user-friendly method of provisioning, and this method being applicable for all types of already existing applications, without substantially modifying them. .
  • the subject of the invention is a method for making a target application available on a terminal, comprising the following steps: transfer from a server to the terminal of a deployment application, this application being an internet application,
  • the deployment application allows the execution of all the steps for the use of the target application without any user intervention, including its transfer. This therefore decreases the number of operations to be performed by the user, or "number of clicks" to obtain access to the target application and therefore increases its interest for the target application.
  • the target application on the terminal between two uses is not always justified, the provision of it being very simple.
  • This can therefore be stored on the terminal in the memory location of the terminal corresponding to the cache of the browser, and, therefore, be deleted automatically after a predetermined period of time.
  • This makes it possible to minimize data transfers during the reuse of the target application, but it is not necessary to perform a specific uninstall operation when the user no longer wishes to use the target application.
  • the target application does not unnecessarily occupy the storage space in the terminal.
  • the deployment application is an internet application, ie an application that runs through a virtual machine, such as Java, and an internet browser, which allows the user to obtain the application- target without having to download and install previously another application forming the deployment application.
  • a deployment application formed by an internet application is also compatible with all operating systems and all browsers and can therefore be universally used. It is also not necessary to update such an application which is updated automatically online.
  • the method according to the invention also makes it possible to make available to the user, in a non-binding manner, numerous already existing target applications without needing to modify them in a significant way, or even without having to modify them at all. beforehand.
  • the tools to make these available are indeed independent of the target application chosen by the user. These tools also make available many target applications.
  • the method may also include one or more of the features of the following list:
  • the method comprises a step of execution of an interceptor, triggered by the deployment application, this interceptor being able to intercept at least one request from the target application, the execution of the intercepting interceptor preference in turn that of the target application.
  • an interceptor forming a computer program separate from the deployment application, which performs the interceptions in the target application, such an interceptor can then be separate from an internet application and be a native application directly interact with the operating system of the terminal, making it possible to intercepts requests more easily using known techniques
  • the method comprises a step of transferring the interceptor from a server, triggered by the deployment application.
  • the interceptor is thus transferred to the terminal without the user needing to perform an additional action,
  • the method comprises a preliminary step of actuation by a user of the terminal of a link located on a web page,
  • the transfer of at least one module of the target application and / or the interceptor is preceded by a verification step performed by the deployment application with the terminal and / or a server.
  • the verification step may comprise a step of verifying the access rights of the terminal to the module of the target application.
  • the user can have access to the target application only if he has registered with an authority and / or paid for access rights.
  • the deployment application allows free access only to a portion of the target application, to enable the user to test the target application.
  • This verification step may also include a step of comparing the module to be downloaded and the module possibly stored on the terminal or a comparison of a file name with the file names transferred to the terminal.
  • the method comprises at least one step of redirecting the or at least one request to an operating system of the terminal, and / or to the deployment application. These redirection operations are notably performed by the interceptor.
  • the method comprises a step of intercepting a query for displaying the target application and modifying this request so that the target application is displayed in a web page, in particular the web page comprising the link.
  • the modified query is redirected to the operating system. This avoids opening multiple windows to get the user to get the target application. The user thus benefits from a better comfort of use of the target application. It also makes it possible to integrate the target application with a particular environment, adapted to the user and his needs, for example to improve the aesthetics of the environment presented to the user or to disseminate to the user offers related to his needs while using the target application,
  • the method comprises a step of intercepting a request to open a file that does not belong to the base module of the target application and a step of transferring the file from a server to the terminal, this transfer being controlled by the deployment application.
  • Some files are transferred to the terminal only when they are requested by the user. For example, if the latter uses a word processor, the drawing module may not be transferred to the terminal during an initial transfer step and then transferred to the terminal only if this module is requested by the user. This optimizes the storage space reserved for the application on the terminal and minimizes the transfer time required for the user to start using the target application,
  • the method may also comprise a step in which the action of the target application is controlled according to a link activated on a web page. This allows communication of the target application with its environment.
  • the invention also relates to a computer program for providing a target application on a terminal, the program comprising software instructions for:
  • the invention also relates to a device comprising a memory storing the computer program according to the invention and an interceptor capable of intercepting at least one request from the target application.
  • Such a device is for example a terminal, a server or a set of servers.
  • the target application is also stored in the device memory.
  • the invention also relates to a system comprising a terminal connected by a network to at least one server or set of servers forming a device according to the invention.
  • FIG. 1 represents a system allowing the execution of a method according to one embodiment of the invention
  • FIG. 2 is a diagram representing an initialization of a method according to one embodiment of the invention
  • FIGS. 3A and 3B are diagrams of the respective structure of a deployment application and an interceptor used for the implementation of the method according to one embodiment of the invention
  • FIG. 1 shows a system 10 comprising a terminal 12 and a plurality of servers 14, 16 connected to the terminal via a network 18, such as the Internet network.
  • the terminal 12 and the servers 14, 16 each comprise data storage means, respectively 19, 20, 22, such as a memory, as well as execution means 24, 25a, 25b, respectively, such as a processor , such means allowing the execution of applications on these devices and the storage of certain data in the respective data storage means of each of these devices.
  • Each of the elements of the system also comprises communication means 26, 28a, 28b, with the other elements of the system allowing the various elements to communicate with each other through the network.
  • the terminal 12 also includes input-output means 30 for interaction with a user.
  • Such means include a keyboard, or a mouse, to allow the user to control the terminal and a screen or a speaker to allow the latter to receive information from the terminal.
  • the server 14 includes in its storage means a deployment application, which will be detailed later in the description and the server 16 comprises in its storage means an interceptor, also described in more detail below, and the target application which the user wants to access.
  • the target application Before being placed in the memory 22 of the server 16, the target application is manually set to be adapted to execution in the context of the method.
  • the size of the window is for example set.
  • the parameter file is then saved in the server memory 16 along with the other files relating to the target application. Files can be saved in compressed form.
  • a first step 40 the user 32, having access to the terminal 12, controls the latter to display a web page to access the target application. It performs this step by clicking on a link from a search engine displayed using the browser, for example, or by entering the address of the web page using the input-output means 30 in the browser. browser interface. This web page is displayed using a browser run by the terminal processor.
  • the browser NA of the terminal 12 requires the loading of the web page from a first server, for example the server 14, during a step 42.
  • This communication with the server is performed using communication means 26, 28a of the terminal and the server and the network 18
  • the server 14 responds to the request of the browser NA by providing the requested web page, stored in its storage means 20, in a step 44.
  • the page is displayed on the screen of the terminal 12, when a step 46, thanks to the browser that allows to present it to the user.
  • Such a web page generally has a link to control the transfer and execution of a target application, for example a word processing application, a game or an application of any other type.
  • a target application for example a word processing application, a game or an application of any other type.
  • the browser NA sends a message to the server 14 to indicate that the user 32 has activated the link during a step 50 and the server returns in a step 52 an authorization message to the user 32, that the terminal returns to the user, during a step 54.
  • the steps 50-54 allow to obtain confirmation from the user proving that he wishes to obtain the target application and avoid any unnecessary operation of setting available to the target application.
  • a link to signify his agreement for example by clicking a button in the browser interface, during a step 56.
  • the deployment application AD is an internet application that executes using a virtual machine, for example Java, such a virtual machine being installed on the terminal 12, and the browser of the terminal 12, when the step 62. It runs specifically in the context of the browser. In the embodiment described, this application is a Java applet.
  • FIG. 3a The structure of the application according to this embodiment of the invention is shown schematically in FIG. 3a.
  • Such an application comprises an interface unit with the user 80, able to present an interface to the user and to transform the user's actions on the interface into commands.
  • This interface is embedded in a web page, since the application runs using an internet browser. It also comprises a communication unit 82 with another application, an IN interceptor, which will be detailed later, and a communication unit 84 with the browser and the operating system, formed by a Java application of known type.
  • the AD deployment application Once the AD deployment application has been transferred to the terminal 12, the latter sends, without user intervention, a message to a second server 16 for controlling the transfer from this server 16 of the target application AC and d. an interceptor IN to the terminal, during a step 64 performed via the browser and communication means 26.
  • This step is performed in particular by the transfer management means 88 of the deployment application AD, which indicate which files of the target application to transfer from the server 16 and the communication unit 84 of the deployment application to the browser for transmitting the request built by the transfer manager to the browser.
  • the server 16 transfers both the interceptor IN and a base module of the target application forming a portion of the target application to the terminal during a step 66.
  • the basic module of the target application includes, for example, the layout functions of the text in a word processor, but not those relating to the drawings or tables.
  • the target application AC and the interceptor IN are native applications, which run directly through the operating system of the terminal 12, through which different applications such as the browser thereof runs.
  • the operating system records, in a step 68, the target application AC and the interceptor IN at the location corresponding to the cache of the browser in the storage means of the terminal, in a conventional manner.
  • Such an interceptor comprises a unit 90 for communication with the deployment application AD, as well as a target application executor 92, which sets up the execution context of such an application, namely the data enabling the application execution of the target application. It also includes an injector 94 for connecting in known manner the interceptor to the target application. Finally, the interceptor also includes controllers 96a, 96b, 96c, for connecting a function called by the target application to an action to be executed by the interceptor. In this example, the interceptor comprises three controllers: that of the windows 96a, that of the access to the files of the target application 96b and that of the system events 96c.
  • communication units 82, 90 operate using known interprocessor channels such as sockets, the deployment application and the interceptor not running in the same context.
  • the interceptor IN during a step 70, using the communication unit 82.
  • the interceptor IN creates the execution environment of the target application during a step 72.
  • the interceptor controls the execution thereof with the aid of the unit 92 and is injected in the context of the target application during a step 74, by known techniques and at the same time. using the injector 94.
  • the target application is now ready for use by the user.
  • FIG. 4 more particularly represents the exchanges between the various elements of the terminal 12, during the opening of the target application.
  • the target application AC sends a request to the operating system SE of the terminal 12.
  • This request is a request to the operating system for it to open a display window for the user interface of the application on the terminal screen.
  • the interceptor Due to the injection of the interceptor into the application, it intercepts the request to the operating system and modifies it in a step 102, in accordance with the requirements of the controller 96b.
  • the interceptor is notably programmed to add details on the location of the display window of the target application, and indicate that it must be in the web page displayed by the browser and on which the user has activated the link.
  • the interceptor IN then transmits the modified request of the target application AC to the operating system during a step 104.
  • the operating system SE with the help of the browser then proceeds during a step 106 to the display of the AC target application window.
  • window size parameter has been previously set manually makes it possible to increase the comfort of the user, since the window of the target application can thus be adapted to the size of the display space allocated on the web page.
  • a prior configuration of the target application is however not mandatory.
  • the window is then displayed on the web page, which makes it possible to link the target application to the website distributing it and to display elements, for example commercial elements, that the user can view at the same time as it uses the AC target application.
  • the target application AC sends a request to the operating system SE for opening the file of the target application AC, this file is not registered in the storage means of the terminal.
  • the interceptor IN intercepts the request and checks whether this file has already been transferred to the terminal, with the aid of these controllers, programmed for this purpose, during a step 111. Then, if this file has not already been transferred to the terminal, it transmits the request in a step 112 to the deployment application AD using the respective communication units 82, 90. Otherwise , the request is directly transferred to the operating system. This case is not shown in FIG.
  • the deployment application AD then verifies that the requested file is available on the server 16, using the cache management means 86 having a list of available files and in cooperation with the server. Navigator.
  • a module including the missing file is performed by the AD deployment application using the transfer management means 88 determining which files are to be transferred from the server and from the communication unit with the browser 82.
  • the server 16 returns to the terminal 12, including the browser; the additional module missing.
  • Such a module corresponds for example to an additional function of the target application.
  • the browser NA then saves the module in the browser cache, in a step 120 and sends a message to the AD deployment application to indicate that the download is complete.
  • the deployment application then communicates with the interceptor to indicate that the file is available, during a step 123. This communication is also carried out through the communication unit. communication 82.
  • the interceptor IN then transmits the request to open the file to the operating system during a step 124.
  • the operating system then opens the file requested by the application- target and responds to the target application AC, during a step 126. This target application can then respond to the request of the user and continue its normal operation.
  • the user can activate a link from the Web page made available by the browser and displaying the target application. For example, he can click on a cross icon on this Web page.
  • the AD deployment application is informed that the link has been activated by the user, in particular through the user interface unit 80.
  • the AD deployment application then sends a message to the interceptor IN to inform that the link has been activated by the user, using the communication unit with the interceptor 84 and in a step 130.
  • a step 132 when the target application sends an event query request, periodic request sent to the operating system in a known manner, the interceptor IN intercepts this request. Since the closing signal of the target application AC has been received from the deployment application AD, the interceptor IN then responds directly to the target application by the command "close the application", in accordance with what is prescribed by one of its directors.
  • Such a method therefore makes it possible to use the target application in a simple manner for the user, without having to modify the code relating to the target application.
  • the network can also be a local network and not the Internet.
  • the deployment application may be different from what has been described. For example, it may not understand the cache management means.
  • it may include additional modules of what has been described, for example a module allowing the redirection of the user to a website on which he must identify when he intends to use a particular function of the application target or a module to verify that the access rights of the user are still in force in the same case. It may also include means for managing the updates of the application able to compare the files stored in the browser cache and the files on the server and to check whether it is necessary to transfer files to the terminal. updated with the files it already has.
  • the interceptor is not limited to what has been described. It may include additional controllers when it is necessary to intercept other functions of the application than those already described.
  • the interceptor is able to modify other functions than those described or only a function among those described or among others.
  • the interceptor can intercept all requests from the target application by retransmitting certain functions to the operating system without modifying them or intercepting only certain requests.
  • the deployment application and / or the interceptor and / or the target application is not stored in the browser cache.
  • the interceptor may not be transferred to the terminal at each initialization of the target application, but the deployment application may first check whether it is stored on the terminal.
  • interceptor and the deployment application are not necessarily transmitted during the same step. However, the entire target application can be transmitted in one and the same step.
  • Steps 50 to 54 are also optional, although they are preferential to guarantee the agreement of the user.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Information Transfer Between Computers (AREA)
  • Stored Programmes (AREA)
EP10805620A 2009-12-07 2010-12-07 Verfahren zur bereitstellung einer zielanwendung Withdrawn EP2510674A1 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FR0958713A FR2953611A1 (fr) 2009-12-07 2009-12-07 Procede de mise a disposition d'une application-cible
PCT/FR2010/052629 WO2011070284A1 (fr) 2009-12-07 2010-12-07 Procede de mise a disposition d'une application-cible

Publications (1)

Publication Number Publication Date
EP2510674A1 true EP2510674A1 (de) 2012-10-17

Family

ID=42101578

Family Applications (1)

Application Number Title Priority Date Filing Date
EP10805620A Withdrawn EP2510674A1 (de) 2009-12-07 2010-12-07 Verfahren zur bereitstellung einer zielanwendung

Country Status (5)

Country Link
US (1) US20120324057A1 (de)
EP (1) EP2510674A1 (de)
KR (1) KR20120125247A (de)
FR (1) FR2953611A1 (de)
WO (1) WO2011070284A1 (de)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8695060B2 (en) 2011-10-10 2014-04-08 Openpeak Inc. System and method for creating secure applications
US9176751B2 (en) * 2012-04-04 2015-11-03 Xerox Corporation Tools and methods for customizing multi-function devices
US20150113506A1 (en) * 2013-10-18 2015-04-23 Openpeak Inc. Method and system for adaptive loading of application
US9232013B1 (en) 2014-09-05 2016-01-05 Openpeak Inc. Method and system for enabling data usage accounting
US8938547B1 (en) 2014-09-05 2015-01-20 Openpeak Inc. Method and system for data usage accounting in a computing device
US20160071040A1 (en) 2014-09-05 2016-03-10 Openpeak Inc. Method and system for enabling data usage accounting through a relay
US9100390B1 (en) 2014-09-05 2015-08-04 Openpeak Inc. Method and system for enrolling and authenticating computing devices for data usage accounting
US9350818B2 (en) 2014-09-05 2016-05-24 Openpeak Inc. Method and system for enabling data usage accounting for unreliable transport communication
US9232078B1 (en) 2015-03-16 2016-01-05 Openpeak Inc. Method and system for data usage accounting across multiple communication networks
CN110727588B (zh) * 2019-09-29 2023-12-12 浙江大搜车软件技术有限公司 网络应用的测试方法、系统、计算机设备和可读存储介质

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7523415B1 (en) * 1999-06-24 2009-04-21 Porter Swain W Exclusive use display surface areas and persistently visible display of contents including advertisements
US7111060B2 (en) * 2000-03-14 2006-09-19 Aep Networks, Inc. Apparatus and accompanying methods for providing, through a centralized server site, a secure, cost-effective, web-enabled, integrated virtual office environment remotely accessible through a network-connected web browser
US7451196B1 (en) * 2000-12-15 2008-11-11 Stream Theory, Inc. Method and system for executing a software application in a virtual environment
US20030140089A1 (en) * 2001-11-01 2003-07-24 Hines Kenneth J. Inter-applet communication using an applet agent
CA2639010C (en) * 2002-09-26 2010-12-21 Video Furnace, Inc. Digital content delivery and viewing system and method
US7908339B2 (en) * 2004-06-03 2011-03-15 Maxsp Corporation Transaction based virtual file system optimized for high-latency network connections
US8151323B2 (en) * 2006-04-12 2012-04-03 Citrix Systems, Inc. Systems and methods for providing levels of access and action control via an SSL VPN appliance
US20070260702A1 (en) * 2006-05-03 2007-11-08 University Of Washington Web browser architecture for virtual machine access
WO2010030703A1 (en) * 2008-09-09 2010-03-18 Kace Networks, Inc. Deployment and management of virtual containers

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See references of WO2011070284A1 *

Also Published As

Publication number Publication date
KR20120125247A (ko) 2012-11-14
US20120324057A1 (en) 2012-12-20
FR2953611A1 (fr) 2011-06-10
WO2011070284A1 (fr) 2011-06-16

Similar Documents

Publication Publication Date Title
EP2510674A1 (de) Verfahren zur bereitstellung einer zielanwendung
US11637837B2 (en) Secure, non-disruptive firmware updating
US11829186B2 (en) System and methods for integration of an application runtime environment into a user computing environment
US8448161B2 (en) Application tracking for application execution environment
US8935687B2 (en) Incrementally updating a software appliance
US7930273B1 (en) Version management for application execution environment
US6006034A (en) Systems and methods for automatic application version upgrading and maintenance
KR101130367B1 (ko) 소프트웨어 분산 서비스를 위한 시스템 및 방법
US8375381B1 (en) Management user interface for application execution environment
US9178759B2 (en) Configuring and customizing a specific-purpose client having a windows-based embedded image using extensible markup language (XML) configuration
US9092243B2 (en) Managing a software appliance
US8020158B2 (en) Installing and executing shared applications in shared folders
US20200045138A1 (en) On demand resources
US20080320466A1 (en) Automatic software installation and cleanup
US20090222808A1 (en) Methods and systems for providing a software appliance based on a role
US20160357538A1 (en) On demand resources
KR20060114618A (ko) 소프트웨어 업데이트를 관리하고 통신하기 위한 시스템 및방법
US20150193215A1 (en) Common installer server
US9852077B2 (en) Preserving user changes to a shared layered resource
US7813964B2 (en) Click and run software purchasing
US10019191B2 (en) System and method for protecting contents of shared layer resources
US9665283B2 (en) System and method of creating layered resources
CN107667343B (zh) 用于加载按需加载资源的系统和方法
FR3089325A1 (fr) Procédé et dispositif de gestion de configurations logicielles d’équipements d’un aéronef
WO2010026195A1 (fr) Procede et dispositif pour la creation et la modification de pages internet in situ

Legal Events

Date Code Title Description
PUAI Public reference made under article 153(3) epc to a published international application that has entered the european phase

Free format text: ORIGINAL CODE: 0009012

17P Request for examination filed

Effective date: 20120705

AK Designated contracting states

Kind code of ref document: A1

Designated state(s): AL AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HR HU IE IS IT LI LT LU LV MC MK MT NL NO PL PT RO RS SE SI SK SM TR

DAX Request for extension of the european patent (deleted)
STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: THE APPLICATION IS DEEMED TO BE WITHDRAWN

18D Application deemed to be withdrawn

Effective date: 20150701