[go: up one dir, main page]

KR101144346B1 - 자바 애플리케이션 관리 방법 및 이를 실현시키기 위한 프로그램을 기록한 컴퓨터로 판독 가능한 기록 매체 - Google Patents

자바 애플리케이션 관리 방법 및 이를 실현시키기 위한 프로그램을 기록한 컴퓨터로 판독 가능한 기록 매체 Download PDF

Info

Publication number
KR101144346B1
KR101144346B1 KR1020090014161A KR20090014161A KR101144346B1 KR 101144346 B1 KR101144346 B1 KR 101144346B1 KR 1020090014161 A KR1020090014161 A KR 1020090014161A KR 20090014161 A KR20090014161 A KR 20090014161A KR 101144346 B1 KR101144346 B1 KR 101144346B1
Authority
KR
South Korea
Prior art keywords
java application
execution
type information
application
java
Prior art date
Application number
KR1020090014161A
Other languages
English (en)
Other versions
KR20100095057A (ko
Inventor
백원장
김동수
Original Assignee
에스케이플래닛 주식회사
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 에스케이플래닛 주식회사 filed Critical 에스케이플래닛 주식회사
Priority to KR1020090014161A priority Critical patent/KR101144346B1/ko
Priority to PCT/KR2010/001015 priority patent/WO2010095868A2/en
Priority to US12/656,872 priority patent/US8347314B2/en
Publication of KR20100095057A publication Critical patent/KR20100095057A/ko
Application granted granted Critical
Publication of KR101144346B1 publication Critical patent/KR101144346B1/ko

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/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • 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/44Arrangements for executing specific programs
    • G06F9/451Execution arrangements for user interfaces
    • G06F9/453Help systems
    • 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/44Arrangements for executing specific programs
    • G06F9/451Execution arrangements for user interfaces
    • G06F9/454Multi-language systems; Localisation; Internationalisation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Human Computer Interaction (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Economics (AREA)
  • Computer Hardware Design (AREA)
  • Human Resources & Organizations (AREA)
  • Marketing (AREA)
  • Operations Research (AREA)
  • Quality & Reliability (AREA)
  • Strategic Management (AREA)
  • Tourism & Hospitality (AREA)
  • General Business, Economics & Management (AREA)
  • Stored Programmes (AREA)
  • Devices For Executing Special Programs (AREA)

Abstract

본 발명은 사용자 장치에서의 자바 애플리케이션 관리 방법으로서, (a) 제1 자바 애플리케이션으로부터 실행 유형 정보를 포함하는 제2 자바 애플리케이션의 실행 요청을 수신하는 단계와, (b) 상기 실행 유형 정보에 따라서 상기 제1 자바 애플리케이션의 실행 상태를 변경하도록 제어하는 단계와, (c) 상기 제2 자바 애플리케이션을 초기화하고 실행하도록 제어하는 단계와, (d) 상기 제2 자바 애플리케이션으로부터 상기 제2 자바 애플리케이션의 소멸 요청을 수신하는 경우 상기 제2 자바 애플리케이션을 소멸시키도록 제어하고, 상기 변경된 상기 제1 자바 애플리케이션의 실행 상태를 재변경하여 상기 제1 자바 애플리케이션이 실행되도록 제어하는 단계를 포함하되, 상기 실행 요청은 상기 사용자 장치의 시스템 자원의 상태에 따라서 상기 제1 자바 애플리케이션에서 생성되는 것이고, 상기 제1 자바 애플리케이션 및 상기 제2 자바 애플리케이션은 정보를 공유하는 것이고, 상기 단계 (d)는, (d-1) 상기 제2 자바 애플리케이션에서 설정된 상기 공유된 정보를 상기 제1 자바 애플리케이션에 적용하도록 제어하는 단계를 포함하는 것인 자바 애플리케이션 관리 방법에 관한 것이다.
본 발명에 따르면, 서로 다른 자바 애플리케이션들을 서로 연동되는 하나의 자바 애플리케이션으로 간주할 수 있어서 자바 애플리케이션의 확장성을 높일 수 있고 사용자 장치의 시스템 자원을 효율적으로 관리할 수 있다.
자바 애플리케이션, 사용자 장치, 실행 유형 정보, 일시 정지, 소멸, 백그라운드 실행

Description

자바 애플리케이션 관리 방법 및 이를 실현시키기 위한 프로그램을 기록한 컴퓨터로 판독 가능한 기록 매체{METHOD OF MANAGING JAVA APPLICATION AND COMPUTER-READABLE MEDIUM HAVING THEREON PROGRAM PERFORMING FUNCTION EMBODYING THE SAME}
본 발명은 자바 애플리케이션 관리 방법 및 이를 실현시키기 위한 프로그램을 기록한 컴퓨터로 판독 가능한 기록 매체에 관한 것으로, 더욱 구체적으로는 사용자 장치에서 실행되는 자바 애플리케이션의 상태를 관리하는 자바 애플리케이션 관리 방법 및 이를 실현시키기 위한 프로그램을 기록한 컴퓨터로 판독 가능한 기록 매체에 관한 것이다.
종래의 텔레비전 또는 DVD 플레이어는 단순히 오디오 및 비디오 데이터를 재생하는 기능만을 구비하였으나, 디지털 방송 및 블루레이 플레이어 등의 보급에 따라서 애플리케이션 실행 환경을 제공할 수 있다.
또한 종래 이동통신 단말기는 통화 기능만을 구비하였으나, 이동통신 단말기용 운영 체제의 보급에 따라서 애플리케이션 실행 환경을 제공할 수 있다.
컨텐츠 제공자는 전술한 애플리케이션 실행 환경들을 통하여 사용자에게 다 양한 애플리케이션 프로그램을 제공할 수 있다.
디지털 텔레비전, 블루레이 플레이어, 이동통신 단말기 등의 사용자 장치에 있어서, 애플리케이션 프로그램은 주로 자바를 이용하여 작성되고 바이트 코드의 형태로 콘텐츠 제공자로부터 사용자 장치로 제공된다.
어플리케이션의 시작, 종료, 시스템 자원의 접근과 같은 동작들은 어플리케이션 및 어플리케이션이 실행되는 OS 사이에서 수행된다.
어플리케이션 모델은 어플리케이션이 어떻게 관리되어야 하는지를 정의하며, 어플리케이션이 실행되는 시스템과 어플리케이션 사이의 상호 역할을 정의한다.
J2ME(Java 2 Platform Micro Edition), J2SE( Java 2 Platform Sun Edition) 등의 자바 규격은 현재 다양한 어플리케이션 모델을 지원하고 있으며, Applet, Xlet 등은 이러한 어플리케이션 모델의 한 일례이다.
특히 디지털 텔레비전 등의 임베디드(embedded) 장치에서의 자바의 실행을 위해, 선마이크로시스템 사에서는 Xlet을 제공하고 있다. 즉 Applet이 브라우저 내에서 수행되는 임베디드 애플리케이션인 반면, Xlet은 디지털 텔레비전 등과 같은 다른 응용 유형에서 수행되는 임베디드 애플리케이션이다.
이하 본원 발명의 명세서에서 자바 애플리케이션은 자바를 이용하여 작성된 애플리케이션을 지칭하며, 특히 디지털 텔레비전, 블루레이 플레이어, 이동통신 단말기 등의 사용자 장치에서 실행되는 애플리케이션을 지칭한다.
디지털 텔레비전, 블루레이 플레이어, 이동통신 단말기 등의 사용자 장치는 화면 내에서 일반적으로 하나의 자바 애플리케이션이 실행된다.
예컨대 초기 화면에 대한 자바 애플리케이션을 실행하던 도중에 사용자가 다른 자바 애플리케이션의 실행을 선택하면, 초기 화면에 대한 자바 애플리케이션은 소멸되고 사용자가 선택한 자바 애플리케이션이 실행된다.
따라서 초기 화면에 대한 자바 애플리케이션과 사용자가 선택한 자바 애플리케이션은 서로 독립적인 애플리케이션이다. 초기 화면에 대한 자바 애플리케이션과 사용자가 선택한 자바 애플리케이션이 서로 독립적이기 때문에, 사용자가 선택한 자바 애플리케이션에서 정보의 변경이 발생하는 경우, 해당 정보를 초기 화면에 대한 자바 애플리케이션에 적용하기는 어렵다.
본 발명의 목적은 서로 다른 자바 애플리케이션들을 서로 연동되는 하나의 자바 애플리케이션으로 간주할 수 있어서 자바 애플리케이션의 확장성을 높일 수 있고 사용자 장치의 시스템 자원을 효율적으로 관리할 수 있는 자바 애플리케이션 관리 방법을 제공하는 데 있다.
본 발명의 다른 목적은 상기 자바 애플리케이션 관리 방법의 각 단계를 실현시키기 위한 프로그램을 기록한 컴퓨터로 판독 가능한 기록 매체를 제공하는데 있다.
상기 기술적 과제를 달성하기 위하여, 본 발명은 사용자 장치에서의 자바 애플리케이션 관리 방법으로서, (a) 제1 자바 애플리케이션으로부터 실행 유형 정보를 포함하는 제2 자바 애플리케이션의 실행 요청을 수신하는 단계와, (b) 상기 실행 유형 정보에 따라서 상기 제1 자바 애플리케이션의 실행 상태를 변경하도록 제어하는 단계와, (c) 상기 제2 자바 애플리케이션을 초기화하고 실행하도록 제어하는 단계와, (d) 상기 제2 자바 애플리케이션으로부터 상기 제2 자바 애플리케이션의 소멸 요청을 수신하는 경우 상기 제2 자바 애플리케이션을 소멸시키도록 제어하고, 상기 변경된 상기 제1 자바 애플리케이션의 실행 상태를 재변경하여 상기 제1 자바 애플리케이션이 실행되도록 제어하는 단계를 포함하되, 상기 실행 요청은 상기 사용자 장치의 시스템 자원의 상태에 따라서 상기 제1 자바 애플리케이션에서 생성되는 것이고, 상기 제1 자바 애플리케이션 및 상기 제2 자바 애플리케이션은 정보를 공유하는 것이고, 상기 단계 (d)는, (d-1) 상기 제2 자바 애플리케이션에서 설정된 상기 공유된 정보를 상기 제1 자바 애플리케이션에 적용하도록 제어하는 단계를 포함하는 것인 자바 애플리케이션 관리 방법을 제공한다.
본 발명에 따른 자바 애플리케이션 관리 방법에 있어서, 상기 제1 자바 애플리케이션은 사용자 입력을 수신하는 사용자 인터페이스를 포함하는 것이고, 상기 제1 자바 애플리케이션은 상기 사용자 인터페이스를 통하여 상기 사용자 입력을 수신하면 상기 제2 자바 애플리케이션의 실행 요청을 생성하는 것일 수 있다.
또한 본 발명에 따른 자바 애플리케이션 관리 방법에 있어서, 상기 제2 자바 애플리케이션의 실행 요청은 상기 제2 자바 애플리케이션의 획득 경로를 포함하는 것일 수 있다.
또한 본 발명에 따른 자바 애플리케이션 관리 방법에 있어서, 상기 단계 (c)는, 상기 획득 경로를 이용하여 상기 제2 자바 애플리케이션을 획득하는 단계를 포함하는 것일 수 있다.
또한 본 발명에 따른 자바 애플리케이션 관리 방법에 있어서, 상기 실행 유형 정보는, 상기 제2 자바 애플리케이션의 실행시 상기 제1 자바 애플리케이션을 소멸(destroy)시키고 상기 제2 자바 애플리케이션의 소멸시 상기 제1 자바 애플리케이션을 다시 시작(start)하는 제1 실행 유형 정보와, 상기 제2 자바 애플리케이션의 실행시 상기 제1 자바 애플리케이션의 실행을 일시 정지(pause)시키고 상기 제2 자바 애플리케이션의 소멸시 상기 일시 정지된 제1 자바 애플리케이션의 실행을 속행(unpause)하는 제2 실행 유형 정보와, 상기 제2 자바 애플리케이션의 실행시 상기 제1 자바 애플리케이션을 백그라운드(background)에서 실행시키고 상기 제2 자바 애플리케이션의 소멸시 상기 백그라운드에서 실행되던 상기 제1 자바 애플리케이션을 포어그라운드(foreground)에서 실행하는 제3 실행 유형 정보 중 어느 하나인 것일 수 있다.
또한 본 발명에 따른 자바 애플리케이션 관리 방법에 있어서, 상기 단계 (b)는, 상기 실행 유형 정보가 상기 제1 실행 유형 정보이면 상기 제1 자바 애플리케이션의 실행 상태를 소멸 상태로 변경하도록 제어하고, 상기 실행 유형 정보가 상기 제2 실행 유형 정보이면 상기 제1 자바 애플리케이션의 실행 상태를 일시 정지 상태로 변경하도록 제어하고, 상기 실행 유형 정보가 상기 제3 실행 유형 정보이면 상기 제1 자바 애플리케이션의 실행 상태를 백그라운드 실행 상태로 변경하도록 제어하는 단계를 포함하는 것일 수 있다.
또한 본 발명에 따른 자바 애플리케이션 관리 방법에 있어서, 상기 단계 (d)는, 상기 실행 유형 정보가 상기 제1 실행 유형 정보이면 상기 제1 자바 애플리케이션의 실행 상태를 시작 상태로 변경하도록 제어하고, 상기 실행 유형 정보가 상기 제2 실행 유형 정보이면 상기 제1 자바 애플리케이션의 실행 상태를 속행 상태로 변경하도록 제어하고, 상기 실행 유형 정보가 상기 제3 실행 유형 정보이면 상기 제1 자바 애플리케이션의 실행 상태를 포어그라운드 실행 상태로 변경하도록 제어하는 단계를 포함하는 것일 수 있다.
또한 본 발명에 따른 자바 애플리케이션 관리 방법에 있어서, 상기 실행 유형 정보가 상기 제2 실행 유형 정보 또는 상기 제3 실행 유형 정보로서 지정되지 않은 경우, 상기 실행 유형 정보는 상기 제1 실행 유형 정보인 것일 수 있다.
삭제
또한 본 발명에 따른 자바 애플리케이션 관리 방법에 있어서, 상기 단계 (d-1)은, 상기 제2 자바 애플리케이션과 상기 제1 자바 애플리케이션 사이의 통신을 통하여 상기 공유된 정보를 적용하도록 제어하는 단계를 포함하는 것일 수 있다.
또한 본 발명에 따른 자바 애플리케이션 관리 방법에 있어서, 상기 단계 (d-1)은, 상기 실행 유형 정보가 상기 제2 실행 유형 정보 또는 상기 제3 실행 유형 정보인 경우에만 상기 공유된 정보를 상기 제1 자바 애플리케이션에 적용하도록 제어하는 단계를 포함하는 것일 수 있다.
또한 본 발명에 따른 자바 애플리케이션 관리 방법에 있어서, 상기 제1 자바 애플리케이션 또는 상기 제2 자바 애플리케이션은 Xlet 형태의 자바 애플리케이션인 것일 수 있다.
또한 본 발명은 사용자 장치에서의 자바 애플리케이션 관리 방법으로서, (a) 제1 자바 애플리케이션으로부터 제2 자바 애플리케이션의 실행 요청을 수신하는 단계와, (b) 상기 제1 자바 애플리케이션의 실행 상태를 일시 정지 상태로 변경하도록 제어하는 단계와, (c) 상기 제2 자바 애플리케이션을 초기화하고 실행하도록 제어하는 단계와, (d) 상기 제2 자바 애플리케이션으로부터 상기 제2 자바 애플리케이션의 소멸 요청을 수신하는 경우 상기 제2 자바 애플리케이션을 소멸시키도록 제어하고 상기 일시 정지된 제1 자바 애플리케이션의 실행 상태를 속행 상태로 변경하도록 제어하는 단계를 포함를 포함하되, 상기 실행 요청은 상기 사용자 장치의 시스템 자원의 상태에 따라서 상기 제1 자바 애플리케이션에서 생성되는 것이고, 상기 제1 자바 애플리케이션 및 상기 제2 자바 애플리케이션은 정보를 공유하는 것이고, 상기 단계 (d)는, (d-1) 상기 제2 자바 애플리케이션에서 설정된 상기 공유된 정보를 상기 제1 자바 애플리케이션에 적용하도록 제어하는 단계를 포함하는 것인 자바 애플리케이션 관리 방법을 제공한다.
본 발명에 따른 자바 애플리케이션 관리 방법에 있어서, 상기 제1 자바 애플리케이션은 사용자 입력을 수신하는 사용자 인터페이스를 포함하는 것이고, 상기 제1 자바 애플리케이션은 상기 사용자 인터페이스를 통하여 상기 사용자 입력을 수신하면 상기 제2 자바 애플리케이션의 실행 요청을 생성하는 것일 수 있다.
또한 본 발명에 따른 자바 애플리케이션 관리 방법에 있어서, 상기 제2 자바 애플리케이션의 실행 요청은 상기 제2 자바 애플리케이션의 획득 경로를 포함하는 것일 수 있다.
또한 본 발명에 따른 자바 애플리케이션 관리 방법에 있어서, 상기 단계 (c)는, 상기 획득 경로를 이용하여 상기 제2 자바 애플리케이션을 획득하는 단계를 포함하는 것일 수 있다.
삭제
또한 본 발명에 따른 자바 애플리케이션 관리 방법에 있어서, 상기 단계 (d-1)은, 상기 제2 자바 애플리케이션과 상기 제1 자바 애플리케이션 사이의 통신을 통하여 상기 공유된 정보를 적용하도록 제어하는 단계를 포함하는 것일 수 있다.
또한 본 발명에 따른 자바 애플리케이션 관리 방법에 있어서, 상기 제1 자바 애플리케이션 또는 상기 제2 자바 애플리케이션은 Xlet 형태의 자바 애플리케이션인 것일 수 있다.
또한 본 발명은 사용자 장치에서의 자바 애플리케이션 관리 방법으로서, (a) 제1 자바 애플리케이션으로부터 제2 자바 애플리케이션의 실행 요청을 수신하는 단계와, (b) 상기 제1 자바 애플리케이션의 실행 상태를 백그라운드 실행 상태로 변경하도록 제어하는 단계와, (c) 상기 제2 자바 애플리케이션을 초기화하고 실행하도록 제어하는 단계와, (d) 상기 제2 자바 애플리케이션으로부터 상기 제2 자바 애플리케이션의 소멸 요청을 수신하는 경우 상기 제2 자바 애플리케이션을 소멸시키도록 제어하고 상기 백그라운드 실행 상태이던 상기 제1 자바 애플리케이션의 실행 상태를 포어그라운드 실행 상태로 변경하도록 제어하는 단계를 포함하되, 상기 실행 요청은 상기 사용자 장치의 시스템 자원의 상태에 따라서 상기 제1 자바 애플리케이션에서 생성되는 것이고, 상기 제1 자바 애플리케이션 및 상기 제2 자바 애플리케이션은 정보를 공유하는 것이고, 상기 단계 (d)는, (d-1) 상기 제2 자바 애플리케이션에서 설정된 상기 공유된 정보를 상기 제1 자바 애플리케이션에 적용하도록 제어하는 단계를 포함하는 것인 자바 애플리케이션 관리 방법을 제공한다.
본 발명에 따른 자바 애플리케이션 관리 방법에 있어서, 상기 제1 자바 애플리케이션은 사용자 입력을 수신하는 사용자 인터페이스를 포함하는 것이고, 상기 제1 자바 애플리케이션은 상기 사용자 인터페이스를 통하여 상기 사용자 입력을 수신하면 상기 제2 자바 애플리케이션의 실행 요청을 생성하는 것일 수 있다.
또한 본 발명에 따른 자바 애플리케이션 관리 방법에 있어서, 상기 제2 자바 애플리케이션의 실행 요청은 상기 제2 자바 애플리케이션의 획득 경로를 포함하는 것일 수 있다.
또한 본 발명에 따른 자바 애플리케이션 관리 방법에 있어서, 상기 단계 (c)는, 상기 획득 경로를 이용하여 상기 제2 자바 애플리케이션을 획득하는 단계를 포함하는 것일 수 있다.
삭제
또한 본 발명에 따른 자바 애플리케이션 관리 방법에 있어서, 상기 단계 (d-1)은, 상기 제2 자바 애플리케이션과 상기 제1 자바 애플리케이션 사이의 통신을 통하여 상기 공유된 정보를 적용하도록 제어하는 단계를 포함하는 것일 수 있다.
또한 본 발명에 따른 자바 애플리케이션 관리 방법에 있어서, 상기 제1 자바 애플리케이션 또는 상기 제2 자바 애플리케이션은 Xlet 형태의 자바 애플리케이션인 것일 수 있다.
또한 본 발명은 상기 자바 애플리케이션 관리 방법의 각 단계를 실현시키기 위한 프로그램을 기록한 컴퓨터로 판독 가능한 기록 매체를 제공한다.
본 발명에 따르면 서로 다른 자바 애플리케이션들을 서로 연동되는 하나의 자바 애플리케이션으로 간주할 수 있어서 자바 애플리케이션의 확장성을 높일 수 있고 사용자 장치의 시스템 자원을 효율적으로 관리할 수 있다.
이하, 본 발명의 자바 애플리케이션 관리 방법 및 이를 실현시키기 위한 프로그램을 기록한 컴퓨터로 판독 가능한 기록 매체의 실시예를 첨부한 도면을 참조로 보다 구체적으로 설명한다.
도 1은 본 발명에 따른 자바 애플리케이션 관리 방법이 실행되는 실행 환경 을 나타내는 도면이다.
도 1을 참조하면, 실행 환경은 자바 애플리케이션 서버(100), 사용자 장치(200)를 포함할 수 있다.
자바 애플리케이션 서버(100)는 자바 애플리케이션을 저장하며 사용자 장치(200)의 요청에 따라서 자바 애플리케이션을 사용자 장치(200)에게로 전송하는 장치이다.
사용자 장치(200)는 자바 애플리케이션 서버(100)로부터 수신한 자바 애플리케이션을 실행하여 제공하는 장치이다. 사용자 장치(200)는 예컨대 디지털 텔레비전, 셋탑박스, 블루레이 플레이어 또는 이동통신 단말기일 수 있다.
자바 애플리케이션 서버(100)와 사용자 장치(200)는 인터넷 또는 무선망 등의 통신망을 통하여 서로 연결된다.
본원 명세서에서 "서비스 개발자"는 자바 애플리케이션 서버(100) 또는 사용자 장치(200)에서 실행되는 자바 애플리케이션을 개발하는 사람을 지칭하며, "사용자"는 사용자 장치(200)를 사용하며, 서비스 개발자에 의해서 개발된 자바 애플리케이션을 기반으로 하는 서비스를 자바 애플리케이션 서버(100)를 통하여 제공받는 사람을 지칭한다.
사용자 장치(200)는 부트 프로그램(210), 런타임 프로그램(230) 및 자바 애플리케이션(290)을 포함할 수 있다.
부트 프로그램(210)은 사용자 장치(200) 또는 사용자 장치(200)에서 판독 가능한 저장 매체에 배치되며, 사용자 장치(200)의 상태를 확인하고 적절한 런타임 프로그램(230)을 탐색하고 획득한다.
런타임 프로그램(230)은 자바 애플리케이션(290)을 위한 런타임 환경을 제공한다.
런타임 프로그램(230)은 예컨대 X2let API(231), 메소드 호출(Method Invocation) API(233), 자원 지원(Resource Support) API(235), 애플리케이션 관리자(Application Manager) API(237), 디버그 지원 툴(239)을 포함할 수 있다.
X2let API(231)는 본 출원인에 의해서 개발된 API로서, Java TV 표준의 인핸스드(enhanced) Xlet이다. X2let API(231)는 자바 애플리케이션 서버(100)로부터 자바 애플리케이션(290)을 다운로드하여 실행하기 위한 기능을 제공한다.
메소드 호출 API(233)는 본 출원인에 의해서 개발된 API로서, 사용자 장치(200) 측에서 자바 애플리케이션 서버(100) 측의 메소드를 호출하기 위한 API이다.
자원 지원 API(235)는 본 출원인에 의해서 개발된 API로서, 사용자 장치(200)에서의 메모리-효율적(memory-effective) 캐싱(cache)과 리소스 다운로딩을 지원한다. 자원 지원 API(235)는 이미지, 바이트 열(byte array), 사운드(sound), 자바 클래스 등의 자원을 취급할 수 있다.
애플리케이션 관리자 API(237)는 본 출원인에 의해서 개발된 API로서, 자바 애플리케이션(290)의 라이프사이클(life-cycle)을 관리하는 API이다. 애플리케이션 관리자 API(239)을 통하여 자바 애플리케이션(290)을 시작하거나, 일시 정지하거나, 속행하거나, 백그라운드 또는 포어그라운드에서 실행하거나 또는 소멸시키는 등의 관리를 수행할 수 있다.
디버그 지원 툴(239)은 본 출원인에 의해서 개발된 API로서 디버깅을 지원한다.
자바 애플리케이션(290)은 서비스 개발자에 의해서 개발되고 사용자 장치(200) 내에서 실행되는 자바 애플리케이션이다.
자바 애플리케이션(290)은 루트(root) 자바 애플리케이션(293)과 사용자 자바 애플리케이션(296)으로 구분될 수 있다.
루트 자바 애플리케이션(293)은 사용자 장치(200)에서 실행되는 기반 애플리케이션(base application)이다. 예컨대 루트 자바 애플리케이션(293)은 사용자 장치(200)에서 의무적으로 실행되어야 하는 자바 애플리케이션이다. 루트 자바 애플리케이션(293)은 예컨대 사용자 장치(200)의 실행 초기에 실행되어 사용자 장치(200)의 화면 상에 표시되는 자바 애플리케이션이다. 루트 자바 애플리케이션(293)은 사용자 자바 애플리케이션(296)의 선택 및 실행을 위한 사용자 인터페이스를 포함할 수 있다. 사용자 인터페이스는 예컨대 GUI 형태로 구현되며, 사용자는 사용자 인터페이스를 통하여 사용자 자바 애플리케이션(296)의 선택 및 실행을 지시할 수 있다.
사용자 자바 애플리케이션(296)은 사용자의 선택에 의해서 실행되는 자바 애플리케이션이다. 사용자 자바 애플리케이션(296)은 루트 자바 애플리케이션(293)을 제외한 모든 자바 애플리케이션을 지칭한다.
루트 자바 애플리케이션(293)은 예컨대 사용자 장치(200)의 제조사가 제조 하여 사용자 장치(200)에 배치되며, 사용자 자바 애플리케이션(296)은 서비스 개발자가 제조하여 자바 애플리케이션 서버(100)를 통하여 사용자 장치(200)에서 실행된다.
이하 도 1에서 도시된 실행 환경을 참조로 하여, 본 발명에 따른 자바 애플리케이션 관리 방법에 대해서 보다 상세히 설명한다.
도 2는 본 발명에 따른 자바 애플리케이션 관리 방법의 예시적인 흐름도이다.
우선 제1 자바 애플리케이션으로부터 실행 유형 정보를 포함하는 제2 자바 애플리케이션의 실행 요청을 수신한다(S110).
제1 자바 애플리케이션은 예컨대 전술한 루트 자바 애플리케이션(도 1의 293)이다. 또는 제1 자바 애플리케이션은 사용자 애플리케이션(도 1의 296)일 수도 있다. 제2 자바 애플리케이션은 예컨대 전술한 사용자 애플리케이션(도 1의 296)이다. 제1 자바 애플리케이션 또는 제2 자바 애플리케이션은 임베디드 장치인 사용자 장치(200) 내에서의 실행을 위하여 Xlet 형태의 자바 애플리케이션인 것이 바람직하다.
도 3은 본 발명에 따른 자바 애플리케이션 관리 방법에 있어서 제1 자바 애플리케이션과 제2 자바 애플리케이션의 관계를 나타내는 도면이다.
루트 자바 애플리케이션은 자식1 자바 애플리케이션의 실행을 요청할 수 있다. 자식1 자바 애플리케이션은 자식2 자바 애플리케이션의 실행을 요청할 수 있다.
루트 자바 애플리케이션과 자식1 자바 애플리케이션 사이에서는, 루트 자바 애플리케이션이 제1 자바 애플리케이션이고 자식1 자바 애플리케이션이 제2 자바 애플리케이션일 수 있다.
그러나 자식1 자바 애플리케이션과 자식2 자바 애플리케이션 사이에서는, 자식1 자바 애플리케이션이 제1 자바 애플리케이션이고 자식2 자바 애플리케이션이 제2 자바 애플리케이션일 수 있다.
한편 제1 자바 애플리케이션은 사용자 입력을 수신하는 사용자 인터페이스를 포함할 수 있다.
사용자 인터페이스는 예컨대 제2 자바 애플리케이션의 실행을 위한 박스 형태의 그래픽 사용자 인터페이스이다. 사용자는 박스 형태의 그래픽 사용자 인터페이스를 이용하여 사용자 입력을 인가한다. 제1 자바 애플리케이션은 사용자 인터페이스를 통하여 사용자 입력을 수신하면 제2 자바 애플리케이션의 실행 요청을 생성한다.
제2 자바 애플리케이션의 실행 요청은 제1 자바 애플리케이션을 실행하던 도중에 제2 자바 애플리케이션을 실행하라는 요청이다. 제2 자바 애플리케이션의 실행 요청은 전술하듯이 실행 유형 정보를 포함한다.
실행 유형 정보는 제1 실행 유형 정보, 제2 실행 유형 정보 및 제3 실행 유형 정보 중 어느 하나 일 수 있다.
제1 실행 유형 정보는 제2 자바 애플리케이션의 실행시 제1 자바 애플리케이션을 소멸(destroy)시키고, 제2 자바 애플리케이션의 소멸시 제1 자바 애플리케이 션을 다시 시작(start)하는 실행 유형이다.
제2 실행 유형 정보는 제2 자바 애플리케이션의 실행시 제1 자바 애플리케이션의 실행을 일시 정지(pause)시키고, 제2 자바 애플리케이션의 소멸시 일시 정지된 제1 자바 애플리케이션의 실행을 속행(unpause)하는 실행 유형이다.
제3 실행 유형 정보는 제2 자바 애플리케이션의 실행시 제1 자바 애플리케이션을 백그라운드(background)에서 실행시키고, 제2 자바 애플리케이션의 소멸시 백그라운드에서 실행되던 제1 자바 애플리케이션을 포어그라운드(foreground)에서 실행하는 실행 유형이다.
따라서 본 발명에 따르면 제2 자바 애플리케이션이 실행되는 경우 실행 유형 정보를 기초로 제1 자바 애플리케이션의 상태를 결정할 수 있다.
한편 실행 유형 정보가 전술한 제2 실행 유형 정보 또는 제3 실행 유형 정보로서 지정되지 않은 경우, 실행 유형 정보를 제1 실행 유형 정보로 간주할 수 있다.
즉 실행 유형 정보가 특정되지 않은 상태에서 제2 애플리케이션의 실행 요청을 수신하면, 실행 유형 정보를 제1 실행 유형 정보로 간주한 후 이후 단계를 수행할 수 있다.
또한 제2 자바 애플리케이션의 실행 요청은 제2 자바 애플리케이션의 획득 경로를 포함할 수 있다.
예컨대 제2 자바 애플리케이션이 사용자 장치(도 1의 200) 내에 미리 저장되는 경우, 제2 자바 애플리케이션의 획득 경로는 사용자 장치(도 1의 200) 내의 저 장 위치를 나타낼 수 있다.
예컨대 제2 자바 애플리케이션이 사용자 장치(도 1의 200) 내에 미리 저장되지 않고 자바 애플리케이션 서버(100) 내에 저장되는 경우, 제2 자바 애플리케이션의 획득 경로는 자바 애플리케이션 서버(100) 내의 저장 위치를 나타낼 수 있다.
제2 자바 애플리케이션의 획득 경로는 예컨대 URL(uniform resource locator) 형태로 표시된다.
다시 도 1을 참조하여 설명을 계속한다.
단계 S110을 통하여 제2 자바 애플리케이션의 실행 요청을 수신하면, 실행 유형 정보에 따라서 제1 자바 애플리케이션의 실행 상태를 변경하도록 제어한다(S130).
전술하듯이 실행 유형 정보는 제1 실행 유형 정보, 제2 실행 유형 정보 및 제3 실행 유형 정보 중 어느 하나 일 수 있다.
도 4는 본 발명에 따른 자바 애플리케이션 관리 방법에 있어서 실행 유형 정보에 따라서 제1 자바 애플리케이션의 실행 상태를 변경하도록 제어하는 단계를 보다 상세히 나타내는 흐름도이다.
실행 유형 정보가 제1 실행 유형 정보이면 제1 자바 애플리케이션의 실행 상태를 소멸 상태로 변경하도록 제어한다(S131, S132).
실행 유형 정보가 제2 실행 유형 정보이면 제1 자바 애플리케이션의 실행 상태를 일시 정지 상태로 변경하도록 제어한다(S134, S135).
실행 유형 정보가 제3 실행 유형 정보이면 제1 자바 애플리케이션의 실행 상 태를 백그라운드 실행 상태로 변경하도록 제어한다(S137, S138).
다시 도 1을 참조하여 설명을 계속한다.
단계 S110을 통하여 제2 자바 애플리케이션의 실행 요청을 수신하면, 단계 S130과 병렬적으로 또는 단계 S130을 수행한 이후에, 제2 자바 애플리케이션을 초기화하고 실행하도록 제어한다(S150).
즉 제2 자바 애플리케이션을 실행하여 사용자에게 제공한다.
단계 S150을 통하여 제2 자바 애플리케이션이 실행되는 도중에, 제2 자바 애플리케이션으로부터 제2 자바 애플리케이션의 소멸 요청을 수신하는 경우, 제2 자바 애플리케이션을 소멸시키도록 제어하고, 단계 S130에서 변경된 제1 자바 애플리케이션의 실행 상태를 재변경하여 제1 자바 애플리케이션이 다시 실행되도록 제어한다(S170).
도 5는 본 발명에 따른 자바 애플리케이션 관리 방법에 있어서 실행 유형 정보에 따라서 제1 자바 애플리케이션의 실행 상태를 재변경하도록 제어하는 단계를 보다 상세히 나타내는 흐름도이다.
실행 유형 정보가 제1 실행 유형 정보이면 제1 자바 애플리케이션의 실행 상태를 시작 상태로 재변경하도록 제어한다(S171, S172).
실행 유형 정보가 제2 실행 유형 정보이면 제1 자바 애플리케이션의 실행 상태를 속행 상태로 재변경하도록 제어한다(S174, S175).
실행 유형 정보가 제3 실행 유형 정보이면 제1 자바 애플리케이션의 실행 상태를 포어그라운드 실행 상태로 재변경하도록 제어한다(S177, S178).
한편 제1 자바 애플리케이션 및 제2 자바 애플리케이션은 정보를 공유할 수 있다.
단계 S170에서는 제2 자바 애플리케이션에 의해서 설정되거나 변경된 것인 상기 공유된 정보를 제1 자바 애플리케이션에 적용하도록 제어할 수 있다.
제2 자바 애플리케이션과 제1 자바 애플리케이션 사이의 통신을 통하여 공유된 정보를 제1 자바 애플리케이션에 적용할 수 있다.
특히 실행 유형 정보가 제2 실행 유형 정보 또는 제3 실행 유형 정보인 경우에만, 공유된 정보를 제1 자바 애플리케이션에 적용하도록 제어할 수 있다(S175, S178에서의 선택적 사항임).
즉 제1 실행 유형 정보인 경우 제2 자바 애플리케이션이 실행되는 경우, 제1 자바 애플리케이션은 소멸 상태이다. 따라서 공유된 정보의 적용을 위하여 제2 자바 애플리케이션과 제1 자바 애플리케이션 사이에 통신이 수행되지 못한다. 따라서 실행 유형 정보가 제2 실행 유형 정보 또는 제3 실행 유형 정보인 경우에만, 공유된 정보를 제1 자바 애플리케이션에 적용하도록 제어할 수 있다.
도 6은 본 발명에 따른 자바 애플리케이션 관리 방법에 있어서 애플리케이션 관리자가 제2 실행 정보를 이용하여 자바 애플리케이션의 실행 상태를 변경하는 구성의 예를 나타내는 도면이다.
애플리케이션 관리자는 전술한 애플리케이션 관리자 API(도 1의 237) 기능을 구현하는 프로그램이다.
우선 루트 자바 애플리케이션("루트"로 표시됨)은 애플리케이션 관리자에게 자식1 자바 애플리케이션("자식1"로 표시됨)의 실행 요청을 전송한다.
루트 자바 애플리케이션과 자식1 자바 애플리케이션 사이에서는, 루트 자바 애플리케이션이 제1 자바 애플리케이션이고 자식1 자바 애플리케이션이 제2 자바 애플리케이션이다.
자식1 자바 애플리케이션의 실행 요청은 startApp(root, Bound, c1URL)로 표시된다.
startApp(root, Bound, c1URL)는 root, 즉 루트 자바 애플리케이션이 Bound, 즉 제2 실행 유형 정보를 기초로 획득 경로 c1URL에 의해서 획득되는 자바 애플리케이션, 즉 자식1 자바 애플리케이션을 실행하도록 요청하는 기능으로서, 본 출원인에 의해서 정의된 기능이다.
애플리케이션 관리자는 startApp(root, Bound, c1URL)을 수신하면, 실행 유형 정보가 제2 실행 유형 정보이므로 pauseXlet() 기능을 이용하여 루트 자바 애플리케이션의 실행 상태를 일시 정지 상태로 변경하도록 제어한다.
또한 initXlet()을 이용하여 자식1 자바 애플리케이션을 초기화하고, startXlet()을 이용하여 자식1 자바 애플리케이션을 시작한다.
pauseXlet(), initXlet() 및 startXlet()은 각각 자바 애플리케이션의 실행 상태를 일시 정지 상태로 변경하고, 자바 애플리케이션을 초기화하고, 자바 애플리케이션을 시작하는 기능으로서, 본 출원인에 의해서 정의된 기능이다.
이후 자식1 자바 애플리케이션은 실행 도중에 애플리케이션 관리자에게 자식2 자바 애플리케이션("자식2"로 표시됨)의 실행 요청을 전송한다.
자식1 자바 애플리케이션과 자식2 자바 애플리케이션 사이에서는, 자식1 자바 애플리케이션 자바 애플리케이션이 제1 자바 애플리케이션이고 자식2 자바 애플리케이션이 제2 자바 애플리케이션이다.
자식2 자바 애플리케이션의 실행 요청은 startApp(child1, Bound, c2URL)로 표시된다.
startApp(child1, Bound, c2URL)는 child1, 즉 자식1 자바 애플리케이션이 Bound, 즉 제2 실행 유형 정보를 기초로 획득 경로 c2URL에 의해서 획득되는 자바 애플리케이션, 즉 자식2 자바 애플리케이션을 실행하도록 요청하는 기능으로서, 본 출원인에 의해서 정의된 기능이다.
애플리케이션 관리자는 startApp(child1, Bound, c2URL)을 수신하면, 실행 유형 정보가 제2 실행 유형 정보이므로 pauseXlet() 기능을 이용하여 자식1 자바 애플리케이션의 실행 상태를 일시 정지 상태로 변경하도록 제어한다.
또한 initXlet()을 이용하여 자식2 자바 애플리케이션을 초기화하고, startXlet()을 이용하여 자식2 자바 애플리케이션을 시작한다.
한편 애플리케이션 관리자는 자식2 자바 애플리케이션의 실행 도중에 자식2 자바 애플리케이션으로부터 자식2 자바 애플리케이션의 소멸 요청을 수신할 수 있다.
destroyApp(child2)는 child2, 즉 자식2 자바 애플리케이션의 소멸을 요청하는 기능으로서, 본 출원인에 의해서 정의된 기능이다.
애플리케이션 관리자는 destroyApp(child2)를 수신하면, destroyXlet()을 이 용하여 자식2 자바 애플리케이션을 소멸시키도록 제어한다.
destroyXlet()은 자바 애플리케이션을 소멸시키도록 제어하는 기능으로서, 본 출원인에 의해서 정의된 기능이다.
애플리케이션 관리자는 일시 정지 상태로 변경되었던 자식1 자바 애플리케이션의 실행 상태를 다시 속행 상태로 변경한다. 이를 위하여 애플리케이션 관리자는 startXlet()을 이용하여 자식1 자바 애플리케이션을 시작한다.
한편 애플리케이션 관리자는 자식1 자바 애플리케이션의 실행 도중에 자식1 자바 애플리케이션으로부터 자식1 자바 애플리케이션의 소멸 요청을 수신할 수 있다.
destroyApp(child1)는 child1, 즉 자식1 자바 애플리케이션의 소멸을 요청하는 기능으로서, 본 출원인에 의해서 정의된 기능이다.
애플리케이션 관리자는 destroyApp(child1)를 수신하면, destroyXlet()을 이용하여 자식1 자바 애플리케이션을 소멸시키도록 제어한다.
애플리케이션 관리자는 일시 정지 상태로 변경되었던 루터 자바 애플리케이션의 실행 상태를 다시 속행 상태로 변경한다. 이를 위하여 애플리케이션 관리자는 startXlet()을 이용하여 루트 자바 애플리케이션을 시작한다.
도 6을 참조로 하면 사용자 장치 내에서 1 자바 애플리케이션과 제2 자바 애플리케이션 관계가 다수 설정될 수 있다. 즉 자식1 자바 애플리케이션도 자식2 자바 애플리케이션을 실행하도록 요청할 수 있다.
도 7은 본 발명에 따른 자바 애플리케이션 관리 방법에 있어서 애플리케이션 관리자가 제1 실행 정보를 이용하여 자바 애플리케이션의 실행 상태를 변경하는 구성의 예를 나타내는 도면이다.
애플리케이션 관리자는 전술한 애플리케이션 관리자 API(도 1의 237) 기능을 구현하는 프로그램이다.
우선 루트 자바 애플리케이션("루트"로 표시됨)은 애플리케이션 관리자에게 A 자바 애플리케이션("A"로 표시됨)의 실행 요청을 전송한다.
A 자바 애플리케이션의 실행 요청은 startApp(root, Standard, aURL)로 표시된다.
startApp(root, Standard, aURL)는 root, 즉 루트 자바 애플리케이션이 Standard, 즉 제1 실행 유형 정보를 기초로 획득 경로 aURL에 의해서 획득되는 자바 애플리케이션, 즉 A 자바 애플리케이션을 실행하도록 요청하는 기능으로서, 본 출원인에 의해서 정의된 기능이다.
애플리케이션 관리자는 startApp(root, Standard, aURL)을 수신하면, 실행 유형 정보가 제1 실행 유형 정보이므로 destroyXlet() 기능을 이용하여 루트 자바 애플리케이션의 실행 상태를 소멸 상태로 변경하도록 제어한다.
또한 initXlet()을 이용하여 A 자바 애플리케이션을 초기화하고, startXlet()을 이용하여 A 자바 애플리케이션을 시작한다.
한편 애플리케이션 관리자는 A 자바 애플리케이션의 실행 도중에 A 자바 애플리케이션으로부터 A 자바 애플리케이션의 소멸 요청을 수신할 수 있다.
destroyApp(A)는 A, 즉 A 자바 애플리케이션의 소멸을 요청하는 기능으로서, 본 출원인에 의해서 정의된 기능이다.
애플리케이션 관리자는 destroyApp(A)를 수신하면, destroyXlet()을 이용하여 A 자바 애플리케이션을 소멸시키도록 제어한다.
애플리케이션 관리자는 소멸 상태로 변경되었던 루트 자바 애플리케이션의 실행 상태를 시작 상태로 변경한다. 이를 위하여 애플리케이션 관리자는 startXlet()을 이용하여 루트 자바 애플리케이션을 시작한다.
한편 루트 자바 애플리케이션("루트"로 표시됨)은 애플리케이션 관리자에게 B 자바 애플리케이션("B"로 표시됨)의 실행 요청을 전송한다.
B 자바 애플리케이션의 실행 요청은 startApp(root, Standard, bURL)로 표시된다.
startApp(root, Standard, bURL)는 root, 즉 루트 자바 애플리케이션이 Standard, 즉 제1 실행 유형 정보를 기초로 획득 경로 bURL에 의해서 획득되는 자바 애플리케이션, 즉 B 자바 애플리케이션을 실행하도록 요청하는 기능으로서, 본 출원인에 의해서 정의된 기능이다.
애플리케이션 관리자는 startApp(root, Standard, bURL)을 수신하면, 실행 유형 정보가 제1 실행 유형 정보이므로 destroyXlet() 기능을 이용하여 루트 자바 애플리케이션의 실행 상태를 소멸 상태로 변경하도록 제어한다.
또한 initXlet()을 이용하여 B 자바 애플리케이션을 초기화하고, startXlet()을 이용하여 B 자바 애플리케이션을 시작한다.
한편 애플리케이션 관리자는 B 자바 애플리케이션의 실행 도중에 B 자바 애 플리케이션으로부터 B 자바 애플리케이션의 소멸 요청을 수신할 수 있다.
destroyApp(B)는 B, 즉 B 자바 애플리케이션의 소멸을 요청하는 기능으로서, 본 출원인에 의해서 정의된 기능이다.
애플리케이션 관리자는 destroyApp(B)를 수신하면, destroyXlet()을 이용하여 B 자바 애플리케이션을 소멸시키도록 제어한다.
애플리케이션 관리자는 소멸 상태로 변경되었던 루트 자바 애플리케이션의 실행 상태를 시작 상태로 변경한다. 이를 위하여 애플리케이션 관리자는 startXlet()을 이용하여 루트 자바 애플리케이션을 시작한다.
한편 본 발명에 따른 자바 애플리케이션 관리 방법에 있어서 애플리케이션 관리자가 제3 실행 정보를 이용하여 자바 애플리케이션의 실행 상태를 변경하는 구성은 전술한 도 6의 구성을 참조할 수 있으므로 생략한다.
다만 도 6에서 pauseXlet() 기능 대신에 자바 애플리케이션을 백그라운드 상태에서 실행하도록 제어하는 background() 기능을 사용하는 점과 백그라운드 상태에서 실행되던 제1 자바 애플리케이션을 포어그라운드 상태에서 실행되도록 변경하는 기능을 사용하는 점이 차이점이다.
도 8은 본 발명에 따른 자바 애플리케이션 관리 방법의 다른 예시적인 흐름도이다.
우선 제1 자바 애플리케이션으로부터 제2 자바 애플리케이션의 실행 요청을 수신한다(S210).
단계 S210을 통하여 제2 자바 애플리케이션의 실행 요청을 수신하면, 제1 자 바 애플리케이션의 실행 상태를 일시 정지 상태로 변경하도록 제어한다(S230).
단계 S210을 통하여 제2 자바 애플리케이션의 실행 요청을 수신하면, 단계 S230과 병렬적으로 또는 단계 S230을 수행한 이후에, 제2 자바 애플리케이션을 초기화하고 실행하도록 제어한다(S250).
즉 제2 자바 애플리케이션을 실행하여 사용자에게 제공한다.
단계 S250을 통하여 제2 자바 애플리케이션이 실행되는 도중에, 제2 자바 애플리케이션으로부터 제2 자바 애플리케이션의 소멸 요청을 수신하는 경우, 제2 자바 애플리케이션을 소멸시키도록 제어하고 일시 정지된 제1 자바 애플리케이션의 실행 상태를 속행 상태로 변경하도록 제어한다(S270).
도 8을 참조로 설명되는 실시예는 실행 유형 정보를 별도로 포함하지 않고 자동적으로 제2 자바 애플리케이션의 실행시 제1 자바 애플리케이션의 실행을 일시 정지시키고 제2 자바 애플리케이션의 소멸시 일시 정지된 제1 자바 애플리케이션의 실행을 속행하도록 구성되는 점을 제외하면 전술한 도 2를 참조로 하는 실시예에서와 유사하므로 상세한 설명을 생략한다.
도 9는 본 발명에 따른 자바 애플리케이션 관리 방법의 또 다른 예시적인 흐름도이다.
우선 제1 자바 애플리케이션으로부터 제2 자바 애플리케이션의 실행 요청을 수신한다한다(S310).
단계 S310을 통하여 제2 자바 애플리케이션의 실행 요청을 수신하면, 제1 자바 애플리케이션의 실행 상태를 백그라운드 실행 상태로 변경하도록 제어한 다(S330).
단계 S310을 통하여 제2 자바 애플리케이션의 실행 요청을 수신하면, 단계 S330과 병렬적으로 또는 단계 S330을 수행한 이후에, 제2 자바 애플리케이션을 초기화하고 실행하도록 제어한다(S350).
즉 제2 자바 애플리케이션을 실행하여 사용자에게 제공한다.
단계 S350을 통하여 제2 자바 애플리케이션이 실행되는 도중에, 제2 자바 애플리케이션으로부터 제2 자바 애플리케이션의 소멸 요청을 수신하는 경우 제2 자바 애플리케이션을 소멸시키도록 제어하고 백그라운드 실행 상태이던 제1 자바 애플리케이션의 실행 상태를 포어그라운드 실행 상태로 변경하도록 제어한다(S370).
도 9를 참조로 설명되는 실시예는 실행 유형 정보를 별도로 포함하지 않고 자동적으로 제2 자바 애플리케이션의 실행시 제1 자바 애플리케이션을 백그라운드에서 실행시키고 제2 자바 애플리케이션의 소멸시 백그라운드에서 실행되던 제1 자바 애플리케이션을 포어그라운드에서 실행하도록 구성되는 점을 제외하면 전술한 도 2를 참조로 하는 실시예 또는 도 8을 참조로 하는 실시예에서와 유사하므로 상세한 설명을 생략한다.
이상에서 설명한 바와 같이 본 발명에 따르면 제1 자바 애플리케이션은 실행 유형 정보를 기초로 다른 제2 자바 애플리케이션의 실행을 요청할 수 있고, 제2 자바 애플리케이션의 실행시 자신은 소멸 상태로 되거나 일시 정지 상태로 되거나 백그라운드 실행 상태로 변경될 수 있다.
또한 제2 자바 애플리케이션이 소멸되는 경우에도, 제1 자바 애플리케이션은 제2 자바 애플리케이션에 의해서 설정되는 공유된 정보를 적용할 수 있다.
따라서 서로 다른 개발 주체에서 제1 자바 애플리케이션과 제2 자바 애플리케이션이 개발되더라도, 사용자 측면에서는 제1 자바 애플리케이션과 제2 자바 애플리케이션을 서로 연동되는 하나의 자바 애플리케이션으로 간주될 수 있다. 따라서 자바 애플리케이션의 확장성을 높일 수 있다.
예컨대 제1 자바 애플리케이션을 제조하는 서비스 개발자는 제2 자바 애플리케이션에 대한 획득 경로를 기초로 링크를 수행하는 것에 의해서 제2 자바 애플리케이션의 기능을 사용자에게 제공할 수 있다.
또한 루트 자바 애플리케이션 뿐만 아니라 사용자 자바 애플리케이션도 제1 자바 애플리케이션일수 있다. 사용자 자바 애플리케이션이 제1 자바 애플리케이션인 경우, 사용자 자바 애플리케이션은 다른 사용자 자바 애플리케이션을 실행 유형 정보를 기초로 제2 자바 애플리케이션으로서 실행시키며, 자신은 소멸 상태로 되거나 일시 정지 상태로 되거나 백그라운드 실행 상태로 변경될 수 있다.
즉 사용자 자바 애플리케이션도 다른 사용자 자바 애플리케이션에 대한 획득 경로를 기초로 링크를 수행하는 것에 의해서 다른 사용자 자바 애플리케이션의 기능을 사용자에게 제공할 수 있다.
따라서 예컨대 자바 애플리케이션을 이용하여 TV 포털 서비스, 스마트 폰 애플리케이션, 블루레이 기반 애플리케이션을 제공하는 경우 유용하게 적용될 수 있다. 즉 하나의 서비스 개발자가 원하는 모든 기능을 자신이 자바 애플리케이션으로 구현하지 않더라도 다른 서비스 개발자가 구현한 자바 애플리케이션을 전술한 실행 유형 정보를 기초로 실행하는 것에 의해서 다양한 TV 포털 서비스, 스마트 폰 애플리케이션, 블루레이 기반 애플리케이션을 구현할 수 있다.
또한 본 발명에 따르면 사용자 장치의 시스템 자원을 효율적으로 관리할 수 있다. 사용자 장치의 시스템 자원 상태에 따라서 제1 자바 애플리케이션은 제1 실행 유형 정보, 제2 실행 유형 정보 또는 제3 실행 유형 정보를 기초로 제2 자바 애플리케이션을 실행시키며, 자신은 소멸 상태로 되거나 일시 정지 상태로 되거나 백그라운드 실행 상태로 변경될 수 있다.
또한 본 발명은 전술한 본 발명에 따른 자바 애플리케이션 관리 방법의 각 단계를 실현시키기 위한 프로그램을 기록한 컴퓨터로 판독 가능한 기록 매체를 제공한다.
컴퓨터로 판독 가능한 기록 매체는 컴퓨터 시스템에 의하여 읽혀질 수 있도록 데이터, 즉 코드 또는 프로그램 형태의 데이터가 저장되는 모든 종류의 기록 장치를 지칭한다. 이러한 컴퓨터로 판독 가능한 기록 매체는 예컨대 ROM, RAM 등의 메모리와, CD-ROM, DVD-ROM 등의 저장 매체, 자기 테이프, 플로피 디스크 등의 자기 저장 매체, 광 데이터 저장 장치 등이며, 예컨대 인터넷을 통한 전송 형태로 구현되는 경우도 포함한다. 또한 이러한 컴퓨터로 판독 가능한 기록 매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어 분산 방식으로 컴퓨터가 판독 가능한 데이터가 저장되고 실행될 수 있다.
그러나 이러한 컴퓨터로 판독 가능한 기록 매체에 대한 상세한 설명은 도 1내지 도 9를 참조로 설명한 본 발명에 따른 자바 애플리케이션 관리 방법과 중복되 므로 생략한다.
비록 본 발명의 구성이 구체적으로 설명되었지만 이는 단지 본 발명을 예시적으로 설명한 것에 불과한 것으로, 본 발명이 속하는 기술분야에서 통상의 지식을 가지는 자라면 본 발명의 본질적인 특성에서 벗어나지 않는 범위 내에서 다양한 변형이 가능할 것이다.
따라서 본 명세서에 개시된 실시예들은 본 발명을 한정하기 위한 것이 아니라 설명하기 위한 것이고, 이러한 실시예에 의하여 본 발명의 사상과 범위가 한정되는 것은 아니다. 본 발명의 범위는 아래의 청구범위에 의해 해석되어야 하며, 그와 동등한 범위 내에 있는 모든 기술은 본 발명의 권리범위에 포함되는 것으로 해석되어야 할 것이다.
이상 설명한 바와 같이, 본 발명에 따르면 제1 자바 애플리케이션은 실행 유형 정보를 기초로 다른 제2 자바 애플리케이션의 실행을 요청할 수 있고, 제2 자바 애플리케이션의 실행시 자신은 소멸 상태로 되거나 일시 정지 상태로 되거나 백그라운드 실행 상태로 변경될 수 있다.
또한 제2 자바 애플리케이션이 소멸되는 경우에도, 제1 자바 애플리케이션은 제2 자바 애플리케이션에 의해서 설정되는 공유된 정보를 적용할 수 있다.
따라서 서로 다른 개발 주체에서 제1 자바 애플리케이션과 제2 자바 애플리케이션이 개발되더라도, 사용자 측면에서는 제1 자바 애플리케이션과 제2 자바 애플리케이션을 서로 연동되는 하나의 자바 애플리케이션으로 간주될 수 있다. 따라 서 자바 애플리케이션의 확장성을 높일 수 있다.
또한 본 발명에 따르면 사용자 장치의 시스템 자원을 효율적으로 관리할 수 있다. 사용자 장치의 시스템 자원 상태에 따라서 제1 자바 애플리케이션은 제1 실행 유형 정보, 제2 실행 유형 정보 또는 제3 실행 유형 정보를 기초로 제2 자바 애플리케이션의 실행을 요청하며, 자신은 소멸 상태로 되거나 일시 정지 상태로 되거나 백그라운드 실행 상태로 변경될 수 있다.
도 1은 본 발명에 따른 자바 애플리케이션 관리 방법이 실행되는 실행 환경을 나타내는 도면.
도 2는 본 발명에 따른 자바 애플리케이션 관리 방법의 예시적인 흐름도.
도 3은 본 발명에 따른 자바 애플리케이션 관리 방법에 있어서 제1 자바 애플리케이션과 제2 자바 애플리케이션의 관계를 나타내는 도면.
도 4는 본 발명에 따른 자바 애플리케이션 관리 방법에 있어서 실행 유형 정보에 따라서 제1 자바 애플리케이션의 실행 상태를 변경하도록 제어하는 단계를 보다 상세히 나타내는 흐름도.
도 5는 본 발명에 따른 자바 애플리케이션 관리 방법에 있어서 실행 유형 정보에 따라서 제1 자바 애플리케이션의 실행 상태를 재변경하도록 제어하는 단계를 보다 상세히 나타내는 흐름도.
도 6은 본 발명에 따른 자바 애플리케이션 관리 방법에 있어서 애플리케이션 관리자가 제2 실행 정보를 이용하여 자바 애플리케이션의 실행 상태를 변경하는 구성의 예를 나타내는 도면.
도 7은 본 발명에 따른 자바 애플리케이션 관리 방법에 있어서 애플리케이션 관리자가 제1 실행 정보를 이용하여 자바 애플리케이션의 실행 상태를 변경하는 구성의 예를 나타내는 도면.
도 8은 본 발명에 따른 자바 애플리케이션 관리 방법의 다른 예시적인 흐름도.
도 9는 본 발명에 따른 자바 애플리케이션 관리 방법의 또 다른 예시적인 흐름도.
<도면의 주요부분에 대한 부호의 설명>
100: 자바 애플리케이션 서버 200: 사용자 장치
210: 부트 프로그램 230: 런타임 프로그램
231: X2let API 233: 메소드 호출 API
235: 자원 지원 API 237: 애플리케이션 관리자 AP
239: 디버그 지원 툴 290: 자바 애플리케이션

Claims (27)

  1. 사용자 장치에서의 자바 애플리케이션 관리 방법으로서,
    (a) 제1 자바 애플리케이션으로부터 실행 유형 정보를 포함하는 제2 자바 애플리케이션의 실행 요청을 수신하는 단계와,
    (b) 상기 실행 유형 정보에 따라서 상기 제1 자바 애플리케이션의 실행 상태를 변경하도록 제어하는 단계와,
    (c) 상기 제2 자바 애플리케이션을 초기화하고 실행하도록 제어하는 단계와,
    (d) 상기 제2 자바 애플리케이션으로부터 상기 제2 자바 애플리케이션의 소멸 요청을 수신하는 경우 상기 제2 자바 애플리케이션을 소멸시키도록 제어하고, 상기 변경된 상기 제1 자바 애플리케이션의 실행 상태를 재변경하여 상기 제1 자바 애플리케이션이 실행되도록 제어하는 단계
    를 포함하되,
    상기 실행 요청은 상기 사용자 장치의 시스템 자원의 상태에 따라서 상기 제1 자바 애플리케이션에서 생성되는 것이고,
    상기 제1 자바 애플리케이션 및 상기 제2 자바 애플리케이션은 정보를 공유하는 것이고,
    상기 단계 (d)는,
    (d-1) 상기 제2 자바 애플리케이션에서 설정된 상기 공유된 정보를 상기 제1 자바 애플리케이션에 적용하도록 제어하는 단계
    를 포함하는 것인 자바 애플리케이션 관리 방법.
  2. 제1항에 있어서,
    상기 제1 자바 애플리케이션은 사용자 입력을 수신하는 사용자 인터페이스를 포함하는 것이고,
    상기 제1 자바 애플리케이션은 상기 사용자 인터페이스를 통하여 상기 사용자 입력을 수신하면 상기 제2 자바 애플리케이션의 실행 요청을 생성하는 것인 자바 애플리케이션 관리 방법.
  3. 제1항에 있어서,
    상기 제2 자바 애플리케이션의 실행 요청은 상기 제2 자바 애플리케이션의 획득 경로를 포함하는 것인 자바 애플리케이션 관리 방법.
  4. 제3항에 있어서,
    상기 단계 (c)는,
    상기 획득 경로를 이용하여 상기 제2 자바 애플리케이션을 획득하는 단계
    를 포함하는 것인 자바 애플리케이션 관리 방법.
  5. 제1항에 있어서,
    상기 실행 유형 정보는,
    상기 제2 자바 애플리케이션의 실행시 상기 제1 자바 애플리케이션을 소멸(destroy)시키고 상기 제2 자바 애플리케이션의 소멸시 상기 제1 자바 애플리케이션을 다시 시작(start)하는 제1 실행 유형 정보와,
    상기 제2 자바 애플리케이션의 실행시 상기 제1 자바 애플리케이션의 실행을 일시 정지(pause)시키고 상기 제2 자바 애플리케이션의 소멸시 상기 일시 정지된 제1 자바 애플리케이션의 실행을 속행(unpause)하는 제2 실행 유형 정보와,
    상기 제2 자바 애플리케이션의 실행시 상기 제1 자바 애플리케이션을 백그라운드(background)에서 실행시키고 상기 제2 자바 애플리케이션의 소멸시 상기 백그 라운드에서 실행되던 상기 제1 자바 애플리케이션을 포어그라운드(foreground)에서 실행하는 제3 실행 유형 정보
    중 어느 하나인 것인 자바 애플리케이션 관리 방법.
  6. 제5항에 있어서,
    상기 단계 (b)는,
    상기 실행 유형 정보가 상기 제1 실행 유형 정보이면 상기 제1 자바 애플리케이션의 실행 상태를 소멸 상태로 변경하도록 제어하고,
    상기 실행 유형 정보가 상기 제2 실행 유형 정보이면 상기 제1 자바 애플리케이션의 실행 상태를 일시 정지 상태로 변경하도록 제어하고,
    상기 실행 유형 정보가 상기 제3 실행 유형 정보이면 상기 제1 자바 애플리케이션의 실행 상태를 백그라운드 실행 상태로 변경하도록 제어하는 단계
    를 포함하는 것인 자바 애플리케이션 관리 방법.
  7. 제5항에 있어서,
    상기 단계 (d)는,
    상기 실행 유형 정보가 상기 제1 실행 유형 정보이면 상기 제1 자바 애플리케이션의 실행 상태를 시작 상태로 변경하도록 제어하고,
    상기 실행 유형 정보가 상기 제2 실행 유형 정보이면 상기 제1 자바 애플리케이션의 실행 상태를 속행 상태로 변경하도록 제어하고,
    상기 실행 유형 정보가 상기 제3 실행 유형 정보이면 상기 제1 자바 애플리케이션의 실행 상태를 포어그라운드 실행 상태로 변경하도록 제어하는 단계
    를 포함하는 것인 자바 애플리케이션 관리 방법.
  8. 제5항에 있어서,
    상기 실행 유형 정보가 상기 제2 실행 유형 정보 또는 상기 제3 실행 유형 정보로서 지정되지 않은 경우, 상기 실행 유형 정보는 상기 제1 실행 유형 정보인 것인 자바 애플리케이션 관리 방법.
  9. 삭제
  10. 제1항에 있어서,
    상기 단계 (d-1)은,
    상기 제2 자바 애플리케이션과 상기 제1 자바 애플리케이션 사이의 통신을 통하여 상기 공유된 정보를 적용하도록 제어하는 단계
    를 포함하는 것인 자바 애플리케이션 관리 방법.
  11. 제5항에 있어서,
    상기 단계 (d-1)은,
    상기 실행 유형 정보가 상기 제2 실행 유형 정보 또는 상기 제3 실행 유형 정보인 경우에만 상기 공유된 정보를 상기 제1 자바 애플리케이션에 적용하도록 제어하는 단계
    를 포함하는 것인 자바 애플리케이션 관리 방법.
  12. 제1항에 있어서,
    상기 제1 자바 애플리케이션 또는 상기 제2 자바 애플리케이션은 Xlet 형태의 자바 애플리케이션인 것인 자바 애플리케이션 관리 방법.
  13. 사용자 장치에서의 자바 애플리케이션 관리 방법으로서,
    (a) 제1 자바 애플리케이션으로부터 제2 자바 애플리케이션의 실행 요청을 수신하는 단계와,
    (b) 상기 제1 자바 애플리케이션의 실행 상태를 일시 정지 상태로 변경하도록 제어하는 단계와,
    (c) 상기 제2 자바 애플리케이션을 초기화하고 실행하도록 제어하는 단계와,
    (d) 상기 제2 자바 애플리케이션으로부터 상기 제2 자바 애플리케이션의 소멸 요청을 수신하는 경우 상기 제2 자바 애플리케이션을 소멸시키도록 제어하고 상기 일시 정지된 제1 자바 애플리케이션의 실행 상태를 속행 상태로 변경하도록 제어하는 단계
    를 포함하되,
    상기 실행 요청은 상기 사용자 장치의 시스템 자원의 상태에 따라서 상기 제1 자바 애플리케이션에서 생성되는 것이고,
    상기 제1 자바 애플리케이션 및 상기 제2 자바 애플리케이션은 정보를 공유하는 것이고,
    상기 단계 (d)는,
    (d-1) 상기 제2 자바 애플리케이션에서 설정된 상기 공유된 정보를 상기 제1 자바 애플리케이션에 적용하도록 제어하는 단계
    를 포함하는 것인 자바 애플리케이션 관리 방법.
  14. 제13항에 있어서,
    상기 제1 자바 애플리케이션은 사용자 입력을 수신하는 사용자 인터페이스를 포함하는 것이고,
    상기 제1 자바 애플리케이션은 상기 사용자 인터페이스를 통하여 상기 사용자 입력을 수신하면 상기 제2 자바 애플리케이션의 실행 요청을 생성하는 것인 자바 애플리케이션 관리 방법.
  15. 제13항에 있어서,
    상기 제2 자바 애플리케이션의 실행 요청은 상기 제2 자바 애플리케이션의 획득 경로를 포함하는 것인 자바 애플리케이션 관리 방법.
  16. 제15항에 있어서,
    상기 단계 (c)는,
    상기 획득 경로를 이용하여 상기 제2 자바 애플리케이션을 획득하는 단계
    를 포함하는 것인 자바 애플리케이션 관리 방법.
  17. 삭제
  18. 제13항에 있어서,
    상기 단계 (d-1)은,
    상기 제2 자바 애플리케이션과 상기 제1 자바 애플리케이션 사이의 통신을 통하여 상기 공유된 정보를 적용하도록 제어하는 단계
    를 포함하는 것인 자바 애플리케이션 관리 방법.
  19. 제13항에 있어서,
    상기 제1 자바 애플리케이션 또는 상기 제2 자바 애플리케이션은 Xlet 형태의 자바 애플리케이션인 것인 자바 애플리케이션 관리 방법.
  20. 사용자 장치에서의 자바 애플리케이션 관리 방법으로서,
    (a) 제1 자바 애플리케이션으로부터 제2 자바 애플리케이션의 실행 요청을 수신하는 단계와,
    (b) 상기 제1 자바 애플리케이션의 실행 상태를 백그라운드 실행 상태로 변경하도록 제어하는 단계와,
    (c) 상기 제2 자바 애플리케이션을 초기화하고 실행하도록 제어하는 단계와,
    (d) 상기 제2 자바 애플리케이션으로부터 상기 제2 자바 애플리케이션의 소멸 요청을 수신하는 경우 상기 제2 자바 애플리케이션을 소멸시키도록 제어하고 상기 백그라운드 실행 상태이던 상기 제1 자바 애플리케이션의 실행 상태를 포어그라운드 실행 상태로 변경하도록 제어하는 단계
    를 포함하되,
    상기 실행 요청은 상기 사용자 장치의 시스템 자원의 상태에 따라서 상기 제1 자바 애플리케이션에서 생성되는 것이고,
    상기 제1 자바 애플리케이션 및 상기 제2 자바 애플리케이션은 정보를 공유하는 것이고,
    상기 단계 (d)는,
    (d-1) 상기 제2 자바 애플리케이션에서 설정된 상기 공유된 정보를 상기 제1 자바 애플리케이션에 적용하도록 제어하는 단계
    를 포함하는 것인 자바 애플리케이션 관리 방법.
  21. 제20항에 있어서,
    상기 제1 자바 애플리케이션은 사용자 입력을 수신하는 사용자 인터페이스를 포함하는 것이고,
    상기 제1 자바 애플리케이션은 상기 사용자 인터페이스를 통하여 상기 사용자 입력을 수신하면 상기 제2 자바 애플리케이션의 실행 요청을 생성하는 것인 자바 애플리케이션 관리 방법.
  22. 제20항에 있어서,
    상기 제2 자바 애플리케이션의 실행 요청은 상기 제2 자바 애플리케이션의 획득 경로를 포함하는 것인 자바 애플리케이션 관리 방법.
  23. 제22항에 있어서,
    상기 단계 (c)는, 상기 획득 경로를 이용하여 상기 제2 자바 애플리케이션을 획득하는 단계
    를 포함하는 것인 자바 애플리케이션 관리 방법.
  24. 삭제
  25. 제20항에 있어서,
    상기 단계 (d-1)은,
    상기 제2 자바 애플리케이션과 상기 제1 자바 애플리케이션 사이의 통신을 통하여 상기 공유된 정보를 적용하도록 제어하는 단계
    를 포함하는 것인 자바 애플리케이션 관리 방법.
  26. 제20항에 있어서,
    상기 제1 자바 애플리케이션 또는 상기 제2 자바 애플리케이션은 Xlet 형태의 자바 애플리케이션인 것인 자바 애플리케이션 관리 방법.
  27. 제1항 내지 제8항, 제10항 내지 제16항, 제18항 내지 제23항, 제25항 내지 제26항 중 어느 한 항에 따른 자바 애플리케이션 관리 방법의 각 단계를 실현시키기 위한 프로그램을 기록한 컴퓨터로 판독 가능한 기록 매체.
KR1020090014161A 2009-02-20 2009-02-20 자바 애플리케이션 관리 방법 및 이를 실현시키기 위한 프로그램을 기록한 컴퓨터로 판독 가능한 기록 매체 KR101144346B1 (ko)

Priority Applications (3)

Application Number Priority Date Filing Date Title
KR1020090014161A KR101144346B1 (ko) 2009-02-20 2009-02-20 자바 애플리케이션 관리 방법 및 이를 실현시키기 위한 프로그램을 기록한 컴퓨터로 판독 가능한 기록 매체
PCT/KR2010/001015 WO2010095868A2 (en) 2009-02-20 2010-02-18 Method for managing java applications and computer-readable medium having thereon program performing function embodying the same
US12/656,872 US8347314B2 (en) 2009-02-20 2010-02-18 Method for managing java applications

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020090014161A KR101144346B1 (ko) 2009-02-20 2009-02-20 자바 애플리케이션 관리 방법 및 이를 실현시키기 위한 프로그램을 기록한 컴퓨터로 판독 가능한 기록 매체

Publications (2)

Publication Number Publication Date
KR20100095057A KR20100095057A (ko) 2010-08-30
KR101144346B1 true KR101144346B1 (ko) 2012-05-11

Family

ID=42632047

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020090014161A KR101144346B1 (ko) 2009-02-20 2009-02-20 자바 애플리케이션 관리 방법 및 이를 실현시키기 위한 프로그램을 기록한 컴퓨터로 판독 가능한 기록 매체

Country Status (3)

Country Link
US (1) US8347314B2 (ko)
KR (1) KR101144346B1 (ko)
WO (1) WO2010095868A2 (ko)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9378054B2 (en) 2013-04-12 2016-06-28 Dropbox, Inc. Testing system with methodology for background application control
KR102148948B1 (ko) * 2013-12-06 2020-08-27 삼성전자주식회사 전자 장치의 멀티 태스킹 방법 및 그 전자 장치
CN107844342B (zh) * 2017-11-21 2021-07-09 Oppo广东移动通信有限公司 应用程序保活的管控方法、装置及存储介质和移动终端

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20030054620A (ko) * 2001-12-26 2003-07-02 에스케이텔레텍주식회사 멀티윈도우화면을 제공하는 방법, 기록매체와 이를구현하는 휴대전화기
KR20080009415A (ko) * 2006-07-24 2008-01-29 엘지전자 주식회사 백그라운드 태스크 제어 방법 및 이를 수행하기 위한이동통신 단말기
KR20080027798A (ko) * 2007-12-28 2008-03-28 (주)케이티에프테크놀로지스 복수의 어플리케이션을 동시에 구동하는 이동 통신 단말기
KR20080108709A (ko) * 2007-06-11 2008-12-16 (주) 엘지텔레콤 이동통신단말기의 어플리케이션 멀티태스킹 구동을 통한서비스확장방법

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100339842C (zh) * 2002-10-09 2007-09-26 松下电器产业株式会社 信息处理器
RU2369898C2 (ru) * 2003-10-10 2009-10-10 Конинклейке Филипс Электроникс Н.В. Java-модель жизненного цикла для bd-дисков
US7334076B2 (en) * 2005-03-08 2008-02-19 Microsoft Corporation Method and system for a guest physical address virtualization in a virtual machine environment
US8015548B2 (en) * 2007-03-22 2011-09-06 Arcsoft, Inc. Method for obtaining context of corresponding Xlet while playing BD-J title

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20030054620A (ko) * 2001-12-26 2003-07-02 에스케이텔레텍주식회사 멀티윈도우화면을 제공하는 방법, 기록매체와 이를구현하는 휴대전화기
KR20080009415A (ko) * 2006-07-24 2008-01-29 엘지전자 주식회사 백그라운드 태스크 제어 방법 및 이를 수행하기 위한이동통신 단말기
KR20080108709A (ko) * 2007-06-11 2008-12-16 (주) 엘지텔레콤 이동통신단말기의 어플리케이션 멀티태스킹 구동을 통한서비스확장방법
KR20080027798A (ko) * 2007-12-28 2008-03-28 (주)케이티에프테크놀로지스 복수의 어플리케이션을 동시에 구동하는 이동 통신 단말기

Also Published As

Publication number Publication date
US8347314B2 (en) 2013-01-01
US20100218189A1 (en) 2010-08-26
KR20100095057A (ko) 2010-08-30
WO2010095868A2 (en) 2010-08-26
WO2010095868A3 (en) 2010-11-18

Similar Documents

Publication Publication Date Title
KR102242413B1 (ko) 앱을 다운로드하는 방법 및 앱을 실행시키는 방법
US9451043B2 (en) Remote virtualization of mobile apps
KR102040754B1 (ko) 추천 콘텐츠에 기초한 상호작용 방법, 단말기 및 서버
US20150082239A1 (en) Remote Virtualization of Mobile Apps with Transformed Ad Target Preview
US11738277B2 (en) Game testing system
US20210081219A1 (en) Plugin loading method and apparatus, terminal, and storage medium
CN108762937A (zh) 配置信息发送方法、获取方法、装置及终端
CN108174302B (zh) 一种直播应用中活动功能玩法的更新方法及装置
US10637804B2 (en) User terminal apparatus, communication system, and method of controlling user terminal apparatus which support a messenger service with additional functionality
CN105955779B (zh) 进程关闭方法及装置
CN103150513A (zh) 拦截应用程序中的植入信息的方法及装置
JP6258475B2 (ja) クライアントデバイスにメディアアセットを提供するための方法
CN106775952B (zh) 一种安卓应用的进程管理方法和装置
CN106027631B (zh) 一种数据传输方法及装置
KR101144346B1 (ko) 자바 애플리케이션 관리 방법 및 이를 실현시키기 위한 프로그램을 기록한 컴퓨터로 판독 가능한 기록 매체
US10437576B2 (en) Automatic application download and launch during presentation of content
KR101290977B1 (ko) 푸쉬 서버를 이용한 메시지 전송 방법 및 그 시스템
CN106101836A (zh) 智能电视的播放方法及装置
US20120036221A1 (en) Transmission apparatus, transmission method, and transmission system
CN104375831A (zh) 实现终端设备上的网页和应用间通信的方法、装置和系统
US10565158B2 (en) Multi-device synchronization for immersive experiences
WO2017076011A1 (zh) 用于直播节目的回看方法和系统
CN107729093A (zh) 用于在便携式设备上不突兀地显示广告的系统和方法
KR20130000561A (ko) 브로드캐스트 발생시 어플리케이션이 안정적으로 동작하는 방법
CN116170611B (zh) 基于直播的游戏管理方法、装置、设备、存储介质及产品

Legal Events

Date Code Title Description
A201 Request for examination
PA0109 Patent application

Patent event code: PA01091R01D

Comment text: Patent Application

Patent event date: 20090220

PA0201 Request for examination
PG1501 Laying open of application
E902 Notification of reason for refusal
PE0902 Notice of grounds for rejection

Comment text: Notification of reason for refusal

Patent event date: 20100924

Patent event code: PE09021S01D

AMND Amendment
AMND Amendment
E601 Decision to refuse application
PE0601 Decision on rejection of patent

Patent event date: 20110819

Comment text: Decision to Refuse Application

Patent event code: PE06012S01D

Patent event date: 20100924

Comment text: Notification of reason for refusal

Patent event code: PE06011S01I

J201 Request for trial against refusal decision
PJ0201 Trial against decision of rejection

Patent event date: 20110916

Comment text: Request for Trial against Decision on Refusal

Patent event code: PJ02012R01D

Patent event date: 20110819

Comment text: Decision to Refuse Application

Patent event code: PJ02011S01I

Appeal kind category: Appeal against decision to decline refusal

Decision date: 20120423

Appeal identifier: 2011101006591

Request date: 20110916

AMND Amendment
PB0901 Examination by re-examination before a trial

Comment text: Amendment to Specification, etc.

Patent event date: 20110930

Patent event code: PB09011R02I

Comment text: Request for Trial against Decision on Refusal

Patent event date: 20110916

Patent event code: PB09011R01I

Comment text: Amendment to Specification, etc.

Patent event date: 20101123

Patent event code: PB09011R02I

Comment text: Amendment to Specification, etc.

Patent event date: 20101122

Patent event code: PB09011R02I

E902 Notification of reason for refusal
PE0902 Notice of grounds for rejection

Comment text: Notification of reason for refusal

Patent event date: 20111031

Patent event code: PE09021S01D

N231 Notification of change of applicant
PN2301 Change of applicant

Patent event date: 20120302

Comment text: Notification of Change of Applicant

Patent event code: PN23011R01D

B701 Decision to grant
PB0701 Decision of registration after re-examination before a trial

Patent event date: 20120423

Comment text: Decision to Grant Registration

Patent event code: PB07012S01D

Patent event date: 20111018

Comment text: Transfer of Trial File for Re-examination before a Trial

Patent event code: PB07011S01I

GRNT Written decision to grant
PR0701 Registration of establishment

Comment text: Registration of Establishment

Patent event date: 20120502

Patent event code: PR07011E01D

PR1002 Payment of registration fee

Payment date: 20120503

End annual number: 3

Start annual number: 1

PG1601 Publication of registration
FPAY Annual fee payment

Payment date: 20150429

Year of fee payment: 4

PR1001 Payment of annual fee

Payment date: 20150429

Start annual number: 4

End annual number: 4

FPAY Annual fee payment

Payment date: 20160428

Year of fee payment: 5

PR1001 Payment of annual fee

Payment date: 20160428

Start annual number: 5

End annual number: 5

FPAY Annual fee payment

Payment date: 20180427

Year of fee payment: 7

PR1001 Payment of annual fee

Payment date: 20180427

Start annual number: 7

End annual number: 7

FPAY Annual fee payment

Payment date: 20190422

Year of fee payment: 8

PR1001 Payment of annual fee

Payment date: 20190422

Start annual number: 8

End annual number: 8

PR1001 Payment of annual fee

Payment date: 20200422

Start annual number: 9

End annual number: 9

PR1001 Payment of annual fee

Payment date: 20210420

Start annual number: 10

End annual number: 10

PR1001 Payment of annual fee

Payment date: 20220421

Start annual number: 11

End annual number: 11

PR1001 Payment of annual fee

Payment date: 20221226

Start annual number: 12

End annual number: 12

PR1001 Payment of annual fee

Payment date: 20240429

Start annual number: 13

End annual number: 13