US20080168474A1 - Method and System for Interworking Plurality of Applications - Google Patents

Method and System for Interworking Plurality of Applications Download PDF

Info

Publication number
US20080168474A1
US20080168474A1 US11/813,295 US81329506A US2008168474A1 US 20080168474 A1 US20080168474 A1 US 20080168474A1 US 81329506 A US81329506 A US 81329506A US 2008168474 A1 US2008168474 A1 US 2008168474A1
Authority
US
United States
Prior art keywords
application
information
data
function
menu
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.)
Granted
Application number
US11/813,295
Other versions
US8695017B2 (en
Inventor
Yun Ho Jeon
Eun Ah Kim
Su Jin Kim
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.)
Intel Corp
Original Assignee
Individual
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 Individual filed Critical Individual
Assigned to WIDERTHAN CO., LTD. reassignment WIDERTHAN CO., LTD. ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: JEON, YUN HO, KIM, EUN AH, KIM, SU JIN
Assigned to REALNETWORKS ASIA PACIFIC CO., LTD. reassignment REALNETWORKS ASIA PACIFIC CO., LTD. CHANGE OF NAME (SEE DOCUMENT FOR DETAILS). Assignors: WIDERTHAN CO., LTD.
Publication of US20080168474A1 publication Critical patent/US20080168474A1/en
Assigned to REALNETWORKS, INC. reassignment REALNETWORKS, INC. ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: REALNETWORKS ASIA PACIFIC CO., LTD.
Assigned to INTEL CORPORATION reassignment INTEL CORPORATION ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: REALNETWORKS, INC.
Application granted granted Critical
Priority to US14/248,236 priority Critical patent/US9122377B2/en
Publication of US8695017B2 publication Critical patent/US8695017B2/en
Expired - Fee Related legal-status Critical Current
Adjusted expiration legal-status Critical

Links

Images

Classifications

    • 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
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • G06F3/0482Interaction with lists of selectable items, e.g. menus
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • G06F3/04842Selection of displayed objects or displayed text elements
    • 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
    • G06F9/54Interprogram communication
    • G06F9/543User-generated data transfer, e.g. clipboards, dynamic data exchange [DDE], object linking and embedding [OLE]
    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07DHANDLING OF COINS OR VALUABLE PAPERS, e.g. TESTING, SORTING BY DENOMINATIONS, COUNTING, DISPENSING, CHANGING OR DEPOSITING
    • G07D7/00Testing specially adapted to determine the identity or genuineness of valuable papers or for segregating those which are unacceptable, e.g. banknotes that are alien to a currency
    • G07D7/06Testing specially adapted to determine the identity or genuineness of valuable papers or for segregating those which are unacceptable, e.g. banknotes that are alien to a currency using wave or particle radiation
    • G07D7/12Visible light, infrared or ultraviolet radiation
    • G07D7/121Apparatus characterised by sensor details
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/48Indexing scheme relating to G06F9/48
    • G06F2209/482Application

Definitions

  • the present invention relates to a method and system for interoperation of a plurality of applications by a dynamically generated menu in an application utilized in a portable device.
  • a browser for the wireless Internet e.g., Wireless Application Protocol (WAP) browser
  • an application embodying a particular function application program
  • the application is divided into two types of applications. One is an application which is installed in a portable device during manufacturing thereof (hereinafter, referred to as “embedded application”). The other is an application which is downloaded and installed by a method such as the Internet while the application is being used (hereinafter, referred to as “download application”).
  • the application may be manufactured to call another application as necessary.
  • a phone book application installed in a portable device is active, a user selects one telephone number and presses a menu key. Then, a menu capable of transmitting a short messaging service (SMS) to the selected telephone number may be provided to the user.
  • SMS short messaging service
  • GUI Graphic User Interface
  • the selected data is copied to a clipboard area of an operating system. After this, when pasting to another application, data of the clipboard is inserted into the other application. Accordingly, the user does not need to input data separately.
  • the stored data may be read by another application.
  • an extension of a file name may be utilized as a representative method for determining a data type which can be processed in another application.
  • a shell which is a program operating with a GUI at all times is utilized.
  • an application is installed in currently widely used Microsoft Windows and the application is registered as a handler with respect to a data file having a particular extension
  • a menu is displayed when a user selects the file having the particular extension via a file search and presses a right button of a mouse.
  • the handler of the data file is included in the menu. The user selects one file in the menu and a handler application processes the selected file.
  • the methods as described above have been limitedly utilized in a mobile phone. This is because the operating system of the mobile phone has not generally provided a corresponding function for applications. Also, a user interface of the mobile phone is mainly for tasks and has almost no shell functions which can generally browse or process data files.
  • the present invention is conceived to solve the aforementioned problems in the conventional art.
  • the present invention provides an application interoperation method and system, which can dynamically generate a menu of an application according to a type of data that a user is currently using and an application installed in a terminal device, in a portable device having a limited input/output device but capable of utilizing various applications, thereby enabling interoperation of at least two applications. This is to improve efficiency of the terminal device and the application.
  • the present invention also provides an application interoperation method and system which enables one application to interoperate with another application when transmitting/receiving data, and also adopts a method of not hard-coding an association method in a logic of an application. This is to enable an association between download applications or an association between an embedded application and a download application. Also, this is to help a user to more easily and effectively utilize a portable device.
  • the present invention also provides an application interoperation method and system which can dynamically generate a menu of a currently active application, with respect to a portable device having almost no function corresponding to a shell or having difficulty of switching between an application and a shell.
  • the present invention also provides an application interoperation method and system which is not limited to a particular function, and can process, generate and refined data by including both input data and output data types.
  • the present invention also provides an application interoperation method and system which can reduce user manipulation by directly executing another application, while not terminating one application and also can increase efficient utilization of an application.
  • an application interoperation method including the steps of: maintaining a handler table including data type information, function information and calling information which are associated with each application installed in a portable device; receiving input information on a menu key of the portable device, from a user, while a first application is active; extracting, in response to the receipt of the input information, at least one function information associated with data type information of data, which is being processed or requested by the first application, from the handler table; dynamically generating a menu including the extracted at least one function information to provide the user with the generated menu; receiving selection information on particular function information among the provided menu, from the user; and identifying calling information associated with the selected particular function information by referring to the handler table and executing a second application on the basis of the identified calling information.
  • the executing of the second application further includes the steps of: generating a predetermined command on the basis of an application identifier or an option identifier included in the identified calling information; and executing a second application corresponding to the application identifier included in the command, and the method further includes the step of the second application recognizing the command and performing a function according to the selected particular function information.
  • an application interoperation system including: a table maintenance unit maintaining a handler table including data type information, function information and calling information which are associated with each application installed in a portable device; an input information receiving unit receiving input information on a menu key of the portable device, from a user, while a first application is active; a function information extraction unit extracting at least one function information associated with data type information of data, which is being processed or requested by the first application, from the handler table, in response to the receipt of the input information; a menu providing unit dynamically generating a menu including the extracted at least one function information and providing the user with the generated menu; a selection information receiving unit receiving selection information on particular function information among the provided menu, from the user; and an application execution unit identifying calling information associated with the selected particular function information by referring to the handler table and executing a second application on the basis of the identified calling information.
  • FIG. 1 is a flowchart illustrating an application interoperation method according to an embodiment of the present invention
  • FIG. 2 is a diagram illustrating an example of a handler table according to an embodiment of the present invention
  • FIG. 3 is a diagram illustrating interoperation of a plurality of applications processing a particular type of data according to an embodiment of the present invention
  • FIG. 4 is a diagram illustrating interoperation of a plurality of applications generating a particular type of data according to an embodiment of the present invention
  • FIG. 5 is a diagram illustrating a handler table for explaining interoperation of a plurality of applications filtering a particular type of data according to an embodiment of the present invention.
  • FIG. 6 is a block diagram illustrating a configuration of an application interoperation system according to an embodiment of the present invention.
  • the present invention enables data to be transmitted/received between one application and another application. Namely, the present invention enables interoperation therebetween. Also, the present invention adopts a method of not hard-coding an association method in a logic of an application. This is to enable an association between download applications or an association between an embedded application and a download application.
  • each application may perform at least one function of: 1) processing a particular type of data (data processing function), 2) generating a particular type of data (data generating function), and 3) filtering a particular type of data (data filtering function). Also, an application may not perform any function described above.
  • the data processing function includes a function of storing data in a certain area of a terminal or transmitting data to a predetermined server via a network.
  • the data processing function may include a function of storing image data as a background screen of a terminal or a function of transmitting image data to a predetermined web server.
  • an application interoperation method which can process generated data in one application by using another application, while a user utilizes the one application.
  • the data generating function includes a function of generating new data or enabling a user to select a portion of existing data.
  • the data generating function may include a function of taking a picture and generating an image file, or a function of recording a voice and generating a voice file, or a function of enabling a user to select one or two telephone numbers from a phone book.
  • an application interoperation method which can generate necessary data in one application by using another application, while a user utilizes the one application.
  • the data filtering function includes a function of receiving a particular type of data and subsequently outputting the same or a different type of data.
  • the data filtering function may include a function of receiving photo data and adding a frame to the framework of the photo data.
  • an application interoperation method which can refined data being utilized in one application by using another application, while a user utilizes the one application.
  • FIG. 1 is a flowchart illustrating an application interoperation method according to an embodiment of the present invention.
  • the application interoperation method according to the present embodiment may be performed in a predetermined application interoperation system.
  • an operating system of a portable device and a plurality of applications may interoperate in the application interoperation system.
  • an application interoperation system referred to as a subject performing each step may designate an application or an operation for the each step.
  • an application may transmit its data type to an operating system, directly receive a handler table value corresponding to the data type, and generate the dynamic menu.
  • the aforementioned function may be included in the operating system.
  • step S 101 the application interoperation system maintains a predetermined handler table.
  • FIG. 2 illustrates an example of the handler table.
  • the handler table includes data type information 201 , function information 202 and calling information 203 which are associated with each application installed in a portable device.
  • the data type information 201 includes information on input and output types of data which can be processed or generated in the each application.
  • the data type information 201 may include information, such as “image/jpeg”, “text/plain”, “phonebook/shortkey”, etc., as illustrated in FIG. 2 .
  • the function information 202 includes information on a function that the each application may perform with respect to a particular data type.
  • the function information 202 may include information, such as “post a picture to cyworld”, “write a memo in cyworld”, “visit a homepage”, etc., as illustrated in FIG. 2 .
  • the calling information 203 includes information on a command for calling the each application.
  • the command may include an application identifier, an option identifier, target data or a file name, and the like.
  • “cyworld” is designated as an application identifier capable of identifying an application, “-p” as an option identifier capable of identifying a particular function from a plurality of functions of a “cyworld” application, and “%1” as a location of information such as a file name or target data which the “cyworld” application has to process.
  • the each application may register the data type information 201 , the function information 202 and the calling information 203 in the handler table using an application programming interface (API) of an operating system installed in the portable device.
  • API application programming interface
  • an application management module of the operating system installed in the portable device may read the data type information 201 , the function information 202 and the calling information 203 included in a descriptor file associated with the each application and, and register the same in the handler table.
  • the operating system deletes an item associated with the uninstalled application, from the handler table.
  • MIME Multipurpose Internet Mail Extensions
  • step S 102 while a first application is active, the application interoperation system receives input information on a menu key of the portable device, from a user.
  • step S 103 in response to the receipt of the input information, the application interoperation system extracts at least one function information associated with data type information of data which is being processed or requested by the first application, from the handler table.
  • step S 103 may be a step of extracting a list including the at least one function information from the handler table.
  • step S 104 the application interoperation system dynamically generates a menu including the extracted at least one function information.
  • step S 105 the application interoperation system provides the user with the dynamically generated menu.
  • step S 104 may further include a step of dynamically adding the extracted list to a basic menu associated with the first application. Also, step S 104 may be a step of arranging the extracted at least one function information according to a frequency of use and a most recently used order, and providing the user with the generated menu.
  • step S 106 the application interoperation system receives selection information on particular function information in the provided menu, from the user.
  • step S 107 the application interoperation system identifies calling information associated with the selected particular function information by referring to the handler table.
  • step S 108 the application interoperation system generates a predetermined command on the basis of the application identifier or the option identifier which is included in the identified calling information.
  • the application identifier functions to identify an application.
  • the option identifier functions to identify each function, when one application performs a plurality of functions.
  • step S 109 the application interoperation system executes a second application corresponding to the application identifier included in the command.
  • the application interoperation system may limit an application interoperation function according to detailed properties of data or whether paid contents whose distribution is limited exists. For this, to determine whether a particular function is active, the application interoperation system may specify a predetermined function and a method of calling the function in the handler table. In this instance, the function determines an appropriateness of an execution function before executing an actual command. In this case, if it takes a long time to call the function, a menu to be displayed to a user may be delayed also. Accordingly, the function may be embodied in a dynamic link library (DLL) separate from the present execution file of an application.
  • DLL dynamic link library
  • step S 110 the second application recognizes the command and performs a function according to the selected particular function information.
  • the application interoperation system immediately terminates the second application in step S 111 , and activates the first application in step S 112 .
  • a menu of an application may be dynamically generated according to the application installed in a terminal device and a type of data that a user is currently using.
  • interoperation of at least two applications is possible. Namely, it is possible to increase utilization of the terminal device and the application.
  • FIG. 3 is a diagram illustrating interoperation of a plurality of applications processing a particular type of data according to an embodiment of the present invention.
  • the above-described first application is a “camera” application which is an embedded application having a function of taking a picture or selecting a picture in an album.
  • the above-described second application is a “cyworld” application which is a download application having a function of transmitting a JPEG image file or a text message to its blog or homepage.
  • the “cyworld” application registers input/output data type information, function information and calling information in a handler table of an operating system, in a point in time when the “cyworld” application is registered in a portable device (S 301 ).
  • an application management module of the operating system installed in the portable device may read data type information, function information and calling information included in a descriptor file associated with the “cyworld” application, and register the same in the handler table, as described above.
  • the “camera” application When a user takes a picture and presses a menu key, the “camera” application requests the operating system for a list of functions capable of processing “image/jpeg” which is a data type included in the “camera” application (S 302 ). The operating system transmits a list including items 320 to the “camera” application (S 303 ). Also, the “camera” application dynamically adds the list to a menu and provides the user with the dynamically generated menu.
  • the “camera” application When the user selects “post a picture to cyworld” in the dynamically generated menu, the “camera” application stores the picture in a temporary file. Also, to transmit a name of the temporary file to the “cyworld” application, the “camera” application replaces the name of the temporary file with a portion in which “%1” is specified in call information of the handler table, and generates a command below,
  • the “cyworld” application is executed by using the generated command. Also, the “cyworld” application recognizes the option identifier “-p” and the name of the temporary file, executes a function of transmitting the taken picture to a predetermined server without a user's input. The “cyworld” application is terminated immediately after finishing the function (S 305 ). In this instance, the “cyworld” application may enable a user to input additional information such as a comment on the picture. When the “cyworld” application is terminated, the operating system activates the “camera” application again.
  • the application interoperation system may store image data, which is being processed by the first application, in a temporary file, and generate a command including an application identifier, an option identifier, and a name of the temporary file. Also, when performing the function according to the selected particular function information, the second application may recognize the option identifier and the name of the temporary file and transmit the image data to a predetermined server.
  • the WAP browser When a user finds interesting news while watching news via a WAP browser (first application) installed in his/her portable device and wants to upload the interesting news to his/her blog, the user presses a menu key in the WAP browser.
  • the WAP browser receives a list of applications capable of processing data in the type of “text/plain” from an operating system, dynamically generates a menu and provides the user with the dynamically generated menu.
  • the WAP browser converts the memo of a current page into text and transmits the same to the “cyworld” application (second application). In this case, a command may be generated below.
  • the memo stored in a memory buffer does not need to be stored in a separate file and may be immediately transmitted. Accordingly, the “cyworld” application enables a user to modify the stored text data and transmits the same to the user's blog.
  • the application interoperation system may convert data, which is being processed by the first application, into text data, and generate a command including an application identifier, an option identifier and text data. Also, the second application may recognize the option identifier and the text image, and transmit the text data to a predetermined server.
  • a user B transmits an SMS to a user A, and the user A presses a menu key with regard to reading the SMS via his/her portable device.
  • the SMS includes a text that the user B has added a new text in his/her homepage.
  • SMS Short Streaming Service
  • first application receives a list of applications capable of processing data in the type of “text/plain” and “phonebook/shortkey”, from an operating system, collects the same into one menu and provides the user A with the menu.
  • the “SMS” application may generate a command for executing the “cyworld” application (second application) by using currently provided SMS information.
  • the command is generated below.
  • the “cyworld” application accesses a predetermined server according to the command, identifies a blog page of honggildong (a name of the user B transmitting the SMS), and displays the text.
  • the application interoperation system may identify caller information associated with data which is being processed by the first application, and generate a command including an application identifier, an option identifier and caller information. Also, the second application may recognize the option identifier and the caller information and provide a webpage associated with the caller information.
  • FIG. 4 is a diagram illustrating interoperation of a plurality of applications generating a particular type of data according to an embodiment of the present invention.
  • second application When generating data according to the present embodiment, another application (second application) is executed in a situation that an application (first application) to use data is initially being executed, and data is obtained. This is different from the data processing according to the above-described embodiment.
  • the “cyworld” application When a user initially activates a “cyworld” application (first application) and wants to post a picture while using the “cyworld” application, the user presses a menu key and selects a function, “post a picture”.
  • the “cyworld” application requests an operating system for a list of functions capable of generating “image/jpeg” data (S 401 ).
  • the operating system transmits the list including items 410 , to the “cyworld” application (S 402 ).
  • the “cyworld” application dynamically generates a menu from the list and provides the user with the dynamically generated menu. If the user selects “take a picture” in the dynamically generated menu, the “cyworld” application may generate a command for executing a “camera” application (second application). The command may be generated below.
  • the “camera” application takes a picture and stores the same in a file having the designated name, “tmp_file” (S 403 ). Also, when the “camera” application is terminated, the “cyworld” application is reactivated. The “cyworld” application reads the picture from “tmp_file” and posts the same to a predetermined web server.
  • the application interoperation system may designate a name of a temporary file to store data requested by the first application and generate a command including an application identifier, an option identifier and the name of the temporary file. Also, the second application may recognize the option identifier and the name of the temporary file, generate the requested data, and store the same as the name of the temporary file.
  • the application interoperation system terminates the second application and activates the first application.
  • the first application may read the generated data from the temporary file and upload the same to a predetermined server.
  • FIG. 5 is a diagram illustrating a handler table for explaining interoperation of a plurality of application filtering a particular type of data according to an embodiment of the present invention.
  • an application simultaneously includes an input data type and an output data type as its data type information 501 .
  • a data filtering function may be specified.
  • data type information 501 of a “photoframe” application for decorating a frame and a “resize” application for changing a size, function information and calling information are registered in the handler table.
  • the album application When a user selects one picture in an album application (first application) while viewing a picture and presses a menu key, the album application receives a list of functions whose input data type and output data type are in the type of “image/jpeg”, from an operating system. Also, the album application dynamically generates a menu including items of “frame effect” and “size change”, and provides the user with the dynamically generated menu.
  • the album application identifies a file name of the currently selected picture and designates the file name as argument (%1). Also, the album application generates a command for generating a name of a temporary file and designating the name as argument (%2). According to the command, a “photoframe” application (second application) is executed.
  • the “photoframe” application reads the picture designated as %1, adds a frame thereto, and stores the results in the file designated as %2. After this, the “photoframe” application is terminated.
  • the album application is activated again and provides the user with the filtered file as above.
  • the user presses a menu key and selects a function, “print”.
  • a predetermined print application (second application) is executed, uploads a newly generated file to a predetermined server, and selects a print option.
  • the print application is terminated.
  • a method of executing the print application will be the same as in FIG. 3 . Accordingly, repeating description related thereto will be omitted herein.
  • the “resize” application In the reactivated album application, if the user presses a menu key and selects “size change”, the “resize” application (second application) is executed in the same method as the method of executing the “photoframe” application. The “resize” application changes the size of the picture into the size designated by the user and stores the changed size. After this, the “resize” application is terminated.
  • the album application is reactivated, selects the filtered picture and provides the user with the filtered picture.
  • a predetermined MMS transmission application (second application) is executed.
  • the MMS transmission application transmits the filtered picture to a friend and is terminated.
  • the application interoperation system may identify a file name of data being processed by the first application and designate a name of another temporary file. Also, the application interoperation system may generate a command including an application identifier, the identified file name and the name of the temporary file. Also, the second application may recognize the identified file name and the name of the temporary file, read the identified file name, filter the data, and store the filtered data as the name of the temporary file.
  • the application interoperation system terminates the second application and activates the first application. Also, the first application may read and display the filtered data from the temporary file.
  • an application interoperation method and system which is not limited to a particular function, and can include input data and output data types, thereby processing, generating and filtering data.
  • the embodiments of the present invention include computer readable media including program instructions to implement various operations embodied by a computer.
  • the media may also include, alone or in combination with the program instructions, data files, data structures, tables, and the like.
  • the media and program instructions may be those specially designed and constructed for the purposes of the present invention, or they may be of the kind well known and available to those having skill in the computer software arts.
  • Examples of computer-readable media include magnetic media such as hard disks, floppy disks, and magnetic tape; optical media such as CD ROM disks; magneto-optical media such as floptical disks; and hardware devices that are specially configured to store and perform program instructions, such as read-only memory devices (ROM) and random access memory (RAM).
  • the media may also be a transmission medium such as optical or metallic lines, wave guides, etc. including a carrier wave transmitting signals specifying the program instructions, data structures, etc.
  • Examples of program instructions include both machine code, such as produced by a compiler, and files containing higher level code that may be executed by the computer using an interpreter.
  • FIG. 6 is a block diagram illustrating a configuration of the application interoperation system according to the present embodiment.
  • an application interoperation system 600 includes a table maintenance unit 601 , an input information receiving unit 602 , a function information extraction unit 603 , a menu providing unit 604 , a selection information receiving unit 605 , and an application execution unit 606 .
  • the table maintenance unit 601 maintains a handler table.
  • the handler table includes data type information, function information and calling information which are associated with each application installed in a portable device.
  • An example of the handler table is illustrated in FIG. 2 . This has been described above, thus repeated description related thereto will be omitted herein.
  • the input information receiving unit 602 receives input information on a menu key of the portable device, from a user 610 , while a first application is active.
  • the function information extraction unit 603 extracts at least one function information associated with data type information of data, which is being processed or requested by the first application, from the handler table, in response to the receipt of the input information.
  • the function information extraction unit 603 may extract a list including the at least one function information, from the handler table.
  • the menu providing unit 604 dynamically generates a menu including the extracted at least one function information and provides the user 610 with the generated menu.
  • the menu providing unit 604 may generate the menu by dynamically adding the extracted list to a basic menu associated with the first application.
  • the menu providing unit 604 may generate the menu by arranging the extracted at least one function information according to a frequency of use and a most recently used order.
  • the selection information receiving unit 605 receives selection information on particular function information in the provided menu, from the user 610 .
  • the application execution unit 606 identifies calling information associated with the selected particular function information by referring to the handler table and executes a second application on the basis of the identified calling information.
  • the application execution unit 606 may generate a predetermined command on the basis of an application identifier or an option identifier included in the identified calling information, and may execute a second application corresponding to the application identifier included in the command.
  • the application identifier functions to identify an application.
  • the option identifier functions to identify each function when one application performs a plurality of functions. An exemplary type and a utilization method of the application identifier and the option identifier have been described in detail with reference to FIGS. 3 to 5 .
  • the second application recognizes the command and performs a function according to the selected particular function information.
  • the application interoperation system 600 terminates the second application and activates the first application.
  • an application interoperation system may dynamically generate a menu of an application according to the application installed in a terminal device and a type of data that a user is currently using. Through this configuration, interoperation of at least two applications is possible. Namely, it is possible to increase utilization of the terminal device and the application.
  • an application interoperation method and system which can dynamically generate a menu of an application according to a type of data that a user is currently using and an application installed in a terminal device, in a portable device having a limited input/output device but capable of utilizing various applications. Accordingly, interoperation of at least two applications is possible. Also, it is possible to improve efficiency of the terminal device and the application.
  • an application interoperation method and system which enables one application to interoperate with another application when transmitting/receiving data, and also adopts a method of not hard-coding an association method in a logic of an application. Accordingly, it is possible to enable an association between download applications or an association between an embedded application and a download application. Also, it is possible to help a user to more easily and effectively utilize a portable device.
  • an application interoperation method and system which can dynamically generate a menu of a currently active application, with respect to a portable device having almost no function corresponding to a shell or having difficulty of switching between an application and a shell.
  • an application interoperation method and system which is not limited to a particular function, and can process, generate and filter data by including both input data and output data types.
  • an application interoperation method and system which can reduce an operation by directly executing another application, while not terminating one application. Accordingly, it is possible to increase efficient utilization of an application.

Abstract

An application interoperation method including the steps of: maintaining a handler table including data type information, function information and calling information which are associated with each application installed in a portable device; receiving input information on a menu key of the portable device, from a user, while a first application is active; extracting, in response to the receipt of the input information, at least one function information associated with data type information of data, which is being processed or requested by the first application, from the handler table; dynamically generating a menu including the extracted at least one function information to provide the user with the generated menu; receiving selection information on particular function information among the provided menu, from the user; and identifying calling information associated with the selected particular function information by referring to the handler table and executing a second application on the basis of the identified calling information.

Description

    TECHNICAL FIELD
  • The present invention relates to a method and system for interoperation of a plurality of applications by a dynamically generated menu in an application utilized in a portable device.
  • BACKGROUND ART
  • A browser for the wireless Internet (e.g., Wireless Application Protocol (WAP) browser), or an application embodying a particular function (application program) is generally utilized to use various functions in a portable device. The application is divided into two types of applications. One is an application which is installed in a portable device during manufacturing thereof (hereinafter, referred to as “embedded application”). The other is an application which is downloaded and installed by a method such as the Internet while the application is being used (hereinafter, referred to as “download application”).
  • In the case of the embedded application, it is possible to know what type of application is installed, at a point in time when the application is installed in a portable device. Accordingly, the application may be manufactured to call another application as necessary. As an example, while a phone book application installed in a portable device is active, a user selects one telephone number and presses a menu key. Then, a menu capable of transmitting a short messaging service (SMS) to the selected telephone number may be provided to the user.
  • However, new services for mobile phones are being continuously released. Also, many services utilize a download application. In the case of a download application which is downloaded and installed after a mobile phone has been released, it is not possible to forecast interoperability of an application in the released mobile phone. Accordingly, interoperation between applications as described above is impossible.
  • A Graphic User Interface (GUI) operating system of a desktop computer, such as a personal computer, has provided various methods enabling an efficient interoperation between various applications. (1) A copy & paste method via a clipboard, (2) a share method via a file, and (3) a method of using a shell are representative examples.
  • In the case of the method (1), if a user selects and copies a portion of data or selects and copies all data while one application is active, the selected data is copied to a clipboard area of an operating system. After this, when pasting to another application, data of the clipboard is inserted into the other application. Accordingly, the user does not need to input data separately.
  • In the case of the method (2), if data is stored in a file system in one application, the stored data may be read by another application. In this instance, an extension of a file name may be utilized as a representative method for determining a data type which can be processed in another application.
  • In the case of the method (3), a shell which is a program operating with a GUI at all times is utilized. As an example, if an application is installed in currently widely used Microsoft Windows and the application is registered as a handler with respect to a data file having a particular extension, a menu is displayed when a user selects the file having the particular extension via a file search and presses a right button of a mouse. In this instance, the handler of the data file is included in the menu. The user selects one file in the menu and a handler application processes the selected file.
  • The methods as described above have been limitedly utilized in a mobile phone. This is because the operating system of the mobile phone has not generally provided a corresponding function for applications. Also, a user interface of the mobile phone is mainly for tasks and has almost no shell functions which can generally browse or process data files.
  • DISCLOSURE OF INVENTION Technical Goals
  • The present invention is conceived to solve the aforementioned problems in the conventional art. The present invention provides an application interoperation method and system, which can dynamically generate a menu of an application according to a type of data that a user is currently using and an application installed in a terminal device, in a portable device having a limited input/output device but capable of utilizing various applications, thereby enabling interoperation of at least two applications. This is to improve efficiency of the terminal device and the application.
  • The present invention also provides an application interoperation method and system which enables one application to interoperate with another application when transmitting/receiving data, and also adopts a method of not hard-coding an association method in a logic of an application. This is to enable an association between download applications or an association between an embedded application and a download application. Also, this is to help a user to more easily and effectively utilize a portable device.
  • The present invention also provides an application interoperation method and system which can dynamically generate a menu of a currently active application, with respect to a portable device having almost no function corresponding to a shell or having difficulty of switching between an application and a shell.
  • The present invention also provides an application interoperation method and system which is not limited to a particular function, and can process, generate and refined data by including both input data and output data types.
  • The present invention also provides an application interoperation method and system which can reduce user manipulation by directly executing another application, while not terminating one application and also can increase efficient utilization of an application.
  • Technical Solutions
  • To achieve the above objectives and solve the aforementioned problems in the conventional art, according to an aspect of the present invention, there is provided an application interoperation method, including the steps of: maintaining a handler table including data type information, function information and calling information which are associated with each application installed in a portable device; receiving input information on a menu key of the portable device, from a user, while a first application is active; extracting, in response to the receipt of the input information, at least one function information associated with data type information of data, which is being processed or requested by the first application, from the handler table; dynamically generating a menu including the extracted at least one function information to provide the user with the generated menu; receiving selection information on particular function information among the provided menu, from the user; and identifying calling information associated with the selected particular function information by referring to the handler table and executing a second application on the basis of the identified calling information.
  • According to another aspect of the present invention, the executing of the second application further includes the steps of: generating a predetermined command on the basis of an application identifier or an option identifier included in the identified calling information; and executing a second application corresponding to the application identifier included in the command, and the method further includes the step of the second application recognizing the command and performing a function according to the selected particular function information.
  • According to still another aspect of the present invention, there is provided an application interoperation system including: a table maintenance unit maintaining a handler table including data type information, function information and calling information which are associated with each application installed in a portable device; an input information receiving unit receiving input information on a menu key of the portable device, from a user, while a first application is active; a function information extraction unit extracting at least one function information associated with data type information of data, which is being processed or requested by the first application, from the handler table, in response to the receipt of the input information; a menu providing unit dynamically generating a menu including the extracted at least one function information and providing the user with the generated menu; a selection information receiving unit receiving selection information on particular function information among the provided menu, from the user; and an application execution unit identifying calling information associated with the selected particular function information by referring to the handler table and executing a second application on the basis of the identified calling information.
  • BRIEF DESCRIPTION OF DRAWINGS
  • FIG. 1 is a flowchart illustrating an application interoperation method according to an embodiment of the present invention;
  • FIG. 2 is a diagram illustrating an example of a handler table according to an embodiment of the present invention;
  • FIG. 3 is a diagram illustrating interoperation of a plurality of applications processing a particular type of data according to an embodiment of the present invention;
  • FIG. 4 is a diagram illustrating interoperation of a plurality of applications generating a particular type of data according to an embodiment of the present invention;
  • FIG. 5 is a diagram illustrating a handler table for explaining interoperation of a plurality of applications filtering a particular type of data according to an embodiment of the present invention; and
  • FIG. 6 is a block diagram illustrating a configuration of an application interoperation system according to an embodiment of the present invention.
  • BEST MODE FOR CARRYING OUT THE INVENTION
  • To more easily and effectively utilize a portable device, the present invention enables data to be transmitted/received between one application and another application. Namely, the present invention enables interoperation therebetween. Also, the present invention adopts a method of not hard-coding an association method in a logic of an application. This is to enable an association between download applications or an association between an embedded application and a download application.
  • In the present invention, each application may perform at least one function of: 1) processing a particular type of data (data processing function), 2) generating a particular type of data (data generating function), and 3) filtering a particular type of data (data filtering function). Also, an application may not perform any function described above.
  • 1) The data processing function includes a function of storing data in a certain area of a terminal or transmitting data to a predetermined server via a network. As an example, the data processing function may include a function of storing image data as a background screen of a terminal or a function of transmitting image data to a predetermined web server.
  • In the present invention, an application interoperation method is provided which can process generated data in one application by using another application, while a user utilizes the one application.
  • 2) The data generating function includes a function of generating new data or enabling a user to select a portion of existing data. An a example, the data generating function may include a function of taking a picture and generating an image file, or a function of recording a voice and generating a voice file, or a function of enabling a user to select one or two telephone numbers from a phone book.
  • In the present invention, an application interoperation method is provided, which can generate necessary data in one application by using another application, while a user utilizes the one application.
  • 3) The data filtering function includes a function of receiving a particular type of data and subsequently outputting the same or a different type of data. As an example, the data filtering function may include a function of receiving photo data and adding a frame to the framework of the photo data.
  • In the present invention, an application interoperation method is provided, which can refined data being utilized in one application by using another application, while a user utilizes the one application.
  • FIG. 1 is a flowchart illustrating an application interoperation method according to an embodiment of the present invention.
  • The application interoperation method according to the present embodiment may be performed in a predetermined application interoperation system. In this instance, an operating system of a portable device and a plurality of applications may interoperate in the application interoperation system.
  • Accordingly, hereinafter, an application interoperation system referred to as a subject performing each step may designate an application or an operation for the each step. As an example, to generate a dynamic menu according to interoperation of a plurality of applications, an application may transmit its data type to an operating system, directly receive a handler table value corresponding to the data type, and generate the dynamic menu. However, the aforementioned function may be included in the operating system.
  • In step S101, the application interoperation system maintains a predetermined handler table. FIG. 2 illustrates an example of the handler table. Referring to FIG. 2, the handler table includes data type information 201, function information 202 and calling information 203 which are associated with each application installed in a portable device.
  • The data type information 201 includes information on input and output types of data which can be processed or generated in the each application. As an example, the data type information 201 may include information, such as “image/jpeg”, “text/plain”, “phonebook/shortkey”, etc., as illustrated in FIG. 2.
  • The function information 202 includes information on a function that the each application may perform with respect to a particular data type. As an example, the function information 202 may include information, such as “post a picture to cyworld”, “write a memo in cyworld”, “visit a homepage”, etc., as illustrated in FIG. 2.
  • The calling information 203 includes information on a command for calling the each application. The command may include an application identifier, an option identifier, target data or a file name, and the like.
  • As an example, as illustrated in FIG. 2, in calling information such as “cyworld -p %1”, “cyworld” is designated as an application identifier capable of identifying an application, “-p” as an option identifier capable of identifying a particular function from a plurality of functions of a “cyworld” application, and “%1” as a location of information such as a file name or target data which the “cyworld” application has to process.
  • For the maintaining of the handler table (step S101), when the each application is initially executed in a portable device, the each application may register the data type information 201, the function information 202 and the calling information 203 in the handler table using an application programming interface (API) of an operating system installed in the portable device.
  • Also, an application management module of the operating system installed in the portable device may read the data type information 201, the function information 202 and the calling information 203 included in a descriptor file associated with the each application and, and register the same in the handler table.
  • When the each application is uninstalled from the portable device, the operating system deletes an item associated with the uninstalled application, from the handler table.
  • In the present specification, a Multipurpose Internet Mail Extensions (MIME) type classification method, which is widely used in the Internet, is utilized as the data type information 201 to specify a data type, but this is only for convenience of description. The data type information 201 is not limited thereto and any type of classification method may be utilized in the present invention.
  • In step S102, while a first application is active, the application interoperation system receives input information on a menu key of the portable device, from a user.
  • In step S103, in response to the receipt of the input information, the application interoperation system extracts at least one function information associated with data type information of data which is being processed or requested by the first application, from the handler table.
  • In this case, step S103 may be a step of extracting a list including the at least one function information from the handler table.
  • In step S104, the application interoperation system dynamically generates a menu including the extracted at least one function information. In step S105, the application interoperation system provides the user with the dynamically generated menu.
  • In this case, step S104 may further include a step of dynamically adding the extracted list to a basic menu associated with the first application. Also, step S104 may be a step of arranging the extracted at least one function information according to a frequency of use and a most recently used order, and providing the user with the generated menu.
  • In step S106, the application interoperation system receives selection information on particular function information in the provided menu, from the user. In step S107, the application interoperation system identifies calling information associated with the selected particular function information by referring to the handler table.
  • In step S108, the application interoperation system generates a predetermined command on the basis of the application identifier or the option identifier which is included in the identified calling information. The application identifier functions to identify an application. The option identifier functions to identify each function, when one application performs a plurality of functions.
  • An exemplary type and a utilization method of the application identifier and the option identifier will be described later in detail with reference to FIGS. 3 to 5.
  • In step S109, the application interoperation system executes a second application corresponding to the application identifier included in the command.
  • According to an embodiment of the present invention, although data is identical to data type information registered in the handler table, the application interoperation system may limit an application interoperation function according to detailed properties of data or whether paid contents whose distribution is limited exists. For this, to determine whether a particular function is active, the application interoperation system may specify a predetermined function and a method of calling the function in the handler table. In this instance, the function determines an appropriateness of an execution function before executing an actual command. In this case, if it takes a long time to call the function, a menu to be displayed to a user may be delayed also. Accordingly, the function may be embodied in a dynamic link library (DLL) separate from the present execution file of an application.
  • In step S110, the second application recognizes the command and performs a function according to the selected particular function information. When the second application finishes the function, the application interoperation system immediately terminates the second application in step S111, and activates the first application in step S112.
  • According to the present invention, in steps S101 to S112, in a portable device having a limited input/output device but capable of using various applications, such as a mobile phone, a menu of an application may be dynamically generated according to the application installed in a terminal device and a type of data that a user is currently using. Through this configuration, interoperation of at least two applications is possible. Namely, it is possible to increase utilization of the terminal device and the application.
  • Hereinafter, various embodiments for embodying the above-described application interoperation method according to the present invention will be described.
  • FIG. 3 is a diagram illustrating interoperation of a plurality of applications processing a particular type of data according to an embodiment of the present invention.
  • In FIG. 3, it is assumed that the above-described first application is a “camera” application which is an embedded application having a function of taking a picture or selecting a picture in an album. Also, in FIG. 3, it is assumed that the above-described second application is a “cyworld” application which is a download application having a function of transmitting a JPEG image file or a text message to its blog or homepage.
  • The “cyworld” application registers input/output data type information, function information and calling information in a handler table of an operating system, in a point in time when the “cyworld” application is registered in a portable device (S301).
  • Also, an application management module of the operating system installed in the portable device may read data type information, function information and calling information included in a descriptor file associated with the “cyworld” application, and register the same in the handler table, as described above.
  • When a user takes a picture and presses a menu key, the “camera” application requests the operating system for a list of functions capable of processing “image/jpeg” which is a data type included in the “camera” application (S302). The operating system transmits a list including items 320 to the “camera” application (S303). Also, the “camera” application dynamically adds the list to a menu and provides the user with the dynamically generated menu.
  • When the user selects “post a picture to cyworld” in the dynamically generated menu, the “camera” application stores the picture in a temporary file. Also, to transmit a name of the temporary file to the “cyworld” application, the “camera” application replaces the name of the temporary file with a portion in which “%1” is specified in call information of the handler table, and generates a command below,
  • cyword -p tmp_file_name
  • The “cyworld” application is executed by using the generated command. Also, the “cyworld” application recognizes the option identifier “-p” and the name of the temporary file, executes a function of transmitting the taken picture to a predetermined server without a user's input. The “cyworld” application is terminated immediately after finishing the function (S305). In this instance, the “cyworld” application may enable a user to input additional information such as a comment on the picture. When the “cyworld” application is terminated, the operating system activates the “camera” application again.
  • As described above, according to the present embodiment, when particular function information selected by a user is a function of transmitting image data, the application interoperation system may store image data, which is being processed by the first application, in a temporary file, and generate a command including an application identifier, an option identifier, and a name of the temporary file. Also, when performing the function according to the selected particular function information, the second application may recognize the option identifier and the name of the temporary file and transmit the image data to a predetermined server.
  • Hereinafter, an embodiment which may be embodied when particular function information selected by a user is a function of transmitting text data will be described.
  • When a user finds interesting news while watching news via a WAP browser (first application) installed in his/her portable device and wants to upload the interesting news to his/her blog, the user presses a menu key in the WAP browser. In this case, the WAP browser receives a list of applications capable of processing data in the type of “text/plain” from an operating system, dynamically generates a menu and provides the user with the dynamically generated menu.
  • If the user selects “write a memo in cyworld” in the dynamically generated menu, the WAP browser converts the memo of a current page into text and transmits the same to the “cyworld” application (second application). In this case, a command may be generated below.
  • cyword -t “making a living for years with a nail in its forehead . . . ”
  • In this case, unlike image data, the memo stored in a memory buffer does not need to be stored in a separate file and may be immediately transmitted. Accordingly, the “cyworld” application enables a user to modify the stored text data and transmits the same to the user's blog.
  • As described above, according to the present embodiment, when particular function information selected by a user is a function of transmitting text data, the application interoperation system may convert data, which is being processed by the first application, into text data, and generate a command including an application identifier, an option identifier and text data. Also, the second application may recognize the option identifier and the text image, and transmit the text data to a predetermined server.
  • Hereinafter, an embodiment which may be embodied when particular function information selected by a user is a function of providing a predetermined webpage will be described.
  • A user B transmits an SMS to a user A, and the user A presses a menu key with regard to reading the SMS via his/her portable device. In this instance, the SMS includes a text that the user B has added a new text in his/her homepage.
  • Currently provided data to the user A includes the text of the SMS and a caller (telephone number). Accordingly, an “SMS” application (first application) receives a list of applications capable of processing data in the type of “text/plain” and “phonebook/shortkey”, from an operating system, collects the same into one menu and provides the user A with the menu.
  • When the user A selects “visit a homepage” in the menu, the “SMS” application may generate a command for executing the “cyworld” application (second application) by using currently provided SMS information. The command is generated below.
  • cyworld -h “honggildong/TEL:TYPE=mobile:0115555555”
  • The “cyworld” application accesses a predetermined server according to the command, identifies a blog page of honggildong (a name of the user B transmitting the SMS), and displays the text.
  • As described above, according to the present embodiment, when particular function information selected by a user is a function of providing a predetermined webpage, the application interoperation system may identify caller information associated with data which is being processed by the first application, and generate a command including an application identifier, an option identifier and caller information. Also, the second application may recognize the option identifier and the caller information and provide a webpage associated with the caller information.
  • FIG. 4 is a diagram illustrating interoperation of a plurality of applications generating a particular type of data according to an embodiment of the present invention.
  • When generating data according to the present embodiment, another application (second application) is executed in a situation that an application (first application) to use data is initially being executed, and data is obtained. This is different from the data processing according to the above-described embodiment.
  • When a user initially activates a “cyworld” application (first application) and wants to post a picture while using the “cyworld” application, the user presses a menu key and selects a function, “post a picture”. In this case, the “cyworld” application requests an operating system for a list of functions capable of generating “image/jpeg” data (S401). The operating system transmits the list including items 410, to the “cyworld” application (S402).
  • The “cyworld” application dynamically generates a menu from the list and provides the user with the dynamically generated menu. If the user selects “take a picture” in the dynamically generated menu, the “cyworld” application may generate a command for executing a “camera” application (second application). The command may be generated below.
  • camera -s tmp_file
  • The “camera” application takes a picture and stores the same in a file having the designated name, “tmp_file” (S403). Also, when the “camera” application is terminated, the “cyworld” application is reactivated. The “cyworld” application reads the picture from “tmp_file” and posts the same to a predetermined web server.
  • As described above, according to the present embodiment, when particular function information is a function of uploading data, the application interoperation system may designate a name of a temporary file to store data requested by the first application and generate a command including an application identifier, an option identifier and the name of the temporary file. Also, the second application may recognize the option identifier and the name of the temporary file, generate the requested data, and store the same as the name of the temporary file.
  • In the present embodiment, the application interoperation system terminates the second application and activates the first application. The first application may read the generated data from the temporary file and upload the same to a predetermined server.
  • FIG. 5 is a diagram illustrating a handler table for explaining interoperation of a plurality of application filtering a particular type of data according to an embodiment of the present invention.
  • As illustrated in FIG. 5, in the handler table according to the present embodiment, an application simultaneously includes an input data type and an output data type as its data type information 501. In this instance, a data filtering function may be specified.
  • With the assumptions that a user takes a picture, decorates the picture using a frame and prints the framed picture, and also reduces the size of the picture, and transmits the picture to a friend in an MMS, the present embodiment will be described.
  • As illustrated in FIG. 5, data type information 501 of a “photoframe” application for decorating a frame and a “resize” application for changing a size, function information and calling information are registered in the handler table.
  • When a user selects one picture in an album application (first application) while viewing a picture and presses a menu key, the album application receives a list of functions whose input data type and output data type are in the type of “image/jpeg”, from an operating system. Also, the album application dynamically generates a menu including items of “frame effect” and “size change”, and provides the user with the dynamically generated menu.
  • If the user selects “frame effect”, the album application identifies a file name of the currently selected picture and designates the file name as argument (%1). Also, the album application generates a command for generating a name of a temporary file and designating the name as argument (%2). According to the command, a “photoframe” application (second application) is executed.
  • The “photoframe” application reads the picture designated as %1, adds a frame thereto, and stores the results in the file designated as %2. After this, the “photoframe” application is terminated.
  • The album application is activated again and provides the user with the filtered file as above. In this instance, the user presses a menu key and selects a function, “print”. According to the selection, a predetermined print application (second application) is executed, uploads a newly generated file to a predetermined server, and selects a print option. After this, the print application is terminated. In this instance, a method of executing the print application will be the same as in FIG. 3. Accordingly, repeating description related thereto will be omitted herein.
  • In the reactivated album application, if the user presses a menu key and selects “size change”, the “resize” application (second application) is executed in the same method as the method of executing the “photoframe” application. The “resize” application changes the size of the picture into the size designated by the user and stores the changed size. After this, the “resize” application is terminated. The album application is reactivated, selects the filtered picture and provides the user with the filtered picture.
  • Also, if the user presses a menu key and selects “transmit MMS”, a predetermined MMS transmission application (second application) is executed. The MMS transmission application transmits the filtered picture to a friend and is terminated.
  • As described above, according to the present embodiment, when particular function information selected by a user is a function of filtering data, the application interoperation system may identify a file name of data being processed by the first application and designate a name of another temporary file. Also, the application interoperation system may generate a command including an application identifier, the identified file name and the name of the temporary file. Also, the second application may recognize the identified file name and the name of the temporary file, read the identified file name, filter the data, and store the filtered data as the name of the temporary file.
  • In the present embodiment, the application interoperation system terminates the second application and activates the first application. Also, the first application may read and display the filtered data from the temporary file.
  • According to the present invention, there is provided an application interoperation method and system which is not limited to a particular function, and can include input data and output data types, thereby processing, generating and filtering data.
  • The embodiments of the present invention include computer readable media including program instructions to implement various operations embodied by a computer. The media may also include, alone or in combination with the program instructions, data files, data structures, tables, and the like. The media and program instructions may be those specially designed and constructed for the purposes of the present invention, or they may be of the kind well known and available to those having skill in the computer software arts. Examples of computer-readable media include magnetic media such as hard disks, floppy disks, and magnetic tape; optical media such as CD ROM disks; magneto-optical media such as floptical disks; and hardware devices that are specially configured to store and perform program instructions, such as read-only memory devices (ROM) and random access memory (RAM). The media may also be a transmission medium such as optical or metallic lines, wave guides, etc. including a carrier wave transmitting signals specifying the program instructions, data structures, etc. Examples of program instructions include both machine code, such as produced by a compiler, and files containing higher level code that may be executed by the computer using an interpreter.
  • Hereinafter, an application interoperation system according to another embodiment will be described.
  • FIG. 6 is a block diagram illustrating a configuration of the application interoperation system according to the present embodiment.
  • As illustrated in FIG. 6, an application interoperation system 600 according to the present embodiment includes a table maintenance unit 601, an input information receiving unit 602, a function information extraction unit 603, a menu providing unit 604, a selection information receiving unit 605, and an application execution unit 606.
  • The table maintenance unit 601 maintains a handler table. The handler table includes data type information, function information and calling information which are associated with each application installed in a portable device. An example of the handler table is illustrated in FIG. 2. This has been described above, thus repeated description related thereto will be omitted herein.
  • The input information receiving unit 602 receives input information on a menu key of the portable device, from a user 610, while a first application is active.
  • The function information extraction unit 603 extracts at least one function information associated with data type information of data, which is being processed or requested by the first application, from the handler table, in response to the receipt of the input information. In this case, the function information extraction unit 603 may extract a list including the at least one function information, from the handler table.
  • The menu providing unit 604 dynamically generates a menu including the extracted at least one function information and provides the user 610 with the generated menu. In this case, the menu providing unit 604 may generate the menu by dynamically adding the extracted list to a basic menu associated with the first application. Also, the menu providing unit 604 may generate the menu by arranging the extracted at least one function information according to a frequency of use and a most recently used order.
  • The selection information receiving unit 605 receives selection information on particular function information in the provided menu, from the user 610.
  • The application execution unit 606 identifies calling information associated with the selected particular function information by referring to the handler table and executes a second application on the basis of the identified calling information.
  • In this case, the application execution unit 606 may generate a predetermined command on the basis of an application identifier or an option identifier included in the identified calling information, and may execute a second application corresponding to the application identifier included in the command. The application identifier functions to identify an application. The option identifier functions to identify each function when one application performs a plurality of functions. An exemplary type and a utilization method of the application identifier and the option identifier have been described in detail with reference to FIGS. 3 to 5.
  • The second application recognizes the command and performs a function according to the selected particular function information. When the second application finishes the function, the application interoperation system 600 terminates the second application and activates the first application.
  • As described above, in a portable device having a limited input/output device but capable of using various applications, such as a mobile phone, an application interoperation system according to the present invention may dynamically generate a menu of an application according to the application installed in a terminal device and a type of data that a user is currently using. Through this configuration, interoperation of at least two applications is possible. Namely, it is possible to increase utilization of the terminal device and the application.
  • Although a few embodiments of the present invention have been shown and described, the present invention is not limited to the described embodiments. Instead, it would be appreciated by those skilled in the art that changes may be made to these embodiments without departing from the principles and spirit of the invention, the scope of which is defined by the claims and their equivalents.
  • INDUSTRIAL APPLICABILITY
  • According to the present invention, there is provided an application interoperation method and system, which can dynamically generate a menu of an application according to a type of data that a user is currently using and an application installed in a terminal device, in a portable device having a limited input/output device but capable of utilizing various applications. Accordingly, interoperation of at least two applications is possible. Also, it is possible to improve efficiency of the terminal device and the application.
  • Also, according to the present invention, there is provided an application interoperation method and system which enables one application to interoperate with another application when transmitting/receiving data, and also adopts a method of not hard-coding an association method in a logic of an application. Accordingly, it is possible to enable an association between download applications or an association between an embedded application and a download application. Also, it is possible to help a user to more easily and effectively utilize a portable device.
  • Also, according to the present invention, there is provided an application interoperation method and system which can dynamically generate a menu of a currently active application, with respect to a portable device having almost no function corresponding to a shell or having difficulty of switching between an application and a shell.
  • Also, according to the present invention, there is provided an application interoperation method and system which is not limited to a particular function, and can process, generate and filter data by including both input data and output data types.
  • Also, according to the present invention, there is provided an application interoperation method and system which can reduce an operation by directly executing another application, while not terminating one application. Accordingly, it is possible to increase efficient utilization of an application.

Claims (20)

1. A method for interoperation of a plurality of applications, the method comprising the steps of:
maintaining a handler table including data type information, function information and calling information which are associated with each application installed in a portable device;
receiving input information on a menu key of the portable device, from a user, while a first application is active;
extracting, in response to the receipt of the input information, at least one function information associated with data type information of data, which is being processed or requested by the first application, from the handler table;
dynamically generating a menu including the extracted at least one function information to provide the user with the generated menu;
receiving selection information on particular function information among the provided menu, from the user; and
identifying calling information associated with the selected particular function information by referring to the handler table and executing a second application on the basis of the identified calling information.
2. The method of claim 1, wherein the maintaining of the handler table comprises the step of:
registering function information and calling information in the handler table, with data type information which can be processed or generated in the each application.
3. The method of claim 2, wherein, in the registering, the function information and the calling information are registered in the handler table with the data type information using an application programming interface (API) of an operating system installed in the portable device, when the each application is initially executed in the portable device.
4. The method of claim 2, wherein, in the registering, an application management module of the operating system installed in the portable device reads the data type information, the function information and the calling information included in a descriptor file associated with the each application and registers the same in the handler table.
5. The method of claim 3, wherein the maintaining of the handler table further comprises the step of:
the operating system, when the each application is uninstalled from the portable device, deleting an item associated with the uninstalled application from the handler table.
6. The method of claim 1, wherein, in the extracting, a list including the at least one function information is extracted from the handler table, and the generating of the menu comprises the step of:
dynamically adding the extracted list to a basic menu associated with the first application.
7. The method of claim 1, wherein, in the generating, the extracted at least one function information is arranged according to a frequency of use and a most recently used order, to generate the menu.
8. The method of claim 1, wherein the executing of the second application further comprises the steps of:
generating a predetermined command on the basis of an application identifier or an option identifier included in the identified calling information; and
executing a second application corresponding to the application identifier included in the command, and the method further comprises the step of:
the second application recognizing the command and performing a function according to the selected particular function information.
9. The method of claim 8, wherein the function includes information on a data processing function including a data storing function or a data transmitting function, a data generating function and a data filtering function.
10. The method of claim 9, wherein, when the selected particular function information is a function of transmitting image data, the generating a predetermined command comprises the steps of:
storing image data, which is being processed by the first application, in a temporary file; and
generating the command which includes the application identifier, the option identifier and a name of the temporary file, and in the second application performing the function, the second application recognizes the option identifier and the name of the temporary file, and transmits the image data to a predetermined server.
11. The method of claim 9, wherein, when the selected particular function information is a function of transmitting text data, the generating of the command comprises the steps of:
converting data, which is being processed by the first application, into text data; and
generating the command which includes the application identifier, the option identifier and the text data, and in the second application performing the function, the second application recognizes the option identifier and the text data, and transmits the text data to a predetermined server.
12. The method of claim 9, wherein, when the selected particular function information is a function of providing a predetermined webpage, the generating of the command comprises the steps of:
identifying caller information associated with data which is being processed by the first application; and
generating the command which includes the application identifier, the option identifier and the caller information, and in the second application performing the function, the second application recognizes the option identifier and the caller information, and provides a webpage associated with the caller information.
13. The method of claim 9, wherein, when the selected particular function information is a function of uploading data, the generating of the command comprises the steps of:
designating a name of a temporary file to store data requested by the first application; and
generating a command which includes the application identifier, the option identifier and the name of the temporary file, and in the second application performing the function, the second application recognizes the option identifier and the name of the temporary file, generates the requested data and stores the same as the name of the temporary file, and the method further comprises the step of:
terminating the second application and activating the first application; and
the first application reading the generated data from the temporary file and uploading the same to a predetermined server.
14. The method of claim 9, wherein, when the selected particular function information is a function of filtering data, the generating of the command comprises the steps of:
identifying a file name of data being processed by the first application and designating a name of another temporary file; and
generating a command which includes the application identifier, the identified file name and a name of the temporary file, and in the second application performing the function, the second application recognizes the identified file name and the name of the temporary file, reads the identified file name, filters the data, and stores the filtered data as the name of the temporary file, and the method further comprises the steps of:
terminating the second application and activating the first application; and
the first application reading and displaying the filtered data from the temporary file.
15. The method of claim 8, further comprising:
immediately terminating the second application and activating the first application, when the second application completes the function.
16. A computer readable recording medium storing a program for implementing the method according to claim 1.
17. A system for interoperation of a plurality of applications, the system comprising:
a table maintenance unit maintaining a handler table including data type information, function information and calling information which are associated with each application installed in a portable device;
an input information receiving unit receiving input information on a menu key of the portable device, from a user, while a first application is active;
a function information extraction unit extracting at least one function information associated with data type information of data, which is being processed or requested by the first application, from the handler table, in response to the receipt of the input information;
a menu providing unit dynamically generating a menu including the extracted at least one function information and providing the user with the generated menu;
a selection information receiving unit receiving selection information on particular function information among the provided menu, from the user; and
an application execution unit identifying calling information associated with the selected particular function information by referring to the handler table and executing a second application on the basis of the identified calling information.
18. The method of claim 4, wherein the maintaining of the handler table further comprises the step of:
the operating system, when the each application is uninstalled from the portable device, deleting an item associated with the uninstalled application from the handler table.
19. A computer readable recording medium storing a program for implementing the method according to claim 6.
20. A computer readable recording medium storing a program for implementing the method according to claim 14.
US11/813,295 2005-01-11 2006-01-10 Method and system for interworking a plurality of applications Expired - Fee Related US8695017B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US14/248,236 US9122377B2 (en) 2005-01-11 2014-04-08 Method and system for interworking plurality of applications

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
KR10-2005-0002696 2005-01-11
KR1020050002696 2005-01-11
KR1020050002696A KR100616157B1 (en) 2005-01-11 2005-01-11 Method and syetem for interworking plurality of applications
PCT/KR2006/000093 WO2006075859A1 (en) 2005-01-11 2006-01-10 Method and system for interworking plurality of applications

Publications (2)

Publication Number Publication Date
US20080168474A1 true US20080168474A1 (en) 2008-07-10
US8695017B2 US8695017B2 (en) 2014-04-08

Family

ID=36677864

Family Applications (2)

Application Number Title Priority Date Filing Date
US11/813,295 Expired - Fee Related US8695017B2 (en) 2005-01-11 2006-01-10 Method and system for interworking a plurality of applications
US14/248,236 Expired - Fee Related US9122377B2 (en) 2005-01-11 2014-04-08 Method and system for interworking plurality of applications

Family Applications After (1)

Application Number Title Priority Date Filing Date
US14/248,236 Expired - Fee Related US9122377B2 (en) 2005-01-11 2014-04-08 Method and system for interworking plurality of applications

Country Status (6)

Country Link
US (2) US8695017B2 (en)
EP (1) EP1849060A4 (en)
JP (1) JP4818278B2 (en)
KR (1) KR100616157B1 (en)
CN (1) CN100520709C (en)
WO (1) WO2006075859A1 (en)

Cited By (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080279197A1 (en) * 2007-05-08 2008-11-13 Microsoft Corporation Application level router for routing heterogeneous input to the most appropriate application
US20090319492A1 (en) * 2008-06-19 2009-12-24 Canon Kabushiki Kaisha Apparatus processing user generated data and method of controlling the apparatus
US20110185313A1 (en) * 2010-01-26 2011-07-28 Idan Harpaz Method and system for customizing a user-interface of an end-user device
US20120072900A1 (en) * 2010-09-21 2012-03-22 Canon Kabushiki Kaisha Information providing apparatus, information processing apparatus, method for controlling the same, and program
US20120110565A1 (en) * 2010-10-29 2012-05-03 Intuit Inc. Chained data processing and application utilization
US20120113030A1 (en) * 2009-03-26 2012-05-10 Joon Ah Park Apparatus and method for controlling terminal
US20120191707A1 (en) * 2008-11-21 2012-07-26 Randall Reese Machine, Computer Readable Medium, and Computer-Implemented Method For File Management, Storage, and Display
US20130318476A1 (en) * 2012-05-24 2013-11-28 Microsoft Corporation Entry points to image-related applications in a mobile device
US20140036099A1 (en) * 2012-08-03 2014-02-06 Be Labs, Llc Automated Scanning
US20150317066A1 (en) * 2014-04-30 2015-11-05 Samsung Electronics Co., Ltd. Electronic device and method for communication with a contact thereof
EP2278781A3 (en) * 2009-07-20 2016-03-23 Samsung Electronics Co., Ltd. System and method to allow multiple plug-in applications real-time access to a camera application in a mobile device
WO2019164304A1 (en) * 2018-02-23 2019-08-29 Samsung Electronics Co., Ltd. Method for interworking between host application and assistant application and electronic device supporting the same
US10855869B2 (en) 2016-12-06 2020-12-01 Canon Kabushiki Kaisha Information processing apparatus, information processing method, and storage medium storing program for activating applications
US20210278939A1 (en) * 2018-11-22 2021-09-09 Fujifilm Corporation Medical image display control device, method, and program

Families Citing this family (38)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8933949B2 (en) 2010-10-01 2015-01-13 Z124 User interaction across cross-environment applications through an extended graphics context
US9047102B2 (en) * 2010-10-01 2015-06-02 Z124 Instant remote rendering
US9098437B2 (en) 2010-10-01 2015-08-04 Z124 Cross-environment communication framework
US8966379B2 (en) 2010-10-01 2015-02-24 Z124 Dynamic cross-environment application configuration/orientation in an active user environment
US8819705B2 (en) 2010-10-01 2014-08-26 Z124 User interaction support across cross-environment applications
US20130024812A1 (en) 2011-07-13 2013-01-24 Z124 Foreground/background assortment of hidden windows
US8726294B2 (en) 2010-10-01 2014-05-13 Z124 Cross-environment communication using application space API
US9223426B2 (en) 2010-10-01 2015-12-29 Z124 Repositioning windows in the pop-up window
KR100616157B1 (en) 2005-01-11 2006-08-28 와이더댄 주식회사 Method and syetem for interworking plurality of applications
KR101370323B1 (en) * 2007-10-22 2014-03-06 에스케이플래닛 주식회사 Method for Processing UI Event of Application and Mobile Communication Terminal for the Same
KR101514460B1 (en) 2008-11-13 2015-04-22 주식회사 케이티 Method For Coupling Applications In Portable Terminal
KR101308403B1 (en) * 2008-11-14 2013-09-16 에스케이플래닛 주식회사 Portable communication terminal capable of interlocking different applications and method thereof
GB0823706D0 (en) * 2008-12-31 2009-02-04 Symbian Software Ltd Fast data entry
US8627284B2 (en) * 2009-06-19 2014-01-07 Microsoft Corporation Managed system extensibility
KR101637028B1 (en) * 2010-06-03 2016-07-20 주식회사 케이티 System and method for functionality integration
US8732697B2 (en) 2010-08-04 2014-05-20 Premkumar Jonnala System, method and apparatus for managing applications on a device
WO2012044546A2 (en) * 2010-10-01 2012-04-05 Imerj, Llc Auto-waking of a suspended os in a dockable system
US9405444B2 (en) 2010-10-01 2016-08-02 Z124 User interface with independent drawer control
US8761831B2 (en) 2010-10-15 2014-06-24 Z124 Mirrored remote peripheral interface
US8842057B2 (en) 2011-09-27 2014-09-23 Z124 Detail on triggers: transitional states
WO2013057607A1 (en) * 2011-10-20 2013-04-25 International Business Machines Corporation Computer program interface
CN107577505B (en) * 2011-11-26 2021-01-05 华为技术有限公司 Method and device for operating, generating and starting application program
JP5998690B2 (en) * 2012-07-10 2016-09-28 富士ゼロックス株式会社 Information processing apparatus and program
KR20150119135A (en) * 2013-03-13 2015-10-23 구글 테크놀로지 홀딩스 엘엘씨 Systems and methods for managing displayed content on electronic devices
CN103186671B (en) * 2013-03-28 2016-06-15 百度在线网络技术(北京)有限公司 For searching method, the search system and mobile terminal of mobile terminal
CN103324518B (en) * 2013-05-23 2016-08-10 东莞宇龙通信科技有限公司 A kind of operation mapping method and device
CN103399788B (en) * 2013-08-07 2017-03-08 广东欧珀移动通信有限公司 A kind of across the application control method and system of intelligent terminal
JP2015085182A (en) * 2013-09-26 2015-05-07 株式会社東芝 Medical image diagnostic apparatus, medical image display device, and medical image display method
JP6325796B2 (en) * 2013-11-06 2018-05-16 キヤノン株式会社 Information processing terminal, control method therefor, and program
US9582642B2 (en) 2014-05-30 2017-02-28 Apple Inc. Managing user information—background processing
JP6427978B2 (en) * 2014-06-18 2018-11-28 ブラザー工業株式会社 Application program and terminal device
CN105808291B (en) * 2016-03-03 2019-11-05 腾讯科技(深圳)有限公司 Terminal applies connection method and device
CN106897341A (en) 2016-07-08 2017-06-27 阿里巴巴集团控股有限公司 2 D code information querying method, server, client and system
US10715603B2 (en) * 2016-09-19 2020-07-14 Microsoft Technology Licensing, Llc Systems and methods for sharing application data between isolated applications executing on one or more application platforms
US10409786B2 (en) 2016-09-19 2019-09-10 Microsoft Technology Licensing, Llc Deployment of applications confirming to application data sharing and decision service platform schema
JP6407241B2 (en) * 2016-12-06 2018-10-17 キヤノン株式会社 Information processing apparatus, control method, and program
JP6971733B2 (en) * 2017-09-13 2021-11-24 キヤノン株式会社 Information processing equipment and its control method and program
JP7442309B2 (en) 2019-12-09 2024-03-04 株式会社メルカリ Terminal device, data sharing method and program

Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5041967A (en) * 1987-10-13 1991-08-20 Bell Communications Research, Inc. Methods and apparatus for dynamic menu generation in a menu driven computer system
US5572648A (en) * 1993-01-19 1996-11-05 Canon Kabushiki Kaisha System for simultaneously displaying a static tool palette having predefined windowing tool functions and a dynamic tool palette which changes windowing tool functons in accordance with a context of an executed application program
US5922054A (en) * 1994-08-19 1999-07-13 Canon Kabushiki Kaisha System for managing external applications and files
US20020105681A1 (en) * 2001-02-02 2002-08-08 Matsushita Graphic Communication System, Inc. Network scanner and file transmitting/receiving system, and user terminal apparatus and file transmitting/receiving method
US6496979B1 (en) * 1997-10-24 2002-12-17 Microsoft Corporation System and method for managing application installation for a mobile device
US20030097486A1 (en) * 2001-11-16 2003-05-22 Eisenstein Jacob R. Method for automatically interfacing collaborative agents to interactive applications
US6584507B1 (en) * 1999-03-02 2003-06-24 Cisco Technology, Inc. Linking external applications to a network management system
US20030222923A1 (en) * 2002-05-29 2003-12-04 International Business Machines Corporation Menu user interface with size differentiation between enabled and disabled menu items
US20050066335A1 (en) * 2003-09-23 2005-03-24 Robert Aarts System and method for exposing local clipboard functionality towards external applications
US6910210B1 (en) * 1998-11-24 2005-06-21 Microsoft Corp. System and method for terminating applications
US7057606B2 (en) * 2002-02-22 2006-06-06 Kabushiki Kaisha Toshiba Information processing apparatus
US7925305B2 (en) * 2004-01-19 2011-04-12 Sharp Kabushiki Kaisha Portable communication terminal

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11143695A (en) 1997-11-13 1999-05-28 Nippon Telegr & Teleph Corp <Ntt> External application linking method and device and recording medium recording external application linking program
US6553385B2 (en) * 1998-09-01 2003-04-22 International Business Machines Corporation Architecture of a framework for information extraction from natural language documents
JP2001202257A (en) * 2000-01-20 2001-07-27 Nec Ic Microcomput Syst Ltd Operation processor linked with software and its method
US6801224B1 (en) * 2000-09-14 2004-10-05 International Business Machines Corporation Method, system, and program for generating a graphical user interface window for an application program
GB0110326D0 (en) * 2001-04-27 2001-06-20 Ibm Method and apparatus for interoperation between legacy software and screen reader programs
US6944864B2 (en) * 2001-12-06 2005-09-13 Ncr Corporation Dynamic architecture integration technique
JP2004341999A (en) * 2003-05-19 2004-12-02 Nippon Telegr & Teleph Corp <Ntt> Application cooperation control device, application cooperation control method, application cooperation control program and recording medium
US7328432B2 (en) * 2003-06-02 2008-02-05 Sun Microsystems, Inc. Proximity-based addressing for supporting in-place execution in virtual machines
KR100627840B1 (en) * 2004-10-21 2006-09-25 에스케이 텔레콤주식회사 Method, Server and Mobile Communication Terminal for Constructing Menu Configuration of Application Service
KR100616157B1 (en) 2005-01-11 2006-08-28 와이더댄 주식회사 Method and syetem for interworking plurality of applications

Patent Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5041967A (en) * 1987-10-13 1991-08-20 Bell Communications Research, Inc. Methods and apparatus for dynamic menu generation in a menu driven computer system
US5572648A (en) * 1993-01-19 1996-11-05 Canon Kabushiki Kaisha System for simultaneously displaying a static tool palette having predefined windowing tool functions and a dynamic tool palette which changes windowing tool functons in accordance with a context of an executed application program
US5922054A (en) * 1994-08-19 1999-07-13 Canon Kabushiki Kaisha System for managing external applications and files
US6496979B1 (en) * 1997-10-24 2002-12-17 Microsoft Corporation System and method for managing application installation for a mobile device
US6910210B1 (en) * 1998-11-24 2005-06-21 Microsoft Corp. System and method for terminating applications
US6584507B1 (en) * 1999-03-02 2003-06-24 Cisco Technology, Inc. Linking external applications to a network management system
US20020105681A1 (en) * 2001-02-02 2002-08-08 Matsushita Graphic Communication System, Inc. Network scanner and file transmitting/receiving system, and user terminal apparatus and file transmitting/receiving method
US20030097486A1 (en) * 2001-11-16 2003-05-22 Eisenstein Jacob R. Method for automatically interfacing collaborative agents to interactive applications
US7057606B2 (en) * 2002-02-22 2006-06-06 Kabushiki Kaisha Toshiba Information processing apparatus
US20030222923A1 (en) * 2002-05-29 2003-12-04 International Business Machines Corporation Menu user interface with size differentiation between enabled and disabled menu items
US20050066335A1 (en) * 2003-09-23 2005-03-24 Robert Aarts System and method for exposing local clipboard functionality towards external applications
US7925305B2 (en) * 2004-01-19 2011-04-12 Sharp Kabushiki Kaisha Portable communication terminal

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Hiroshi et al., JP1997-312297, "Detailed Description", translated 12/6/2011, JPO and INPIT, English Translation, pp1-10. *

Cited By (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7895346B2 (en) * 2007-05-08 2011-02-22 Microsoft Corporation Application level router for routing heterogeneous input to the most appropriate application
US20080279197A1 (en) * 2007-05-08 2008-11-13 Microsoft Corporation Application level router for routing heterogeneous input to the most appropriate application
US20090319492A1 (en) * 2008-06-19 2009-12-24 Canon Kabushiki Kaisha Apparatus processing user generated data and method of controlling the apparatus
US9699246B2 (en) 2008-11-21 2017-07-04 Randall Reese Machine, computer readable medium, and computer-implemented method for file management, storage, and display
US20120191707A1 (en) * 2008-11-21 2012-07-26 Randall Reese Machine, Computer Readable Medium, and Computer-Implemented Method For File Management, Storage, and Display
US8510305B2 (en) * 2008-11-21 2013-08-13 Randall Reese Machine, computer readable medium, and computer-implemented method for file management, storage, and display
US20120113030A1 (en) * 2009-03-26 2012-05-10 Joon Ah Park Apparatus and method for controlling terminal
US9635170B2 (en) * 2009-03-26 2017-04-25 Samsung Electronics Co., Ltd. Apparatus and method for controlling terminal to expand available display region to a virtual display space
EP2278781A3 (en) * 2009-07-20 2016-03-23 Samsung Electronics Co., Ltd. System and method to allow multiple plug-in applications real-time access to a camera application in a mobile device
US20110185313A1 (en) * 2010-01-26 2011-07-28 Idan Harpaz Method and system for customizing a user-interface of an end-user device
WO2011092635A1 (en) * 2010-01-26 2011-08-04 Uiyou Ltd. Method and system for customizing a user-interface of an end-user device
US20120072900A1 (en) * 2010-09-21 2012-03-22 Canon Kabushiki Kaisha Information providing apparatus, information processing apparatus, method for controlling the same, and program
US20120110565A1 (en) * 2010-10-29 2012-05-03 Intuit Inc. Chained data processing and application utilization
US10409576B2 (en) * 2010-10-29 2019-09-10 Intuit, Inc. Chained data processing and application utilization
US9448813B2 (en) * 2012-05-24 2016-09-20 Microsoft Technology Licensing, Llc Entry points to image-related applications in a mobile device
US20130318476A1 (en) * 2012-05-24 2013-11-28 Microsoft Corporation Entry points to image-related applications in a mobile device
US10599300B2 (en) 2012-05-24 2020-03-24 Microsoft Technology Licensing, Llc Entry points to image-related applications in a mobile device
US20140036099A1 (en) * 2012-08-03 2014-02-06 Be Labs, Llc Automated Scanning
US20150317066A1 (en) * 2014-04-30 2015-11-05 Samsung Electronics Co., Ltd. Electronic device and method for communication with a contact thereof
US10855869B2 (en) 2016-12-06 2020-12-01 Canon Kabushiki Kaisha Information processing apparatus, information processing method, and storage medium storing program for activating applications
WO2019164304A1 (en) * 2018-02-23 2019-08-29 Samsung Electronics Co., Ltd. Method for interworking between host application and assistant application and electronic device supporting the same
US20210278939A1 (en) * 2018-11-22 2021-09-09 Fujifilm Corporation Medical image display control device, method, and program

Also Published As

Publication number Publication date
KR20060081997A (en) 2006-07-14
CN101103332A (en) 2008-01-09
EP1849060A4 (en) 2009-01-14
US8695017B2 (en) 2014-04-08
JP2008527530A (en) 2008-07-24
EP1849060A1 (en) 2007-10-31
US9122377B2 (en) 2015-09-01
US20140310654A1 (en) 2014-10-16
KR100616157B1 (en) 2006-08-28
JP4818278B2 (en) 2011-11-16
CN100520709C (en) 2009-07-29
WO2006075859A1 (en) 2006-07-20

Similar Documents

Publication Publication Date Title
US9122377B2 (en) Method and system for interworking plurality of applications
WO2020147665A1 (en) File processing method and device, terminal, and storage medium
US9396572B2 (en) Image correlation method and electronic device thereof
US20170337289A1 (en) Multi-mode barcode resolution system
US10852912B2 (en) Image creation app in messaging app
JP5449390B2 (en) Separation of received information on locked devices
US20110087739A1 (en) Routing User Data Entries to Applications
WO2018072149A1 (en) Picture processing method, device, electronic device and graphic user interface
CN102541635A (en) Extensible system action for sharing while remaining in context
US20130012245A1 (en) Apparatus and method for transmitting message in mobile terminal
US20130082100A1 (en) System and Method for Processing Barcodes in Electronic Data Communications
CN105745612A (en) Resizing technique for display content
CN110795180A (en) Two-dimensional code management method and system, electronic device and storage medium
KR20130118580A (en) Method and apparatus for providing contents based on voice call
CN111324398B (en) Method, device, terminal and storage medium for processing latest content
CN109697129A (en) A kind of information sharing method, equipment and computer readable storage medium
CN109683760B (en) Recent content display method, device, terminal and storage medium
CN112182446A (en) Page display method and device, terminal equipment and computer readable storage medium
CN112035026B (en) Information display method and device, electronic equipment and storage medium
WO2019201197A1 (en) Image desensitization method, electronic device and storage medium
CN114846493A (en) Associating content items with captured images of meeting content
US20160027082A1 (en) Virtual shop for electronic greeting cards
EP2549425A2 (en) Multi-mode barcode resolution system
US20130185658A1 (en) Portable Electronic Device, Content Publishing Method, And Prompting Method
US20140101530A1 (en) Web browsing system for content browsing

Legal Events

Date Code Title Description
AS Assignment

Owner name: WIDERTHAN CO., LTD., KOREA, REPUBLIC OF

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:JEON, YUN HO;KIM, EUN AH;KIM, SU JIN;REEL/FRAME:019512/0650

Effective date: 20070621

AS Assignment

Owner name: REALNETWORKS ASIA PACIFIC CO., LTD., KOREA, REPUBL

Free format text: CHANGE OF NAME;ASSIGNOR:WIDERTHAN CO., LTD.;REEL/FRAME:020709/0005

Effective date: 20071228

AS Assignment

Owner name: REALNETWORKS, INC., WASHINGTON

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:REALNETWORKS ASIA PACIFIC CO., LTD.;REEL/FRAME:027698/0064

Effective date: 20120203

AS Assignment

Owner name: INTEL CORPORATION, CALIFORNIA

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:REALNETWORKS, INC.;REEL/FRAME:028752/0734

Effective date: 20120419

STCF Information on status: patent grant

Free format text: PATENTED CASE

MAFP Maintenance fee payment

Free format text: PAYMENT OF MAINTENANCE FEE, 4TH YEAR, LARGE ENTITY (ORIGINAL EVENT CODE: M1551)

Year of fee payment: 4

FEPP Fee payment procedure

Free format text: MAINTENANCE FEE REMINDER MAILED (ORIGINAL EVENT CODE: REM.); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY

LAPS Lapse for failure to pay maintenance fees

Free format text: PATENT EXPIRED FOR FAILURE TO PAY MAINTENANCE FEES (ORIGINAL EVENT CODE: EXP.); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY

STCH Information on status: patent discontinuation

Free format text: PATENT EXPIRED DUE TO NONPAYMENT OF MAINTENANCE FEES UNDER 37 CFR 1.362

FP Lapsed due to failure to pay maintenance fee

Effective date: 20220408