KR20190070898A - 어플리케이션 제작 장치, 방법, 어플리케이션 구동 방법, 및 컴퓨터 프로그램 - Google Patents

어플리케이션 제작 장치, 방법, 어플리케이션 구동 방법, 및 컴퓨터 프로그램 Download PDF

Info

Publication number
KR20190070898A
KR20190070898A KR1020190066875A KR20190066875A KR20190070898A KR 20190070898 A KR20190070898 A KR 20190070898A KR 1020190066875 A KR1020190066875 A KR 1020190066875A KR 20190066875 A KR20190066875 A KR 20190066875A KR 20190070898 A KR20190070898 A KR 20190070898A
Authority
KR
South Korea
Prior art keywords
thread
application
state
interface
driven
Prior art date
Application number
KR1020190066875A
Other languages
English (en)
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 네이버 주식회사
Publication of KR20190070898A publication Critical patent/KR20190070898A/ko

Links

Images

Classifications

    • 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/0487Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser
    • G06F3/0488Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures
    • 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
    • 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/04847Interaction techniques to control parameter settings, e.g. interaction with sliders or dials
    • 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
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • 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
    • 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/04812Interaction techniques based on cursor appearance or behaviour, e.g. being affected by the presence of displayed objects
    • 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/04845Interaction 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 for image manipulation, e.g. dragging, rotation, expansion or change of colour
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/20Software design
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/38Creation or generation of source code for implementing user interfaces
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2203/00Indexing scheme relating to G06F3/00 - G06F3/048
    • G06F2203/048Indexing scheme relating to G06F3/048
    • G06F2203/04804Transparency, e.g. transparent or translucent windows

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Human Computer Interaction (AREA)
  • Computer Hardware Design (AREA)
  • User Interface Of Digital Computer (AREA)
  • Stored Programmes (AREA)

Abstract

본 발명의 일 실시예에 따르면, 컴퓨터를 이용하여, 수신부에 의해, 제1 스레드의 구동 여부에 의해 구동 여부가 종속적으로 결정되는 제2 스레드 생성 요청을 수신하는 단계; 및 제어부에 의해, 상기 제1 및 제2 스레드 중 어느 하나를 선택하기 위한 전환 인터페이스가, 상기 제1 및 제2 스레드 중 적어도 하나에 표시되도록 하여 상기 제2 스레드를 생성하는 단계;를 포함하고, 상기 제2 스레드를 생성하는 단계는, 상기 전환 인터페이스가 제1 상태인 경우 상기 제1 및 제2 스레드가 설치되는 어플리케이션 구동 장치를 통하여 수신되는 제1 입력을 기초로 상기 제1 스레드의 동작이 제어되고, 상기 전환 인터페이스가 제2 상태인 경우 상기 제1 및 제2 스레드가 설치된 상기 어플리케이션 구동 장치를 통하여 수신되는 상기 제1 입력을 기초로 상기 제2 스레드의 동작이 제어되도록 상기 제2 스레드를 생성하는 단계;를 포함하는, 어플리케이션 제작 방법을 실행하기 위하여 기록 매체에 저장된 컴퓨터 프로그램이 제공된다.

Description

어플리케이션 제작 장치, 방법, 어플리케이션 구동 방법, 및 컴퓨터 프로그램{Device and method for producing application, method for driving application, and computer program for executing the methods}
본 발명의 실시예들은 어플리케이션 제작 장치, 방법, 어플리케이션 구동 방법, 및 컴퓨터 프로그램에 관한 것이다.
스마트폰이 널리 보급되면서, 기존에는 통화 및 단순한 텍스트 송수신만 수행했던 휴대폰으로, 인터넷, SNS, 게임, 및 기타 유틸리티 프로그램 등 다양한 어플리케이션을 스마트폰으로 이용할 수 있게 되었다. 이에 따라, 스마트폰에서 구동 가능한 어플리케이션을 제작할 수 있는 툴 또한 제작 및 보급되고, 누구나 쉽게 어플리케이션을 제작 가능하게 되었다.
전술한 배경기술은 발명자가 본 발명의 도출을 위해 보유하고 있었거나, 본 발명의 도출 과정에서 습득한 기술 정보로서, 반드시 본 발명의 출원 전에 일반 공중에게 공개된 공지기술이라 할 수는 없다.
한국공개특허 KR 2015-0047219 A
본 발명의 실시예들은 어플리케이션 제작자가 제1 스레드에 제2 스레드를 종속시켜 제작할 수 있게 하고, 이 때 제1 및 제2 스레드 각각을 서로 전환하여 선택할 수 있는 전환 인터페이스를 함께 제공할 수 있게 하는 어플리케이션 제작 장치, 방법, 및 컴퓨터 프로그램을 제공하고자 한다.
본 발명의 실시예들은 어플리케이션 사용자가 제1 스레드에 종속된 제2 스레드를 실행할 수 있게 하고, 이 때 제1 및 제2 스레드 각각을 서로 전환하여 선택할 수 있는 전환 인터페이스를 어플리케이션 사용자에게 함께 제공할 수 있는 어플리케이션 제작 방법 및 컴퓨터 프로그램을 제공하고자 한다.
본 발명의 일 실시예에 따르면, 컴퓨터를 이용하여, 수신부에 의해, 제1 스레드의 구동 여부에 의해 구동 여부가 종속적으로 결정되는 제2 스레드 생성 요청을 수신하는 단계; 및 제어부에 의해, 상기 제1 및 제2 스레드 중 어느 하나를 선택하기 위한 전환 인터페이스가, 상기 제1 및 제2 스레드 중 적어도 하나에 표시되도록 하여 상기 제2 스레드를 생성하는 단계;를 포함하고, 상기 제2 스레드를 생성하는 단계는, 상기 전환 인터페이스가 제1 상태인 경우 상기 제1 및 제2 스레드가 설치되는 어플리케이션 구동 장치를 통하여 수신되는 제1 입력을 기초로 상기 제1 스레드의 동작이 제어되고, 상기 전환 인터페이스가 제2 상태인 경우 상기 제1 및 제2 스레드가 설치된 상기 어플리케이션 구동 장치를 통하여 수신되는 상기 제1 입력을 기초로 상기 제2 스레드의 동작이 제어되도록 상기 제2 스레드를 생성하는 단계;를 포함하는, 어플리케이션 제작 방법을 실행하기 위하여 기록 매체에 저장된 컴퓨터 프로그램이 제공된다.
본 발명의 일 실시예에 따르면, 제1 스레드의 구동 여부에 의해 구동 여부가 종속적으로 결정되는 제2 스레드 생성 요청을 수신하는 수신부; 및 상기 제1 및 제2 스레드 중 어느 하나를 선택하기 위한 전환 인터페이스가 상기 제1 및 제2 스레드 중 적어도 하나에 표시되도록 하여 상기 제2 스레드를 생성하되, 상기 전환 인터페이스가 제1 상태인 경우 상기 제1 및 제2 스레드가 설치되는 어플리케이션 구동 장치를 통하여 수신되는 제1 입력을 기초로 상기 제1 스레드의 동작이 제어되고, 상기 전환 인터페이스가 제2 상태인 경우 상기 제1 및 제2 스레드가 설치된 상기 어플리케이션 구동 장치를 통하여 수신되는 상기 제1 입력을 기초로 상기 제2 스레드의 동작이 제어되도록 상기 제2 스레드를 생성하는 제어부;를 포함하는, 어플리케이션 제작 장치가 제공된다.
본 발명의 일 실시예에 따르면, 하나 이상의 어플리케이션을 실행시킬 수 있는 어플리케이션 구동 장치에서 어플리케이션 구동 서비스를 제공하는 방법에 있어서, 제1 스레드를 실행시키는 단계; 상기 제1 스레드에 의해 제공되는 기능에 의하여, 상기 제1 스레드의 구동 여부에 의해 구동 여부가 종속적으로 결정되는 제2 스레드를 실행시키는 단계; 상기 제1 및 제2 스레드 중 적어도 하나에 전환 인터페이스를 표시하는 단계; 및 상기 전환 인터페이스가 제1 상태인 경우 상기 어플리케이션 구동 장치의 제1 위치를 통하여 수신되는 입력을 기초로 상기 제1 스레드의 동작을 제어하고, 상기 전환 인터페이스가 제2 상태인 경우 상기 제1 위치를 통하여 수신되는 입력을 기초로 상기 제2 스레드의 동작을 제어하는 단계;를 포함하는, 어플리케이션 구동 방법이 제공된다.
본 발명의 일 실시예에 따르면, 제1 스레드 및 제2 스레드를 포함하는 어플리케이션 제작 방법으로서, 수신부에 의해, 제1 스레드에 구동 여부가 종속되는 제2 스레드의 생성 요청을 수신하는 단계; 제어부에 의해, 상기 제1 스레드가 구동된 상태에서, 상기 제2 스레드가 구동되지 않았을 때 표시되는 구동 인터페이스 및 상기 제2 스레드가 구동되었을 때 표시되는 종료 인터페이스를 생성하는 단계; 상기 제어부에 의해, 상기 어플리케이션이 설치되는 어플리케이션 구동 장치를 통하여 수신되는 상기 구동 인터페이스 및 종료 인터페이스의 선택에 따라, 구동 여부가 제어되는 제2 스레드를 생성하는 단계; 를 포함하는, 어플리케이션 제작 방법이 제공된다.
본 발명의 일 실시예에 따르면, 제1 스레드 및 제2 스레드를 포함하는 어플리케이션 제작 장치로서, 제1 스레드에 구동 여부가 종속되는 제2 스레드의 생성 요청을 수신하는 수신부; 상기 제1 스레드가 구동된 상태에서, 상기 제2 스레드가 구동되지 않았을 때 표시되는 구동 인터페이스 및 상기 제2 스레드가 구동되었을 때 표시되는 종료 인터페이스를 생성하고, 상기 어플리케이션이 설치되는 어플리케이션 구동 장치를 통하여 수신되는 상기 구동 인터페이스 및 종료 인터페이스의 선택에 따라 구동 여부가 제어되는 제2 스레드를 생성하는 제어부; 를 포함하는, 어플리케이션 제작 장치가 제공된다.
본 발명의 일 실시예에 따르면, 하나 이상의 어플리케이션을 실행시킬 수 있는 어플리케이션 구동 장치에서 제1 스레드 및 제2 스레드를 포함하는 어플리케이션을 구동하는 방법으로서, 제1 스레드를 구동시키는 단계; 상기 제1 스레드가 구동된 상태에서, 상기 제2 스레드가 구동되지 않았을 때 표시되는 구동 인터페이스 또는 상기 제2 스레드가 구동되었을 때 표시되는 종료 인터페이스를 제공하는 단계; 상기 어플리케이션 구동 장치를 통하여 수신되는 상기 구동 인터페이스 및 종료 인터페이스의 선택에 따라, 그리고 상기 제1 스레드에 구동 여부가 종속되도록, 상기 제2 스레드의 구동 여부를 제어하는 단계; 를 포함하는, 어플리케이션 구동 방법이 제공된다.
본 발명의 일 실시예에 따르면, 제1 모듈 및 제2 모듈을 포함하는 어플리케이션 제작 방법으로서, 수신부에 의해, 제1 모듈에 구동 여부가 종속되는 제2 모듈의 생성 요청을 수신하는 단계; 제어부에 의해, 상기 제1 모듈이 구동된 상태에서, 상기 제2 모듈이 구동되지 않았을 때 표시되는 구동 인터페이스 및 상기 제2 모듈이 구동되었을 때 표시되는 종료 인터페이스를 생성하는 단계; 상기 제어부에 의해, 상기 어플리케이션이 설치되는 어플리케이션 구동 장치를 통하여 수신되는 상기 구동 인터페이스 및 종료 인터페이스의 선택에 따라, 구동 여부가 제어되는 제2 모듈을 생성하는 단계; 를 포함하는, 어플리케이션 제작 방법이 제공된다.
본 발명의 일 실시예에 따르면, 제1 모듈 및 제2 모듈을 포함하는 어플리케이션 제작 장치로서, 제1 모듈에 구동 여부가 종속되는 제2 모듈의 생성 요청을 수신하는 수신부; 상기 제1 모듈이 구동된 상태에서, 상기 제2 모듈이 구동되지 않았을 때 표시되는 구동 인터페이스 및 상기 제2 모듈이 구동되었을 때 표시되는 종료 인터페이스를 생성하고, 상기 어플리케이션이 설치되는 어플리케이션 구동 장치를 통하여 수신되는 상기 구동 인터페이스 및 종료 인터페이스의 선택에 따라 구동 여부가 제어되는 제2 모듈을 생성하는 제어부; 를 포함하는, 어플리케이션 제작 장치가 제공된다.
본 발명의 일 실시예에 따르면, 하나 이상의 어플리케이션을 실행시킬 수 있는 어플리케이션 구동 장치에서 제1 모듈 및 제2 모듈을 포함하는 어플리케이션을 구동하는 방법으로서, 제1 모듈을 구동시키는 단계; 상기 제1 모듈이 구동된 상태에서, 상기 제2 모듈이 구동되지 않았을 때 표시되는 구동 인터페이스 또는 상기 제2 모듈이 구동되었을 때 표시되는 종료 인터페이스를 제공하는 단계; 상기 어플리케이션 구동 장치를 통하여 수신되는 상기 구동 인터페이스 및 종료 인터페이스의 선택에 따라, 그리고 상기 제1 모듈에 구동 여부가 종속되도록, 상기 제2 모듈의 구동 여부를 제어하는 단계; 를 포함하는, 어플리케이션 구동 방법이 제공된다.
본 발명의 일 실시예에 따르면, 제1 어플리케이션 및 제2 어플리케이션을 포함하는 어플리케이션 제작 방법으로서, 수신부에 의해, 제1 어플리케이션에 구동 여부가 종속되는 제2 어플리케이션의 생성 요청을 수신하는 단계; 제어부에 의해, 상기 제1 어플리케이션이 구동된 상태에서, 상기 제2 어플리케이션이 구동되지 않았을 때 표시되는 구동 인터페이스 및 상기 제2 어플리케이션이 구동되었을 때 표시되는 종료 인터페이스를 생성하는 단계; 상기 제어부에 의해, 상기 어플리케이션이 설치되는 어플리케이션 구동 장치를 통하여 수신되는 상기 구동 인터페이스 및 종료 인터페이스의 선택에 따라, 구동 여부가 제어되는 제2 어플리케이션을 생성하는 단계; 를 포함하는, 어플리케이션 제작 방법이 제공된다.
본 발명의 일 실시예에 따르면, 제1 어플리케이션 및 제2 어플리케이션을 포함하는 어플리케이션 제작 장치로서, 제1 어플리케이션에 구동 여부가 종속되는 제2 어플리케이션의 생성 요청을 수신하는 수신부; 상기 제1 어플리케이션이 구동된 상태에서, 상기 제2 어플리케이션이 구동되지 않았을 때 표시되는 구동 인터페이스 및 상기 제2 어플리케이션이 구동되었을 때 표시되는 종료 인터페이스를 생성하고, 상기 어플리케이션이 설치되는 어플리케이션 구동 장치를 통하여 수신되는 상기 구동 인터페이스 및 종료 인터페이스의 선택에 따라 구동 여부가 제어되는 제2 어플리케이션을 생성하는 제어부; 를 포함하는, 어플리케이션 제작 장치가 제공된다.
본 발명의 일 실시예에 따르면, 하나 이상의 어플리케이션을 실행시킬 수 있는 어플리케이션 구동 장치에서 제1 어플리케이션 및 제2 어플리케이션을 포함하는 어플리케이션을 구동하는 방법으로서, 제1 어플리케이션을 구동시키는 단계; 상기 제1 어플리케이션이 구동된 상태에서, 상기 제2 어플리케이션이 구동되지 않았을 때 표시되는 구동 인터페이스 또는 상기 제2 어플리케이션이 구동되었을 때 표시되는 종료 인터페이스를 제공하는 단계; 상기 어플리케이션 구동 장치를 통하여 수신되는 상기 구동 인터페이스 및 종료 인터페이스의 선택에 따라, 그리고 상기 제1 어플리케이션에 구동 여부가 종속되도록, 상기 제2 어플리케이션의 구동 여부를 제어하는 단계; 를 포함하는, 어플리케이션 구동 방법이 제공된다.
본 발명의 일 실시예에 따르면, 본 발명의 방법을 실행시키기 위하여 매체에 저장된 컴퓨터 프로그램이 제공된다.
이와 같은 본 발명에 의한 어플리케이션 제작 장치, 방법, 및 컴퓨터 프로그램을 통하여, 어플리케이션 제작자가 제1 스레드에 제2 스레드를 종속시켜 제작할 수 있게 하고, 이 때 제1 및 제2 스레드 각각을 서로 전환하여 선택할 수 있는 전환 인터페이스를 함께 제공할 수 있게 할 수 있다.
또한 본 발명에 의한 어플리케이션 제작 방법 및 컴퓨터 프로그램을 통하여, 어플리케이션 사용자가 제1 스레드에 종속된 제2 스레드를 실행할 수 있게 하고, 이 때 제1 및 제2 스레드 각각을 서로 전환하여 선택할 수 있는 전환 인터페이스를 어플리케이션 사용자에게 함께 제공할 수 있다.
도 1은 본 발명의 일 실시예에 따른 어플리케이션 제작 시스템의 구성을 개략적으로 도시한 도면이다.
도 2는 본 발명의 일 실시예에 따른 어플리케이션 구동 시스템의 구성을 개략적으로 도시한 도면이다.
도 3 및 도 4는 본 발명의 일 실시예에 따른 어플리케이션 제작 장치의 구성을 개략적으로 도시한 도면이다.
도 5 및 도 6은 본 발명의 일 실시예에 따른 어플리케이션 구동 장치의 구성을 개략적으로 도시한 도면이다.
도 7은 본 발명의 일 실시예에 따른 어플리케이션 제작 방법을 개략적으로 도시한 순서도이다.
도 8 및 도 9는 본 발명의 일 실시예에 따른 어플리케이션 구동 방법을 개략적으로 도시한 순서도이다.
도 10 내지 도 15는 본 발명의 일 실시예에 따라서 어플리케이션 구동 서비스가 제공되는 형태의 예시를 설명하기 위한 도면이다.
본 발명은 다양한 변환을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 상세한 설명에 상세하게 설명하고자 한다. 본 발명의 효과 및 특징, 그리고 그것들을 달성하는 방법은 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나 본 발명은 이하에서 개시되는 실시예들에 한정되는 것이 아니라 다양한 형태로 구현될 수 있다. 이하의 실시예에서, 제1, 제2 등의 용어는 한정적인 의미가 아니라 하나의 구성 요소를 다른 구성 요소와 구별하는 목적으로 사용되었다. 또한, 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 또한, 포함하다 또는 가지다 등의 용어는 명세서상에 기재된 특징, 또는 구성요소가 존재함을 의미하는 것이고, 하나 이상의 다른 특징들 또는 구성요소가 부가될 가능성을 미리 배제하는 것은 아니다. 또한, 도면에서는 설명의 편의를 위하여 구성 요소들이 그 크기가 과장 또는 축소될 수 있다. 예컨대, 도면에서 나타난 각 구성의 크기 및 두께는 설명의 편의를 위해 임의로 나타내었으므로, 본 발명이 반드시 도시된 바에 한정되지 않는다.
이하, 첨부된 도면을 참조하여 본 발명의 실시예들을 상세히 설명하기로 하며, 도면을 참조하여 설명할 때 동일하거나 대응하는 구성 요소는 동일한 도면부호를 부여하고 이에 대한 중복되는 설명은 생략하기로 한다.
도 1은 본 발명의 일 실시예에 따른 어플리케이션 제작 시스템의 구성을 개략적으로 도시한 도면이다.
도 1을 참조하면, 본 발명의 일 실시예에 따른 어플리케이션 제작 시스템(10)은 어플리케이션 제작 장치(100), 어플리케이션 제작 툴 배포 서버(200), 어플리케이션 구동 장치(300), 및 어플리케이션 배포 서버(400)를 포함할 수 있다. 또한, 어플리케이션 제작 시스템(10)은 통신망(500)을 더 포함할 수 있다.
어플리케이션 제작 장치(100)는 본 발명의 일 실시예에 따른 어플리케이션 제작 방법을 수행할 수 있는 전자 장치일 수 있다. 어플리케이션 제작 장치(100)는 유무선 통신을 통하여 어플리케이션 제작 툴 배포 서버(200) 및/또는 어플리케이션 배포 서버(400)와 전자 신호를 송수신할 수 있다. 어플리케이션 제작 장치(100)는 어플리케이션 제작 툴 배포 서버(200)로부터 어플리케이션 제작 툴(예컨대, software development kit 형태로 만들어진 컴퓨터 프로그램)을 포함하는 컴퓨터 프로그램을 다운로드 받을 수 있다. 어플리케이션 제작 장치(100)는 어플리케이션 제작 툴을 이용하여 본 발명의 일 실시예에 따른 어플리케이션 제작 방법에 따라 어플리케이션을 제작할 수 있다. 어플리케이션 제작 장치(100)는 제작한 어플리케이션을 어플리케이션 배포 서버(400)로 업로드할 수 있다.
도 1에서는 어플리케이션 제작 장치(100)가 데스크 탑(desk top) 컴퓨터로 도시되었지만, 본 발명은 이에 한정되지 아니하며, 상술한 바와 같이 유무선 통신 환경에서 타 장치와 전자 신호를 송수신할 수 있는 전자 장치는 제한 없이 차용될 수 있다. 상세히, 어플리케이션 제작 장치(100)는, 예를 들어, 태블릿 컴퓨터, 스마트폰, 스마트 TV, 휴대폰, PDA(personal digital assistant), 랩탑, 미디어 플레이어, 마이크로 서버, GPS(global positioning system) 장치, 전자책 단말기, 디지털방송용 단말기, 네비게이션, 키오스크, MP3 플레이어, 디지털 카메라, 웨어러블 장치 및 기타 모바일 또는 비모바일 컴퓨팅 장치일 수 있으나, 본 발명이 이에 한정되는 것은 아니다.
어플리케이션 제작 툴 배포 서버(200)는 어플리케이션 제작 툴을 배포하는 서버일 수 있다. 이 때, 어플리케이션 제작 툴은 어플리케이션을 제작하기 위해 제작된 일종의 SDK(software development kit) 형태의 컴퓨터 프로그램일 수 있다. 어플리케이션 제작 툴 배포 서버(200)는 자체적으로 어플리케이션 제작 툴을 제작하기 위한 환경이 마련된 전자 장치일 수도 있고, 외부 전자 장치에서 제작된 어플리케이션 제작 툴을 단순히 저장하는 전자 장치일 수도 있다.
어플리케이션 제작 툴 배포 서버(200)는 어플리케이션 제작 툴 배포 서비스를 제공하는 외에도 일반적인 검색 서비스 및 기타 사용자의 편의를 증진시키는 다양한 서비스를 제공하는 서버일 수도 있다. 즉, 어플리케이션 제작 툴 배포 서버(200)는 어플리케이션 제작 툴 배포 서비스 외에도 검색, 이메일, 블로그, 소셜 네트워크 서비스(social network service), 뉴스, 쇼핑 정보 제공과 같은 다양한 서비스들을 제공할 수 있다.
또는, 어플리케이션 제작 툴 배포 서버(200)는 검색, 이메일, 뉴스, 쇼핑과 같은 포털(portal) 서비스를 제공하는 서버에 연결되어, 포털(portal) 서비스에 정보 제공을 요청하는 어플리케이션 제작 장치(100)로 포털(portal) 서비스가 제공하는 웹 페이지를 제공하는 서버일 수 있다. 여기서 어플리케이션 제작 툴 배포 서버(200)와 포털 서비스 제공 서버는 물리적으로 분리된 별도의 서버일 수도 있고, 개념적으로만 분리된 동일한 서버일 수도 있다.
어플리케이션 구동 장치(300)는 본 발명의 일 실시예에 따른 어플리케이션 제작 방법에 따라 제작된 어플리케이션을 구동하는 전자 장치일 수 있다. 어플리케이션 구동 장치(300)는 본 발명의 일 실시예에 따른 어플리케이션 구동 방법에 따라 어플리케이션을 구동하는 전자 장치일 수 있다. 어플리케이션 구동 장치(300)는 유무선 통신을 통하여 어플리케이션 배포 서버(400)와 전자 신호를 송수신할 수 있다. 어플리케이션 구동 장치(300)는 어플리케이션 배포 서버(400)로부터 어플리케이션을 포함하는 컴퓨터 프로그램을 다운로드 받을 수 있다.
도 1에서는 어플리케이션 구동 장치(300)가 스마트폰으로 도시되었지만, 본 발명은 이에 한정되지 아니하며, 상술한 바와 같이 유무선 통신 환경에서 타 장치와 전자 신호를 송수신할 수 있는 전자 장치는 제한 없이 차용될 수 있다. 상세히, 어플리케이션 구동 장치(300)는, 예를 들어, 태블릿 컴퓨터, 데스크 탑 컴퓨터, 스마트 TV, 휴대폰, PDA(personal digital assistant), 랩탑, 미디어 플레이어, 마이크로 서버, GPS(global positioning system) 장치, 전자책 단말기, 디지털방송용 단말기, 네비게이션, 키오스크, MP3 플레이어, 디지털 카메라, 웨어러블 장치 및 기타 모바일 또는 비모바일 컴퓨팅 장치일 수 있으나, 본 발명이 이에 한정되는 것은 아니다.
어플리케이션 배포 서버(400)는 어플리케이션 제작 장치(100)를 통하여 제작된 다양한 어플리케이션들을 저장 및 배포하는 서버일 수 있다. 어플리케이션 배포 서버(400)는 어플리케이션 제작 장치(100) 및/또는 어플리케이션 구동 장치(300)와 전자 신호를 송수신할 수 있다. 어플리케이션 배포 서버(400)는 어플리케이션 제작 장치(100)로부터 어플리케이션 저장 요청 신호를 수신할 수 있다. 어플리케이션 배포 서버(400)는 어플리케이션 제작 장치(100)로부터 어플리케이션에 대한 정보를 포함하는 데이터 신호를 수신할 수 있고, 해당 데이터 신호에 포함된 어플리케이션에 대한 정보를 저장할 수 있다. 어플리케이션 배포 서버(400)는 어플리케이션 구동 장치(300)로부터 어플리케이션 제공 요청 신호를 수신할 수 있다. 어플리케이션 배포 서버(400)는 어플리케이션 구동 장치(300)로 어플리케이션에 대한 정보를 포함하는 데이터 신호를 송신할 수 있다.
어플리케이션 배포 서버(400)는 어플리케이션 배포 서비스를 제공하는 외에도 일반적인 검색 서비스 및 기타 사용자의 편의를 증진시키는 다양한 서비스를 제공하는 서버일 수도 있다. 즉, 어플리케이션 배포 서버(400)는 어플리케이션 배포 서비스 외에도 검색, 이메일, 블로그, 소셜 네트워크 서비스(social network service), 뉴스, 쇼핑 정보 제공과 같은 다양한 서비스들을 제공할 수 있다.
또는, 어플리케이션 배포 서버(400)는 검색, 이메일, 뉴스, 쇼핑과 같은 포털(portal) 서비스를 제공하는 서버에 연결되어, 포털(portal) 서비스에 정보 제공을 요청하는 어플리케이션 제작 장치(100) 또는 어플리케이션 구동 장치(300)로 포털(portal) 서비스가 제공하는 웹 페이지를 제공하는 서버일 수 있다. 여기서 어플리케이션 배포 서버(400)와 포털 서비스 제공 서버는 물리적으로 분리된 별도의 서버일 수도 있고, 개념적으로만 분리된 동일한 서버일 수도 있다.
또한, 어플리케이션 제작 툴 배포 서버(200) 및 어플리케이션 배포 서버(400)는 일반적으로 서로 구분되는 별개의 전자 장치일 수 있으나, 하나의 서버 내에서 개념적으로만 분리된 동일한 서버일 수도 있다.
통신망(500)은 어플리케이션 제작 장치(100), 어플리케이션 제작 툴 배포 서버(200), 어플리케이션 구동 장치(300), 및 어플리케이션 배포 서버(400) 중 적어도 둘 간의 유무선 통신 경로를 제공할 수 있다. 통신망(500)은 예컨대 LANs(Local Area Networks), WANs(Wide Area Networks), MANs(Metropolitan Area Networks), ISDNs(Integrated Service Digital Networks) 등의 유선 네트워크나, 무선 LANs, CDMA, 블루투스, 위성 통신 등의 무선 네트워크를 망라할 수 있으나, 본 발명의 범위가 이에 한정되는 것은 아니다.
도 2는 본 발명의 일 실시예에 따른 어플리케이션 구동 시스템의 구성을 개략적으로 도시한 도면이다.
도 2를 참조하면, 본 발명의 일 실시예에 따른 어플리케이션 구동 시스템(20)은 어플리케이션 구동 장치(300), 어플리케이션 배포 서버(400), 제1 스레드 관리 서버(601), 및 제2 스레드 관리 서버(602)를 포함할 수 있다. 또한, 어플리케이션 구동 시스템(20)은 통신망(500)을 더 포함할 수 있다.
어플리케이션 구동 장치(300)는 어플리케이션 배포 서버(400)로부터 소정의 어플리케이션을 다운로드 받을 수 있다. 소정의 어플리케이션에는 제1 및 제2 스레드(thread)에 대한 정보가 모두 포함되어 있을 수 있다. 제1 및 제2 스레드는 어플리케이션 내에 존재하는 일련의 실행 코드로서, 본 발명에 따르면 제1 스레드는 어플리케이션의 주된 기능을 수행하는 실행 코드의 집합이고, 제2 스레드는 어플리케이션의 제1 스레드와 관련한 부수적 기능을 수행하는 실행 코드의 집합일 수 있다. 예를 들어, 본 발명의 어플리케이션이 게임 서비스를 제공하는 어플리케이션인 경우, 제1 스레드는 게임을 진행하는 기능을 수행하고, 제2 스레드는 게임과 관련한 온라인 커뮤니티 서비스를 제공하는 기능을 수행할 수 있다.
본 발명의 일 실시예에 따르면, 소정의 어플리케이션을 실행시키면 제1 스레드가 동작될 수 있다. 이 후, 제1 스레드에 의해 제공되는 기능 중 하나를 사용할 경우, 제2 스레드가 실행될 수 있다. 또한, 제1 스레드의 구동 여부에 의해 제2 스레드의 구동 여부가 종속적으로 결정될 수 있다. 즉, 제1 스레드가 종료되면, 제2 스레드 또한 종료될 수 있다. 제2 스레드의 종료 여부는 제1 스레드의 동작에 영향을 주지 않을 수 있다. 이때, 제1 스레드 및 제2 스레드는 소정의 어플리케이션에 포함되는 서로 다른 스레드일 수 있다. 또는, 제1 스레드가 주 스레드이고, 제2 스레드는 주 스레드에 종속되는 종 스레드일 수 있다.
또한, 본 발명의 일 실시예에 따르면 제2 스레드의 구동 여부가 제1 스레드에 종속될 뿐 아니라, 제2 스레드가 제공하는 정보 역시 제1 스레드에 종속될 수 있다. 즉, 제2 스레드는 제1 스레드와 관련된 정보를 제공할 수 있다. 예를 들어, 제1 스레드가 게임을 진행하는 기능을 수행하는 경우, 제2 스레드는 게임과 관련된 정보를 공유하기 위한 인터넷 커뮤니티를 제공하는 기능을 수행할 수 있다.
본 발명의 다른 실시예에서, 제1 스레드 및 제2 스레드는 각각 제1 모듈(module) 및 제2 모듈을 구성할 수 있다. 또한, 본 발명에서 설명하는 제1 스레드 및 제2 스레드는 각각 제1 모듈 및 제2 모듈과 등가로 치환될 수 있다. 이때, 제1 모듈은 어플리케이션의 주된 기능을 수행하는 데이터 구조의 집합체일 수 있다. 또한, 제2 모듈은 제1 모듈에 종속되어 일 기능을 수행하는 데이터 구조의 집합체로서, 하나 이상의 어플리케이션에서 실질적으로 동일한 기능을 수행하도록 설계될 수 있다. 즉, 본 발명의 일 실시예에 따르면 하나 이상의 어플리케이션에 포함된 제1 모듈이 각기 상이하여도, 제2 모듈은 동일한 기능을 수행할 수 있다. 또한, 하나 이상의 어플리케이션에 포함된 제1 모듈이 각기 다른 서버와 통신하더라도, 제2 모듈은 동일한 서버와 통신할 수 있다. 이때, 하나 이상의 어플리케이션에 포함된 제2 모듈이 실질적으로 동일한 기능을 수행한다는 것의 의미는, 제2 모듈이 각 어플리케이션에 종속되어 실행될 때 사용자 단말에서 실제 표시되는 컨텐츠 및 디자인적인 구현 모습까지 동일하다는 것이 아니라, 데이터 구조의 처리 방법 및 처리 결과, 처리를 위해 통신하는 서버가 동일하다는 것을 의미한다.
보다 구체적으로, 본 발명의 일 실시예에 따르면 제2 모듈은 하나 이상의 어플리케이션이 설치될 때 함께 설치되거나, 설치된 하나 이상의 어플리케이션에 포함될 수 있다. 제2 모듈은 서로 상이한 각 어플리케이션에 각각 포함되어 실질적으로 동일한 기능을 실행할 수 있다. 예를 들어, 제1 모듈 a 를 포함하는 어플리케이션 A 와 제1 모듈 b 를 포함하는 어플리케이션 B 에는 동일한 제2 모듈이 포함될 수 있다. 또한, 제1 모듈 a 및 제2 모듈 b 는 각각 상이한 서버 a 및 서버 b 와 통신하더라도, 어플리케이션 A/B 에 포함된 제2 모듈은 동일한 서버와 통신할 수 있다. 다만, 본 발명에 따르면, 각 어플리케이션에서 실행될 때 제공하는 제2 모듈이 제공하는 정보는 제1 모듈에 종속될 수 있다. 예를 들어, 서로 상이한 어플리케이션 A 및 어플리케이션 B 에 동일한 제2 모듈이 포함될 수 있지만, 제2 모듈이 제공하는 정보는 각각 제1 모듈 a 및 제2 모듈 b 에 종속될 수 있다. 보다 구체적으로, 게임 어플리케이션 A 및 게임 어플리케이션 B 에는 동일한 온라인 커뮤니티 모듈(제2 모듈)이 포함될 수 있고, 제2 모듈들은 모두 동일한 온라인 커뮤니티 서버와 통신하지마, 제2 모듈들이 제공하는 정보는 각각 제1 모듈 a 에 관련된 온라인 커뮤니티의 정보와 제2 모듈 b 에 관련된 온라인 커뮤니티의 정보일 수 있다.
본 발명의 다른 실시예에서, 제1 스레드 및 제2 스레드는 각각 제1 어플리케이션 및 제2 어플리케이션을 구성할 수 있다. 또한, 본 발명에서 설명하는 제1 스레드 및 제2 스레드는 각각 제1 어플리케이션 및 제2 어플리케이션과 등가로 치환될 수 있다. 이때, 제1 어플리케이션 및 제2 어플리케이션은 어플리케이션에 포함된 인앱(in-app) 형태의 어플리케이션일 수 있다.
어플리케이션 구동 장치(300)에서 소정의 스레드가 실행되면 제1 스레드가 실행될 수 있고, 제1 스레드 내에서 특정 기능에 의해 제2 스레드가 실행될 수 있다. 이 때, 제1 스레드의 동작과 관련하여 어플리케이션 구동 장치(300)와 데이터를 송수신하는 서버는 제1 스레드 관리 서버(601)일 수 있고, 제2 스레드의 동작과 관련하여 어플리케이션 구동 장치(300)와 데이터를 송수신하는 서버는 제2 스레드 관리 서버(602)일 수 있다. 즉, 제1 스레드는 제1 스레드 관리 서버(601)에 의해 관리되고, 제2 스레드는 제2 스레드 관리 서버(602)에 의해 관리될 수 있다.
제1 스레드 관리 서버(601) 및 제2 스레드 관리 서버(602)는 각각 제1 스레드 및 제2 스레드와 관련된 정보를 저장하는 서버일 수 있다. 즉, 제1 스레드 관리 서버(601) 및 제2 스레드 관리 서버(602)는 각각 제1 스레드 및 제2 스레드가 어플리케이션 구동 장치(300)에 의해 구동된 결과를 저장하고, 어플리케이션 구동 장치(300)와 데이터 신호를 송수신하여 스레드의 동작을 관리할 수 있다. 예를 들어, 제1 스레드 관리 서버(601)는 어플리케이션 구동 장치(300)에서 구동되는 제1 스레드에 대한 다양한 데이터(예를 들어, 제1 스레드가 게임일 경우, 해당 게임 내에서 어플리케이션 구동 장치(300)의 사용자가 보유한 계정의 정보, 게임 진행 정도, 게임 머니 또는 게임 아이템 정보 등과 관련된 데이터)를 저장하고, 어플리케이션 구동 장치(300)와 송수신할 수 있다. 마찬가지로, 제2 스레드 관리 서버(602)는 어플리케이션 구동 장치(300)에서 구동되는 제2 스레드에 대한 다양한 데이터(예를 들어, 제2 스레드가 문서 작성 및 문서 열람 서비스 제공 스레드일 경우, 해당 스레드를 통하여 열람할 수 있는 문서에 대한 정보, 작성하려는 문서에 대한 정보 등과 관련된 데이터)를 저장하고, 어플리케이션 구동 장치(300)와 송수신할 수 있다.
이러한 제1 스레드 관리 서버(601) 및 제2 스레드 관리 서버(602)는 서로 구분되는 별개의 전자 장치일 수 있다.
통신망(500)은 어플리케이션 구동 장치(300), 어플리케이션 배포 서버(400), 제1 스레드 관리 서버(601), 및 제2 스레드 관리 서버(602) 중 적어도 둘 간의 유무선 통신 경로를 제공할 수 있다.
도 3 및 도 4는 본 발명의 일 실시예에 따른 어플리케이션 제작 장치의 구성을 개략적으로 도시한 도면이다.
먼저 도 3을 참조하면, 본 발명의 일 실시예에 따른 어플리케이션 제작 장치(100)는 수신부(110) 및 제어부(120)를 포함할 수 있다.
수신부(110)는 제1 스레드 생성 요청을 수신할 수 있다. 이 때, 제1 스레드 생성 요청은 어플리케이션 제작 장치(100)의 사용자가 입력한 것일 수 있다. 수신부(110)는 어플리케이션 제작 장치(100)에 포함되어 있는 입력부에 물리적 압력을 가하거나 터치를 하는 입력을 통하여 제1 스레드 생성 요청을 수신한 것일 수 있다. 또는, 수신부(110)는 어플리케이션 제작 장치(100)에 포함되어 있는 통신부에서 제1 스레드 생성 요청 정보를 포함하는 전자 신호를 수신함으로써 어플리케이션 생성 요청을 수신한 것일 수도 있다.
수신부(110)는 제1 스레드의 구동 여부에 의해 구동 여부가 종속적으로 결정되는 제2 스레드 생성 요청을 수신할 수 있다. 이 때, 제2 스레드 생성 요청은 어플리케이션 제작 장치(100)의 사용자가 입력한 것일 수 있다. 수신부(110)는 어플리케이션 제작 장치(100)에 포함되어 있는 입력부에 물리적 압력을 가하거나 터치를 하는 입력을 통하여 제2 스레드 생성 요청을 수신한 것일 수 있다. 또는, 수신부(110)는 어플리케이션 제작 장치(100)에 포함되어 있는 통신부에서 제2 스레드 생성 요청 정보를 포함하는 전자 신호를 수신함으로써 스레드 생성 요청을 수신한 것일 수도 있다.
제어부(120)는 수신부(110)를 통하여 수신한 요청에 따라, 제2 스레드를 생성할 수 있다. 이 때, 제어부(120)는 제1 스레드의 구동 여부에 의해 제2 스레드의 구동 여부가 종속되도록 제2 스레드를 생성할 수 있다. 구체적으로, 제어부(120)는 제1 및 제2 스레드가 모두 구동되고 있는 상태에서, 제1 스레드가 종료될 경우, 제2 스레드 또한 함께 종료되도록 제2 스레드를 생성할 수 있다. 제어부(120)는 제1 스레드의 구동이 시작되는 것과는 제2 스레드의 구동 여부가 무관하도록 제2 스레드를 생성할 수 있다. 제어부(120)는 제2 스레드가 종료되는 것에는, 제1 스레드의 구동 여부는 영향을 받지 않도록 제2 스레드를 생성할 수 있다.
한편, 제어부(120)는 프로세서(processor)와 같이 데이터를 처리할 수 있는 모든 종류의 장치를 포함할 수 있다. 여기서, '프로세서(processor)'는, 예를 들어 프로그램 내에 포함된 코드 또는 명령으로 표현된 기능을 수행하기 위해 물리적으로 구조화된 회로를 갖는, 하드웨어에 내장된 데이터 처리 장치를 의미할 수 있다. 이와 같이 하드웨어에 내장된 데이터 처리 장치의 일 예로써, 마이크로프로세서(microprocessor), 중앙처리장치(central processing unit: CPU), 프로세서 코어(processor core), 멀티프로세서(multiprocessor), ASIC(application specific integrated circuit), FPGA(field programmable gate array) 등의 처리 장치를 망라할 수 있으나, 본 발명의 범위가 이에 한정되는 것은 아니다.
제어부(120)는 제1 및 제2 스레드 중 어느 하나를 선택하기 위한 전환 인터페이스가, 제1 및 제2 스레드 중 적어도 하나에 표시되도록 하여 제2 스레드를 생성할 수 있다. 구체적으로, 제어부(120)는 제1 및 제2 스레드가 동시에 구동될 때, 제1 및 제2 스레드 중 적어도 하나에 전환 인터페이스가 표시되도록 하는 기능을 포함하여 제2 스레드를 생성할 수 있다. 이 때, 전환 인터페이스는 제1 및 제2 상태를 가질 수 있다. 예를 들어, 전환 인터페이스는 스위치를 형상화한 형태의 인터페이스일 수 있다. 예를 들어, 제어부(120)는 해당 스위치가 ON 상태인 경우 제1 상태가 되고, 해당 스위치가 OFF 상태인 경우 제2 상태가 되도록 할 수 있다. 혹은, 다른 예에서 스위치가 바(bar) 위를 움직이는 스위치인 경우, 제어부(120)는 해당 스위치가 제1 위치에 놓여져 있도록 표시되는 경우를 제1 상태가 되고, 스위치가 제2 위치에 놓여져 있도록 표시되는 경우를 제2 상태가 되도록 할 수 있다.
이 때 제어부(120)는, 전환 인터페이스가 제1 상태인 경우에는 제1 및 제2 스레드가 설치되어 구동되는 어플리케이션 구동 장치(300)를 통하여 수신되는 제1 입력을 기초로 제1 스레드의 동작이 제어되고, 전환 인터페이스가 제2 상태인 경우에는 어플리케이션 구동 장치(300)를 통하여 수신되는 제1 입력을 기초로 제2 스레드의 동작이 제어되도록 제2 스레드를 생성할 수 있다. 즉 제어부(120)는, 어플리케이션 구동 장치(300) 상에서 동일한 제1 입력이 입력되는 경우에도, 전환 인터페이스의 상태에 따라서 제1 및 제2 스레드 중 어느 하나가 선택적으로 동작이 제어되도록 하는 기능을 포함하여 제2 스레드를 생성할 수 있다.
이 때 선택적으로, 제어부(120)는 어플리케이션 구동 장치(300)를 통하여 수신되는 제2 입력을 기초로 전환 인터페이스의 상태가 제어되도록 하는 기능을 포함하여 제2 스레드를 생성할 수 있다. 즉, 어플리케이션 구동 장치(300)를 통하여 수신되는 제2 입력은 전환 인터페이스의 상태를 제어하기 위한 입력이거나, 전환 인터페이스의 상태를 제어하기 위한 의도의 입력은 아니지만 결과적으로 전환 인터페이스의 상태가 제어되도록 하는 입력일 수 있다. 제어부(120)는 어플리케이션 구동 장치(300)를 통하여 수신되는 제2 입력에 대응하여 전환 인터페이스의 상태를 제1 상태 및 제 2 상태 중 어느 하나의 상태로 제어되도록 하는 기능을 포함하여 제2 스레드를 생성할 수 있다. 이를 통하여, 어플리케이션 제작 장치(100)는 어플리케이션 구동 장치(300)의 사용자가 의도에 따라 전환 인터페이스를 조작할 수 있게 하는 기능을 포함하여 제2 스레드를 생성할 수 있다.
또한 선택적으로, 제어부(120)는 제1 스레드의 동작이 제어되는 경우 어플리케이션 구동 장치를 통하여 수신되는 제1 입력에 의한 요청들이 제1 스레드 관리 서버(601)로 송신되고, 제2 스레드의 동작이 제어되는 경우 어플리케이션 구동 장치를 통하여 수신되는 제1 입력에 의한 요청들이 제2 스레드 관리 서버(602)로 송신되도록 하는 기능을 포함하여 제2 스레드를 생성할 수 있다. 이를 통하여, 어플리케이션 제작 장치(100)는 제1 스레드 및 제2 스레드가 서로 다른 서버에 의해 관리되도록 하는 기능을 포함하여 제2 스레드를 생성할 수 있다.
또한 선택적으로, 제어부(120)는 전환 인터페이스가 제1 상태에서 제2 상태로 변화된 이후에도 제1 스레드의 활성화 상태가 그대로 유지되도록 하는 기능을 포함하여 제2 스레드를 생성할 수 있다. 구체적으로, 제1 스레드가 활성화되어 있는 상태에서, 제2 스레드가 활성화된 상태로 전환이 되면, 제1 스레드는 비활성화되는 상태로 전환되는 것이 스마트폰에서 스레드들을 구동하는 일반적인 방법일 수 있다. 이에 반하여, 제어부(120)는 제1 스레드가 활성화되어 있는 상태(즉 전환 인터페이스가 제1 상태)인 경우에서, 제2 스레드가 활성화되는 상태(즉 전환 인터페이스가 제2 상태)인 경우로 전환되는 경우에도, 제1 스레드가 비활성화되지 않고 계속 활성화 상태를 유지하도록 하는 기능을 포함하여 제2 스레드를 생성할 수 있다. 유사하게, 제1 및 제2 스레드가 모두 구동된 후, 제2 스레드를 제어하던 상태에서 제1 스레드를 제어하는 상태로 전환되더라도, 제2 스레드 또한 활성화 상태를 유지할 수 있다. 즉 전환 인터페이스가 제2 상태인 경우에서 제1 상태인 경우로 전환되는 경우에도, 제2 스레드가 비활성화되지 않고 계속 활성화 상태를 유지하도록 하는 기능을 포함하여 제2 스레드를 생성할 수 있다. 이를 통하여, 어플리케이션 제작 장치(100)는 어플리케이션 구동 장치(300)의 사용자가 제2 스레드를 사용하는 도중에도 제1 스레드가 지속적으로 동작될 수 있도록 하는 기능을 포함하여 제2 스레드를 생성할 수 있다.
또한 선택적으로, 제어부(120)는 전환 인터페이스의 상태에 따라 제2 스레드의 표시 크기 또는 표시 비율이 조절되도록 하는 기능을 포함하여 제2 스레드를 생성할 수 있다. 즉, 제어부(120)는 어플리케이션 구동 장치(300)의 사용자가 제2 스레드의 크기를 조절할 수 있는 기능을 포함하여 제2 스레드를 생성할 수 있다. 이 때, 제어부(120)는 제2 스레드의 표시 크기 또는 표시 비율이 소정의 제1 기준값을 초과하는 경우에는 전환 인터페이스의 상태가 제1 상태로 결정되고, 제2 스레드의 표시 크기 또는 표시 비율이 제1 기준값 이하인 경우에는 전환 인터페이스의 상태가 제2 상태로 결정되도록 하는 기능을 포함하여 제2 스레드를 생성할 수 있다. 즉, 제어부(120)는 어플리케이션 구동 장치(300)의 사용자가 제2 스레드의 크기를 소정 수준 이상으로 크게 유지할 경우에는 제1 입력에 의하여 제2 스레드의 동작이 제어되도록 하고, 사용자가 제2 스레드의 크기를 소정 수준 미만으로 작게 유지할 경우에는 제1 입력에 의하여 제1 스레드의 동작이 제어되도록 하는 기능을 포함하여 제2 스레드를 생성할 수 있다.또한 선택적으로, 제어부(120)는 전환 인터페이스의 상태에 따라 제2 스레드의 투명도가 조절되도록 하는 기능을 포함하여 제2 스레드를 생성할 수 있다. 구체적인 예시로, 제어부(120)는 제2 스레드의 투명도가 소정의 제2 기준값을 초과하는 경우에는 전환 인터페이스의 상태가 제1 상태로 결정되고, 제2 스레드의 투명도가 제2 기준값 이하인 경우에는 전환 인터페이스의 상태가 제2 상태로 결정되도록 하는 기능을 포함하여 제2 스레드를 생성할 수 있다. 이러한 예시가 어플리케이션 구동 장치(300)에서 동작하는 모습에 대해서는 도 10 내지 도 13을 통하여 설명하기로 한다.
또한 선택적으로, 제어부(120)는 전환 인터페이스의 상태에 따라 제2 스레드의 기능 탭의 표시 여부가 결정되도록 하여 제2 스레드를 생성할 수 있다. 구체적으로, 제2 스레드는 플로팅 버튼으로 표시되는 UI를 포함하도록 표시될 수 있다. 이 때 제어부(120)는 제2 스레드 자체 제2 스레드에 포함되는 플로팅 버튼이 선택된 경우에는 전환 인터페이스의 상태를 제2 상태로 결정하고, 제2 스레드 이 외의 부분이 선택된 경우에는 전환 인터페이스의 상태를 제1 상태로 결정할 수 있다. 이러한 예시가 어플리케이션 구동 장치(300)에서 동작하는 모습에 대해서는 도 14를 통하여 설명하기로 한다.
또한 선택적으로, 제어부(120)는 제2 스레드가 제공하는 정보가 제1 스레드에 종속되도록 하여 제2 스레드를 생성할 수 있다. 예를 들어, 제1 스레드가 특정 게임 서비스를 실행하는 스레드인 경우, 제1 스레드에 종속되는 제2 스레드는 상기 특정 게임에 종속된 정보로서 게임과 관련된 온라인 커뮤니티, 문서 작성 및 문서 열람 서비스를 실행하는 스레드일 수 있다. 상술한 바와 같이, 본 발명의 제2 스레드는 하나 이상의 어플리케이션에서 실질적으로 동일한 기능을 수행할 수 있지만, 어플리케이션에 포함된 제1 스레드가 상이하다면, 제2 스레드가 제공하는 정보는 상이할 수 있다. 예를 들어, 각 어플리케이션에 포함된 제1 스레드가 제공하는 게임 서비스의 종류가 상이하다면, 제2 스레드는 온라인 커뮤니티 서비스를 제공하는 스레드이되, 제1 스레드에 종속되어 각 게임에 관련된 정보를 제공하는 온라인 커뮤니티 서비스를 제공하는 스레드일 수 있다.
또한 선택적으로, 제어부(120)는 제1 유저가 제1 어플리케이션 구동 장치에 실행된 제2 스레드를 이용하여 유저 등록 컨텐츠를 제2 스레드 관리 서버에 등록한 경우, 제2 유저는 상기 유저 등록 컨텐츠를 제2 어플리케이션 구동 장치에 실행된 제2 스레드를 이용하여 볼 수 있다. 예를 들어, 제1 유저는 제1 스레드가 활성화된 상태에서 제2 스레드를 실행하여 문서를 작성할 수 있고, 작성된 문서는 제2 스레드 관리 서버에 등록되며, 제2 유저는 제2 스레드를 실행하여 작성된 문서를 열람할 수 있다. 이로써, 본 발명의 어플리케이션을 설치한 유저들은, 제1 스레드가 활성화 된 상태에서 제2 스레드를 이용하여 컨텐츠 작성이 가능할 뿐 아니라, 다른 유저들이 작성한 컨텐츠의 열람이 가능하다.
한편 도 4를 참조하면, 본 발명의 일 실시예에 따른 어플리케이션 제작 장치(100)는 통신부(130), 입력부(140), 표시부(150), 메모리(160), 및 프로그램 관리부(170)를 더 포함할 수 있다.
통신부(130)는 어플리케이션 제작 툴 배포 서버(200), 어플리케이션 구동 장치(300), 및 어플리케이션 배포 서버(400) 중 적어도 하나와의 유무선 통신을 통하여 데이터 신호를 송수신할 수 있다. 이러한 통신부(130)는 블루투스 통신부, BLE(Bluetooth Low Energy) 통신부, 근거리 무선 통신부(Near Field Communication unit), WLAN(와이파이) 통신부, 지그비(Zigbee) 통신부, 적외선(IrDA, infrared Data Association) 통신부, WFD(Wi-Fi Direct) 통신부, UWB(ultra wideband) 통신부, Ant+ 통신부 등일 수 있으나, 이에 한정되는 것은 아니다.
입력부(140)는 어플리케이션 제작 장치(100)의 사용자로부터 다양한 종류의 동작을 요청하는 명령을 입력 받을 수 있는 구성 요소일 수 있다. 입력부(140)는 마우스, 키보드, 터치 패드, 및 다양한 종류의 센서들 중 적어도 하나일 수 있다.
이 때, 통신부(130) 및 입력부(140)는 모두 수신부(110)에 포함되는 구성 요소일 수 있다. 즉, 어플리케이션 제작 장치(100)는 수신부(110)를 통하여 제1 및/또는 제2 스레드 생성 요청을 수신할 수 있는데, 이러한 동작이 통신부(130) 및/또는 입력부(140)에 의해 수행될 수 있으므로, 통신부(130) 및 입력부(140)는 수신부(110)를 구성하는 요소일 수 있다. 이 때, 통신부(130) 및 입력부(140)는 별도의 전자 장치일 수 있으며, 단순히 그 기능의 유사성에 의하여 수신부(110)라는 동일한 카테고리의 전자 장치로 분류되는 것일 수도 있다.
표시부(150)는 어플리케이션 제작 장치(100)의 사용자에게, 어플리케이션을 제작하는 과정 및/또는 제작될 어플리케이션의 구동 예시를 시각적 신호로 제공하는 구성 요소일 수 있다. 메모리(160)는 어플리케이션 제작 장치(100)에서 처리되는 데이터를 일시적 또는 영구적으로 저장하는 기능을 수행할 수 있다. 여기서, 메모리(160)는 자기 저장 매체(magnetic storage media) 또는 플래시 저장 매체(flash storage media)를 포함할 수 있으나, 본 발명의 범위가 이에 한정되는 것은 아니다. 프로그램 관리부(170)는 어플리케이션 제작 기능을 제공하기 위해 필수적이거나 보조적인 다양한 작업들을 수행하기 위한 소프트웨어들을 저장 및/또는 관리하는 구성 요소일 수 있다.
도 5 및 도 6은 본 발명의 일 실시예에 따른 어플리케이션 구동 장치의 구성을 개략적으로 도시한 도면이다.
이하에서, 도 1 내지 도 4를 통하여 설명한 내용과 중복되는 부분에 대해서는 그 설명을 생략하기로 한다.
먼저 도 5를 참조하면, 본 발명의 일 실시예에 따른 어플리케이션 구동 장치(300)는 입력부(310), 표시부(320), 및 제어부(330)를 포함할 수 있다.
입력부(310)는 어플리케이션 구동 장치(300)의 사용자로부터 다양한 종류의 동작을 요청하는 명령을 입력 받을 수 있는 구성 요소일 수 있다. 입력부(310)는 마우스, 키보드, 터치 패드, 및 다양한 종류의 센서들 중 적어도 하나일 수 있다.
입력부(310)는 어플리케이션 구동 장치(300)의 사용자로부터 제1 스레드를 실행하라는 명령을 입력 받을 수 있다. 또한, 입력부(310)는 제1 스레드에 의해 제공되는 기능에 의하여, 제1 스레드의 구동 여부에 의해 구동 여부가 종속적으로 결정되는 제2 스레드를 실행하라는 명령을 입력 받을 수 있다.
표시부(320)는 제1 및/또는 제2 스레드를 표시할 수 있다. 표시부(320)는 표시부(320)의 적어도 일부를 차지하는 영상 표시 창에 제1 스레드를 표시할 수 있고, 제1 스레드의 적어도 일부를 차지하는 영상 표시 창에 제2 스레드를 표시할 수 있다. 또한, 표시부(320)는 제1 및/또는 제2 스레드에 전환 인터페이스를 함께 표시할 수 있다.
표시부(320)는 액정 표시(liquid crystal display), 박막 트랜지스터 액정 표시(thin film transistor-liquid crystal display), 유기 발광 다이오드(organic light-emitting diode), 플렉서블 표시(flexible display), 3차원 표시(3D display), 및 전기영동 표시(electrophoretic display) 중 적어도 하나를 포함할 수 있으나, 본 발명의 범위가 이에 한정되는 것은 아니다. 또한, 어플리케이션 구동 장치(300)의 구현 형태에 따라, 어플리케이션 제작 장치(100)는 표시부(320)를 2개 이상 포함할 수도 있다.
제어부(330)는 제1 및/또는 제2 스레드의 동작을 제어할 수 있다. 이 때, 제어부(330)는 전환 인터페이스의 상태를 기초로 제1 및/또는 제2 스레드의 동작을 제어할 수 있다. 구체적으로, 제어부(330)는 전환 인터페이스가 제1 상태인 경우 어플리케이션 구동 장치(300)의 제1 위치를 통하여 수신되는 입력을 기초로 제1 스레드의 동작을 제어하고, 전환 인터페이스가 제2 상태인 경우 제1 위치를 통하여 수신되는 입력을 기초로 제2 스레드의 동작을 제어할 수 있다. 한편, 이러한 제어부(330)는 프로세서와 같이 데이터를 처리할 수 있는 모든 종류의 장치를 포함할 수 있다.
*이 때 선택적으로, 제어부(330)는 어플리케이션 구동 장치(300)의 제2 위치를 통하여 수신되는 입력을 기초로 전환 인터페이스의 상태를 제1 상태 및 제2 상태 중 어느 하나의 상태로 제어할 수 있다.
또한 선택적으로, 제어부(330)는 전환 인터페이스가 제1 상태에서 제2 상태로 변화된 이후에도 제1 스레드의 활성화 상태를 유지할 수 있다.
도한 선택적으로, 제어부(330)는 전환 인터페이스의 상태에 따라 제2 스레드의 표시 크기 또는 표시 비율을 조절할 수 있고, 제2 스레드의 표시 크기 또는 표시 비율이 소정의 제1 기준값 이하인 경우에는 전환 인터페이스의 상태를 제1 상태로 결정하고, 제2 스레드의 표시 크기 또는 표시 비율이 해당 제1 기준값을 초과하는 경우에는 전환 인터페이스의 상태를 상기 제2 상태로 결정할 수 있다.
또는 선택적으로, 제어부(330)는 전환 인터페이스의 상태에 따라 제2 스레드의 투명도를 조절할 수 있고, 제2 스레드의 투명도가 소정의 제2 기준값을 초과하는 경우에는 전환 인터페이스의 상태를 제1 상태로 결정하고, 제2 스레드의 투명도가 해당 제2 기준값 이하인 경우에는 전환 인터페이스의 상태를 제2 상태로 결정할 수 있다.
한편 도 6을 참조하면, 본 발명의 일 실시예에 따른 어플리케이션 구동 장치(300)는 통신부(340), 메모리(350), 및 프로그램 관리부(360)를 더 포함할 수 있다.
통신부(340)는 어플리케이션 제작 장치(100), 어플리케이션 배포 서버(400), 제1 스레드 관리 서버(601), 및 제2 스레드 관리 서버(602) 중 적어도 하나와의 유무선 통신을 통하여 데이터 신호를 송수신할 수 있다. 이러한 통신부(340)는 블루투스 통신부, BLE(Bluetooth Low Energy) 통신부, 근거리 무선 통신부(Near Field Communication unit), WLAN(와이파이) 통신부, 지그비(Zigbee) 통신부, 적외선(IrDA, infrared Data Association) 통신부, WFD(Wi-Fi Direct) 통신부, UWB(ultra wideband) 통신부, Ant+ 통신부 등일 수 있으나, 이에 한정되는 것은 아니다.
이 때 선택적으로, 제어부(330)는 제1 스레드의 동작을 제어하는 경우에는 어플리케이션 구동 장치(300)의 제1 위치를 통하여 수신되는 입력에 의한 요청들이 제1 스레드 관리 서버(601)로 송신되고, 제2 스레드의 동작을 제어하는 경우에는 어플리케이션 구동 장치(300)의 제1 위치를 통하여 수신되는 입력에 의한 요청들이 제2 스레드 관리 서버(602)로 송신되도록, 어플리케이션 구동 장치(300)의 통신부(340)를 제어할 수 있다.
메모리(350)는 어플리케이션 구동 장치(300)에서 처리되는 데이터를 일시적 또는 영구적으로 저장하는 기능을 수행할 수 있다. 여기서, 메모리(350)는 자기 저장 매체(magnetic storage media) 또는 플래시 저장 매체(flash storage media)를 포함할 수 있으나, 본 발명의 범위가 이에 한정되는 것은 아니다. 프로그램 관리부(360)는 어플리케이션 구동 기능을 제공하기 위해 필수적이거나 보조적인 다양한 작업들을 수행하기 위한 소프트웨어들을 저장 및/또는 관리하는 구성 요소일 수 있다.
도 7은 본 발명의 일 실시예에 따른 어플리케이션 제작 방법을 개략적으로 도시한 순서도이다. 이하에서, 도 1 내지 도 6을 통하여 설명한 내용과 중복되는 부분에 대해서는 그 설명을 생략하기로 한다.
도 7을 참조하면, 본 발명의 일 실시예에 따른 어플리케이션 제작 장치(100)는 제1 스레드 생성 요청을 수신하는 단계(S710 단계)를 수행될 수 있다. 한편, 본 발명의 다른 실시예에 따른 어플리케이션 제작 장치(100)는 제1 스레드 생성 요청을 수신하지 않고, 이미 전부 또는 일부가 제작되어있는 제1 스레드를 외부 장치로부터 수신하거나, 메모리로부터 읽어들일 수도 있다. 즉, 어플리케이션 제작 장치(100)는 제1 스레드가 준비되어 있는 상태에서 S720 단계를 수행할 수도 있다.
이 후, 어플리케이션 제작 장치(100)는 제2 스레드 생성 요청을 수신하는 단계(S720 단계)를 수행될 수 있다.
이 후, 어플리케이션 제작 장치(100)는 전환 인터페이스를 포함하여 제1 및 제2 스레드를 생성하는 단계(S730 단계)를 수행할 수 있다. 이 때, 어플리케이션 제작 장치(100)는 제1 및 제2 스레드 중 어느 하나에 전환 인터페이스가 표시되도록 하는 기능을 포함하여 제1 및 제2 스레드를 생성할 수 있다. 한편, 본 발명의 다른 실시예에 따른 어플리케이션 제작 장치(100)는 S730 단계에서 제2 스레드 만을 생성할 수도 있다. 즉, 제1 스레드가 이미 전부 또는 일부가 제작되어 있는 상태에서 제1 및 제2 스레드 중 어느 하나에 전환 인터페이스가 표시되도록 하는 기능을 포함하여 제2 스레드 만을 생성할 수도 있다.
또한, 도 7에는 제1 스레드 생성 요청을 수신하고, 이어서 제2 스레드 생성 요청까지 수신한 이후에 제1 및 제2 스레드를 모두 생성하는 것으로 도시되어 있다. 다만 이는 일 실시예에 불과하고, 본 발명의 다른 실시예에 따른 어플리케이션 제작 장치(100)는 제1 스레드 생성 요청을 수신한 이후 제1 스레드를 생성하고, 이후에 제2 스레드 생성 요청을 수신하여 제2 스레드를 생성할 수도 있다.
도 8 및 도 9는 본 발명의 일 실시예에 따른 어플리케이션 구동 방법을 개략적으로 도시한 순서도이다. 이하에서, 도 1 내지 도 6을 통하여 설명한 내용과 중복되는 부분에 대해서는 그 설명을 생략하기로 한다.
먼저 도 8을 참조하면, 본 발명의 일 실시예에 따른 어플리케이션 구동 장치(300)는 제1 스레드 실행하는 단계(S810 단계) 및 제2 스레드를 실행하는 단계(S820 단계)를 수행될 수 있다. 이 때, 어플리케이션 구동 장치(300)는 먼저 S810 단계를 수행할 수 있고, 이 후 제1 스레드 상에서 제2 스레드를 실행하라는 명령을 수신하는 기능이 선택되면 S820 단계를 수행할 수 있다. 이어서 어플리케이션 구동 장치(300)는 전환 인터페이스를 제1 및/또는 제2 스레드 상에 표시하는 단계(S830 단계)를 수행할 수 있다.
이 후, 어플리케이션 구동 장치(300)는 제1 위치를 통하여 입력이 수신되는지 확인하는 단계(S840 단계)를 수행할 수 있다. 이 때, 제1 위치는 제1 스레드가 표시되어 있는 영역 중 적어도 일부의 영역일 수 있다. 만약 제1 위치에 입력이 수신되지 않은 경우, 어플리케이션 구동 장치(300)는 제1 위치에 입력이 수신될 때까지 대기할 수 있다.
만약 제1 위치를 통하여 입력이 수신되었다면, 어플리케이션 구동 장치(300)는 전환 인터페이스의 상태에 따라서 제1 및 제2 스레드 중 어느 하나의 스레드의 동작을 제어하는 단계(S850 단계)를 수행할 수 있다. 즉, 어플리케이션 구동 장치(300)는 전환 인터페이스가 제1 상태인 경우, 이는 제1 위치를 통한 입력이 제1 스레드를 제어하려는 경우라고 해석할 수 있고, 제1 위치를 통한 입력에 대응하여 제1 스레드의 동작을 제어할 수 있다. 유사하게, 어플리케이션 구동 장치(300)는 전환 인터페이스가 제2 상태인 경우, 이는 제1 위치를 통한 입력이 제2 스레드를 제어하려는 경우라고 해석할 수 있고, 제1 위치를 통한 입력에 대응하여 제2 스레드의 동작을 제어할 수 있다.
한편 도 9를 참조하면, 본 발명의 다른 실시예에 따른 어플리케이션 구동 장치(300)는 제2 위치를 통한 입력을 기초로 전환 인터페이스의 상태를 조절하는 단계를 더 수행할 수 있다.
먼저 어플리케이션 구동 장치(300)는 제1 스레드 실행하는 단계(S910 단계), 제2 스레드를 실행하는 단계(S920 단계), 및 전환 인터페이스를 표시하는 단계(S930 단계)를 수행할 수 있다.
이 후, 어플리케이션 구동 장치(300)는 제2 위치를 통하여 입력이 수신되는지 확인하는 단계(S940 단계)를 수행할 수 있다. 이 때, 제2 위치는 제1 스레드 또는 제2 스레드가 표시되어 있는 영역 중 일부의 영역일 수 있다. 또한, 제2 위치는 제1 위치와 겹치지 않는 위치일 수도 있고, 제1 위치의 일부 영역에 포함되는 위치일 수도 있다.
만약 제2 위치를 통하여 입력이 수신되었다면, 어플리케이션 구동 장치(300)는 제2 위치를 통한 입력에 대응하여 전환 인터페이스의 상태를 조절하는 단계(S950 단계)를 수행할 수 있다. 이 때, 어플리케이션 구동 장치(300)는 제2 위치를 통한 입력에 대응하여 전환 인터페이스의 상태를 제1 상태 또는 제2 상태에서부터 다른 상태로 전환할 수도 있고, 원래의 상태를 유지하는 선에서 조절을 수행할 수도 있다.
만약 제2 위치에 입력이 수신되지 않은 경우, 어플리케이션 구동 장치(300)는 제1 위치를 통하여 입력이 수신되었는지 확인하는 단계(S960 단계)를 수행할 수 있다. 만약 제1 위치에 입력이 수신되지 않은 경우, 어플리케이션 구동 장치(300)는 제2 위치에 입력이 수신되었는지 확인하는 단계인 S940 단계로 되돌아갈 수 있다. 만약 제1 위치를 통하여 입력이 수신되었다면, 어플리케이션 구동 장치(300)는 전환 인터페이스의 상태에 따라서 제1 및 제2 스레드 중 어느 하나의 스레드의 동작을 제어하는 단계(S970 단계)를 수행할 수 있다.
도 10 내지 도 14는 본 발명의 일 실시예에 따라서 어플리케이션 구동 서비스가 제공되는 형태의 예시를 설명하기 위한 도면이다.
먼저 도 10을 참조하면, 어플리케이션 구동 장치(300)의 표시부(320) 상에는 제1 스레드가 실행되어 표시될 수 있다. 즉, 표시부(320) 상에는 제1 스레드 영상(370)이 표시될 수 있다. 예를 들어, 제1 스레드가 게임인 경우, 어플리케이션 구동 장치(300)의 표시부(320) 상에는 제1 스레드 영상(370)에 도시된 바와 같이 검을 들고 있는 캐릭터가 상대방과 전투를 벌이는 영상이 표시될 수 있다.
이 때, 어플리케이션 구동 장치(300)에는 제2 스레드를 실행시키기 위한 유저 인터페이스로서, 카페 열기 인터페이스(372)가 표시될 수 있다. 즉, 제2 스레드는 제1 스레드와 관련된 정보를 공유하기 위한 인터넷 커뮤니티를 제공하는 스레드일 수 있다.
만약 어플리케이션 구동 장치(300)의 사용자가 카페 열기 인터페이스(372)를 선택할 경우, 도 11에 도시된 바와 같이, 어플리케이션 구동 장치(300)는 제2 스레드를 실행할 수 있다. 이 때, 제2 스레드 영상(374a)은 제1 스레드 영상(370)의 적어도 일부 영역을 차지하는 형태로 표시될 수 있다. 즉, 어플리케이션 구동 장치(300)의 사용자는 제1 스레드를 즐기던 도중, 제2 스레드의 구동 인터페이스로서 카페 열기 인터페이스(372)를 선택할 수 있고, 이 경우 어플리케이션 구동 장치(300)는 제2 스레드를 실행시켜서 제2 스레드 영상(374a)을 표시할 수 있다. 또한, 어플리케이션 구동 장치(300)의 사용자는 제2 스레드의 종료 인터페이스로서 카페 닫기 인터페이스(376)를 선택할 수 있고, 이 경우 어플리케이션 구동 장치(300)는 제2 스레드를 종료하여 도 10 의 화면 상태로 돌아갈 수 있다.
*이 때, 어플리케이션 구동 장치(300)는 제1 스레드 영상(370) 또는 제2 스레드 영상(374a)에 전환 인터페이스(378a)를 표시할 수 있다. 예를 들어, 도 11에 도시된 바와 같이, 어플리케이션 구동 장치(300)는 제1 스레드 영상(370)의 일부 영역에 바(bar) 형태의 인터페이스에 원 형의 이동가능한 커서가 존재하는 형태의 전환 인터페이스(378a)를 표시할 수 있다.
이 경우, 전환 인터페이스(378a) 상에서 원 형의 이동가능한 커서의 위치는 제2 스레드 영상(374a)의 투명도, 크기, 또는 표시 방법 등을 나타낼 수 있다.
예를 들어, 도 11에 도시된 바와 같이, 전환 인터페이스(378a) 상에서 원 형의 이동가능한 커서가 우측으로 치우쳐져 있는 경우, 제2 스레드 영상(374a)의 투명도는 매우 낮을 수 있다. 이 경우, 도 11에 도시된 바와 같이, 제1 스레드 영상(370) 중 제2 스레드 영상(374a)에 의해 가려진 부분은 전혀 보이지 않거나 거의 보이지 않을 수 있다.
만약, 도 12에 도시된 바와 같이, 전환 인터페이스(378b) 상에서 원 형의 이동가능한 커서가 중간에 위치하는 경우, 제2 스레드 영상(374b)은 중간 정도의 투명도를 가질 수 있다. 이 경우, 도 12에 도시된 바와 같이, 제1 스레드 영상(370) 중 제2 스레드 영상(374b)에 의해 가려진 부분은 희미하지만 인지 가능할 정도로 표시될 수 있다. 이 경우, 제2 스레드 영상(374b) 또한 희미하지만 인지 가능할 정도로 표시될 수 있다.
만약, 도 13에 도시된 바와 같이, 전환 인터페이스(378c) 상에서 원 형의 이동가능한 커서가 좌측으로 치우쳐져 있는 경우, 제2 스레드 영상(374c)은 매우 높은 투명도를 가질 수 있다. 이 경우, 도 13에 도시된 바와 같이, 제1 스레드 영상(370) 중 제2 스레드 영상(374c)에 의해 가려진 부분은 거의 명확하게 인지 가능할 정도로 표시될 수 있다. 이 경우, 제2 스레드 영상(374c)은 거의 인지되기 힘들 정도로 매우 희미하게 표시될 수 있다.
즉, 어플리케이션 구동 장치(300)는 제1 스레드 영상(370) 및 제2 스레드 영상(374a 내지 374c)을 동시에 표시부(320) 상에 표시하되, 전환 인터페이스(378a 내지 378c)의 상태에 따라 제2 스레드 영상(374a 내지 374c)의 투명도가 조절되도록 함으로써, 어플리케이션 구동 장치(300)의 사용자가 필요에 의하여 제1 및/또는 제2 스레드를 확인하게 할 수 있다.
이 때, 어플리케이션 구동 장치(300)는 일정한 기준을 정하여, 전환 인터페이스의 상태를 결정할 수 있다.
예를 들어, 어플리케이션 구동 장치(300)는 도 12에 도시된 바와 같은 상태의 전환 인터페이스(378b)는 제2 상태로 결정할 수 있고, 도 13에 도시된 바와 같은 상태의 전환 인터페이스(378c)는 제1 상태로 결정할 수 있다. 즉, 어플리케이션 구동 장치(300)는 전환 인터페이스(378b 및 378c) 상에서 원 형의 이동가능한 커서의 위치가 어느 위치인지에 따라서 전환 인터페이스(378b 및 378c)의 상태를 제1 상태 및 제2 상태 중 어느 하나의 상태로 결정할 수 있다.
만약 도 12에 도시된 바와 같이 제2 스레드 영상(374b)이 상대적으로 덜 투명한 경우, 즉 제2 스레드 영상(374b)이 인지 가능할 정도로 표시되는 경우에는 제1 위치(380a)에 대한 사용자의 탭 동작에 대응하여 제2 스레드의 동작을 제어할 수 있다. 예를 들어, 제1 위치(380a)에 대한 사용자의 탭 동작이 제2 스레드 영상(374b)에서 팁이라는 단어가 기재된 위치를 선택하는 동작인 경우, 어플리케이션 구동 장치(300)는 제2 스레드를 구동 시켜서 팁에 해당하는 정보를 제공하는 동작을 수행할 수 있다. 이 경우, 어플리케이션 구동 장치(300)는 제2 스레드 관리 서버(602)와의 유무선 통신을 수행하여 제2 스레드의 동작을 제어할 수 있다.
만약 도 13에 도시된 바와 같이 제2 스레드 영상(374c)이 상대적으로 많이 투명한 경우, 즉 제2 스레드 영상(37c)이 인지하기 힘들 정도로 투명하게 표시되는 경우에는 제1 위치(380b)에 대한 사용자의 탭 동작에 대응하여 제1 스레드의 동작을 제어할 수 있다. 예를 들어, 제1 위치(380b)에 대한 사용자의 탭 동작이 제1 스레드 영상(374c)에서 짧은 단검 두 개를 들고 있는 캐릭터가 존재하는 위치를 선택하는 동작인 경우, 어플리케이션 구동 장치(300)는 제1 스레드를 구동 시켜서 짧은 단검 두 개를 들고 있는 캐릭터를 공격하는 동작을 수행할 수 있다. 이 경우, 어플리케이션 구동 장치(300)는 제1 스레드 관리 서버(601)와의 유무선 통신을 수행하여 제1 스레드의 동작을 제어할 수 있다.
즉, 어플리케이션 구동 장치(300)는 동일한 제1 위치(380a 및 380b)에 대해 사용자의 입력이 수신되는 경우에도, 전환 인터페이스(378a 내지 378c)의 상태에 따라 제1 및 제2 스레드 중 어느 하나의 스레드의 동작을 제어할 수 있다.
한편, 어플리케이션 구동 장치(300)는 제2 스레드가 동작하는 상태에서도 제1 스레드가 활성화된 상태로 유지할 수 있다. 예를 들어, 도 12에 도시된 바와 같이 전환 인터페이스(378b)가 제2 상태인 경우, 어플리케이션 구동 장치(300)는 제1 위치에 대한 입력에 대응하여 제2 스레드를 구동하는 동시에, 제1 스레드에서의 전투가 전환 인터페이스(378b)가 제1 상태였을 경우에 결정된 명령에 따라서 지속적으로 수행되도록, 제1 스레드의 활성화 상태를 그대로 유지할 수 있다. 이를 통하여, 어플리케이션 구동 장치(300)는, 어플리케이션 구동 장치(300)의 사용자는 제1 스레드의 활성화 상태를 그대로 유지하면서, 어플리케이션 구동 장치(300)의 사용자에게 제2 스레드를 통하여 정보를 획득할 수 있는 기회를 제공할 수 있다.
한편 도 14를 참조하면, 어플리케이션 구동 장치(300)에는 제2 스레드를 나타내는 유저 인터페이스로서 플로팅 버튼 인터페이스(382)가 표시될 수도 있다.
이 때, 플로팅 버튼 인터페이스(382)는 어플리케이션 구동 장치(300)의 사용자의 조작에 따라 그 위치가 변경될 수도 있다. 예를 들어, 도 14에 도시된 바와 같이, 어플리케이션 구동 장치(300)의 사용자가 플로팅 버튼 인터페이스(382)를 터치하고, 해당 터치를 유지한 상태에서 표시부(320) 상에서 드래깅 동작을 수행할 경우, 어플리케이션 구동 장치(300)의 사용자의 터치 위치로 플로팅 버튼 인터페이스(382)가 이동될 수 있다. 이 때, 터치 후 드래깅은 일 예시에 불과하고, 표시부(320) 상에서 플로팅 버튼 인터페이스(382)의 위치를 변경시킬 수 있는 방법은 어플리케이션 구동 장치(300)가 수신할 수 있는 다양한 종류의 입력으로 구현될 수 있다.
한편 도 15를 참조하면, 어플리케이션 구동 장치(300)의 사용자가 플로팅 버튼 인터페이스(384)를 선택하는 동작을 수행할 경우, 플로팅 버튼 인터페이스(384)와 연결된 부분 또는 표시부(320)의 특정 위치에 제2 스레드와의 인터랙션을 위한 창이 표시될 수 있다. 예를 들어, 도 15에 도시된 바와 같이, 어플리케이션 구동 장치(300)의 사용자는 플로팅 버튼 인터페이스(384)가 표시된 위치에 싱글 탭 또는 더블 탭 등의 입력을 수행할 수 있고, 이 경우 제2 스레드와 관련된 동작을 나타내는 카페홈, 글쓰기, 스크린샷, 및 녹화와 같은 내용이 표시부(320) 상에 표시될 수 있다.
이렇게 어플리케이션 구동 장치(300)는 제2 스레드가 동작하는 상태에서 제1 스레드의 활성화 상태를 유지할 수 있다. 예를 들어, 도 15에 도시된 바와 같이 플로팅 버튼 인터페이스(384) 및 제2 스레드와 관련된 동작을 나타내는 창이 표시된 상태에서도, 제1 스레드에서의 전투가 과거 결정된 명령에 따라서 지속적으로 수행되도록, 제1 스레드의 활성화 상태를 그대로 유지할 수 있다. 이를 통하여, 어플리케이션 구동 장치(300)는, 어플리케이션 구동 장치(300)의 사용자는 제1 스레드의 활성화 상태를 그대로 유지하면서, 어플리케이션 구동 장치(300)의 사용자에게 제2 스레드를 통하여 정보를 획득할 수 있는 기회를 제공할 수 있다.
이상 설명된 본 발명에 따른 실시예는 컴퓨터 상에서 다양한 구성요소를 통하여 실행될 수 있는 컴퓨터 프로그램의 형태로 구현될 수 있으며, 이와 같은 컴퓨터 프로그램은 컴퓨터로 판독 가능한 매체에 기록될 수 있다. 이때, 매체는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체, CD-ROM 및 DVD와 같은 광기록 매체, 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical medium), 및 ROM, RAM, 플래시 메모리 등과 같은, 프로그램 명령어를 저장하고 실행하도록 특별히 구성된 하드웨어 장치를 포함할 수 있다.
한편, 상기 컴퓨터 프로그램은 본 발명을 위하여 특별히 설계되고 구성된 것이거나 컴퓨터 소프트웨어 분야의 당업자에게 공지되어 사용 가능한 것일 수 있다. 컴퓨터 프로그램의 예에는, 컴파일러에 의하여 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용하여 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드도 포함될 수 있다.
본 발명에서 설명하는 특정 실행들은 일 실시 예들로서, 어떠한 방법으로도 본 발명의 범위를 한정하는 것은 아니다. 명세서의 간결함을 위하여, 종래 전자적인 구성들, 제어 시스템들, 소프트웨어, 상기 시스템들의 다른 기능적인 측면들의 기재는 생략될 수 있다. 또한, 도면에 도시된 구성 요소들 간의 선들의 연결 또는 연결 부재들은 기능적인 연결 및/또는 물리적 또는 회로적 연결들을 예시적으로 나타낸 것으로서, 실제 장치에서는 대체 가능하거나 추가의 다양한 기능적인 연결, 물리적인 연결, 또는 회로 연결들로서 나타내어질 수 있다. 또한, '필수적인', '중요하게' 등과 같이 구체적인 언급이 없다면 본 발명의 적용을 위하여 반드시 필요한 구성 요소가 아닐 수 있다.
따라서, 본 발명의 사상은 상기 설명된 실시예에 국한되어 정해져서는 아니 되며, 후술하는 특허청구범위뿐만 아니라 이 특허청구범위와 균등한 또는 이로부터 등가적으로 변경된 모든 범위는 본 발명의 사상의 범주에 속한다고 할 것이다.
10: 어플리케이션 제작 시스템
20: 어플리케이션 구동 시스템
100: 어플리케이션 제작 장치
110: 수신부
120: 제어부
200: 어플리케이션 제작 툴 배포 서버
300: 어플리케이션 구동 장치
310: 입력부
320: 표시부
330: 제어부
400: 어플리케이션 배포 서버
500: 통신망
601: 제1 스레드 관리 서버
602: 제2 스레드 관리 서버

Claims (1)

  1. 제1 스레드 및 제2 스레드를 포함하는 어플리케이션 제작 방법으로서,
    수신부에 의해, 제1 스레드에 구동 여부가 종속되는 제2 스레드의 생성 요청을 수신하는 단계;
    제어부에 의해, 상기 제1 스레드가 구동된 상태에서, 상기 제2 스레드가 구동되지 않았을 때 표시되는 구동 인터페이스 및 상기 제2 스레드가 구동되었을 때 표시되는 종료 인터페이스를 생성하는 단계;
    상기 제어부에 의해, 상기 어플리케이션이 설치되는 어플리케이션 구동 장치를 통하여 수신되는 상기 구동 인터페이스 및 종료 인터페이스의 선택에 따라, 구동 여부가 제어되는 제2 스레드를 생성하는 단계;
    를 포함하는, 어플리케이션 제작 방법.
KR1020190066875A 2016-04-15 2019-06-05 어플리케이션 제작 장치, 방법, 어플리케이션 구동 방법, 및 컴퓨터 프로그램 KR20190070898A (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020160046504 2016-04-15
KR20160046504 2016-04-15

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
KR1020170092260A Division KR101989126B1 (ko) 2016-04-15 2017-07-20 어플리케이션 제작 장치, 방법, 어플리케이션 구동 방법, 및 컴퓨터 프로그램

Publications (1)

Publication Number Publication Date
KR20190070898A true KR20190070898A (ko) 2019-06-21

Family

ID=59854865

Family Applications (3)

Application Number Title Priority Date Filing Date
KR1020170025044A KR101789222B1 (ko) 2016-04-15 2017-02-24 어플리케이션 제작 장치, 방법, 어플리케이션 구동 방법, 및 컴퓨터 프로그램
KR1020170092260A KR101989126B1 (ko) 2016-04-15 2017-07-20 어플리케이션 제작 장치, 방법, 어플리케이션 구동 방법, 및 컴퓨터 프로그램
KR1020190066875A KR20190070898A (ko) 2016-04-15 2019-06-05 어플리케이션 제작 장치, 방법, 어플리케이션 구동 방법, 및 컴퓨터 프로그램

Family Applications Before (2)

Application Number Title Priority Date Filing Date
KR1020170025044A KR101789222B1 (ko) 2016-04-15 2017-02-24 어플리케이션 제작 장치, 방법, 어플리케이션 구동 방법, 및 컴퓨터 프로그램
KR1020170092260A KR101989126B1 (ko) 2016-04-15 2017-07-20 어플리케이션 제작 장치, 방법, 어플리케이션 구동 방법, 및 컴퓨터 프로그램

Country Status (7)

Country Link
US (1) US10579218B2 (ko)
EP (1) EP3443452B1 (ko)
JP (3) JP6195964B1 (ko)
KR (3) KR101789222B1 (ko)
CN (1) CN107301038B (ko)
TW (1) TWI662475B (ko)
WO (1) WO2017179789A1 (ko)

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6195964B1 (ja) * 2016-04-15 2017-09-13 ネイバー コーポレーションNAVER Corporation アプリケーション制作装置及びその方法、アプリケーション駆動装置、並びにコンピュータプログラム
CN108008950B (zh) * 2017-11-24 2020-10-16 武汉斗鱼网络科技有限公司 一种用户界面更新的实现方法及装置
KR102188283B1 (ko) * 2017-11-30 2020-12-08 전영준 투명앱 인터페이스 제공 시스템 및 이에 따른 투명앱 프로그램
US11134312B2 (en) * 2017-12-14 2021-09-28 Google Llc Methods, systems, and media for presenting contextual information in connection with media content
JP7112862B2 (ja) 2018-03-19 2022-08-04 シャープ株式会社 基地局装置、通信システム、通信方法、及びプログラム
US20220134226A1 (en) * 2019-02-22 2022-05-05 Sony Group Corporation Information processing apparatus, information processing method, and program
CN111933126A (zh) * 2019-05-13 2020-11-13 阿里巴巴集团控股有限公司 语音编译方法、装置、电子设备及计算机可读存储介质
US11368906B2 (en) 2019-12-16 2022-06-21 Cisco Technology, Inc. Multi-wireless access systems and methods for efficient link selection and aggregation
US11620795B2 (en) * 2020-03-27 2023-04-04 Snap Inc. Displaying augmented reality content in messaging application
KR102577630B1 (ko) * 2020-03-27 2023-09-13 스냅 인코포레이티드 메시징 애플리케이션에서의 증강 현실 콘텐츠의 디스플레이
CN114527900A (zh) * 2020-10-30 2022-05-24 华为技术有限公司 界面信息的展示方法和电子设备
TWI795009B (zh) * 2021-10-01 2023-03-01 王世華 應用程式介面(api)生成與管理系統

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20150047219A (ko) 2013-10-24 2015-05-04 (주)아이비솔루션 스마트폰 어플리케이션 제작 시스템 및 제작 방법

Family Cites Families (34)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5831615A (en) * 1994-09-30 1998-11-03 Intel Corporation Method and apparatus for redrawing transparent windows
US6215490B1 (en) * 1998-02-02 2001-04-10 International Business Machines Corporation Task window navigation method and system
JP2000112607A (ja) * 1998-10-09 2000-04-21 Fujitsu Ltd マルチウィンドウインタフェース制御方法
US6604125B1 (en) 1999-09-24 2003-08-05 Sun Microsystems, Inc. Mechanism for enabling a thread unaware or non thread safe application to be executed safely in a multi-threaded environment
KR20010055927A (ko) 1999-12-13 2001-07-04 이계철 반복적인 구조를 가지는 전자문서의 입력 방법
TW594556B (en) 2000-11-03 2004-06-21 Synq Technology Inc Computer system for displaying multiple window screens
JP2003141018A (ja) * 2001-11-02 2003-05-16 Fujitsu Ltd サーバ、中継装置、情報提供方法、およびプログラム
US8065614B2 (en) * 2003-04-09 2011-11-22 Ati Technologies, Inc. System for displaying video and method thereof
KR20040110116A (ko) * 2003-06-18 2004-12-31 에스케이 텔레콤주식회사 무선 단말기의 어플리케이션 실행방법
JP2006018631A (ja) * 2004-07-02 2006-01-19 Speed System:Kk ウェブ文書閲覧装置および方法
JP4185159B1 (ja) 2008-01-30 2008-11-26 株式会社三菱東京Ufj銀行 アプリケーション開発支援装置及びプログラム
BRPI0822544B1 (pt) 2008-08-29 2019-09-03 Hewlett Packard Development Co sistema para combinar interfaces de aplicações externas e subaplicações e método para combinar interfaces de aplicações externas e subaplicações
US8819585B2 (en) 2008-10-27 2014-08-26 Microsoft Corporation Child window surfacing and management
US20100153877A1 (en) * 2008-12-11 2010-06-17 Mika Antero Rautava Task Switching
KR101651202B1 (ko) 2009-12-21 2016-08-26 삼성전자주식회사 가상화 장치 및 가상화 장치의 동작 방법
CN101777008A (zh) 2009-12-31 2010-07-14 中兴通讯股份有限公司 移动终端系统线程池实现方法及装置
CN101950245A (zh) * 2010-09-29 2011-01-19 宇龙计算机通信科技(深圳)有限公司 一种移动终端的信息显示方法、系统及移动终端
US8997017B2 (en) * 2011-10-21 2015-03-31 International Business Machines Corporation Controlling interactions via overlaid windows
KR101888457B1 (ko) * 2011-11-16 2018-08-16 삼성전자주식회사 복수 개의 어플리케이션을 실행하는 터치스크린을 가지는 장치 및 그 제어 방법
KR101891794B1 (ko) 2011-11-28 2018-08-27 삼성전자주식회사 보조 윈도우 표시 방법 및 이를 지원하는 단말기
KR101356368B1 (ko) 2012-02-24 2014-01-29 주식회사 팬택 어플리케이션 전환 장치 및 방법
KR102164453B1 (ko) * 2012-04-07 2020-10-13 삼성전자주식회사 투명 디스플레이를 포함하는 디바이스에서 오브젝트 제어 방법 및 그 디바이스와 기록 매체
KR101960061B1 (ko) * 2012-05-21 2019-03-19 삼성전자주식회사 디바이스에서 실행되는 복수의 애플리케이션들에 대한 실행 화면들을 전환하여 디스플레이하는 방법 및 장치
US8816989B2 (en) * 2012-05-22 2014-08-26 Lenovo (Singapore) Pte. Ltd. User interface navigation utilizing pressure-sensitive touch
CN103902196B (zh) * 2012-12-28 2017-02-08 联芯科技有限公司 屏幕显示系统、方法及电子显示设备
KR102029242B1 (ko) 2013-01-03 2019-11-08 엘지전자 주식회사 이동 단말기 제어방법
KR102110193B1 (ko) * 2013-03-25 2020-05-13 삼성전자주식회사 기기의 화면제어장치 및 방법
JP5982345B2 (ja) * 2013-10-29 2016-08-31 京セラドキュメントソリューションズ株式会社 表示装置、電子機器、及びコンピュータープログラム
KR20150077774A (ko) 2013-12-30 2015-07-08 삼성전자주식회사 화면 전환 방법 및 그 장치
CN103941977A (zh) * 2014-03-28 2014-07-23 联想(北京)有限公司 一种信息处理方法及电子设备
CN105094577A (zh) * 2014-04-23 2015-11-25 小米科技有限责任公司 应用切换的方法和装置
US10042547B2 (en) * 2014-06-17 2018-08-07 Vmware, Inc. User interface control based on pinch gestures
CN105426084A (zh) * 2015-12-10 2016-03-23 小米科技有限责任公司 界面切换方法、装置及终端
JP6195964B1 (ja) * 2016-04-15 2017-09-13 ネイバー コーポレーションNAVER Corporation アプリケーション制作装置及びその方法、アプリケーション駆動装置、並びにコンピュータプログラム

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20150047219A (ko) 2013-10-24 2015-05-04 (주)아이비솔루션 스마트폰 어플리케이션 제작 시스템 및 제작 방법

Also Published As

Publication number Publication date
JP2017191589A (ja) 2017-10-19
WO2017179789A1 (en) 2017-10-19
KR101789222B1 (ko) 2017-10-26
CN107301038A (zh) 2017-10-27
JP6760902B2 (ja) 2020-09-23
EP3443452B1 (en) 2023-06-07
KR20170118626A (ko) 2017-10-25
TWI662475B (zh) 2019-06-11
US20170300187A1 (en) 2017-10-19
EP3443452A4 (en) 2019-12-18
KR20170118593A (ko) 2017-10-25
JP6195964B1 (ja) 2017-09-13
JP2017224340A (ja) 2017-12-21
JP2021007007A (ja) 2021-01-21
EP3443452A1 (en) 2019-02-20
US10579218B2 (en) 2020-03-03
CN107301038B (zh) 2021-09-07
TW201738732A (zh) 2017-11-01
KR101989126B1 (ko) 2019-06-14

Similar Documents

Publication Publication Date Title
KR101989126B1 (ko) 어플리케이션 제작 장치, 방법, 어플리케이션 구동 방법, 및 컴퓨터 프로그램
KR102269481B1 (ko) 디바이스 간에 화면 공유 방법 및 이를 이용하는 디바이스
AU2013355486B2 (en) Display device and method of controlling the same
TWI533192B (zh) 具有客製化導航之圖形使用者界面
US9569097B2 (en) Video streaming in a web browser
US20140365956A1 (en) Device, method, and graphical user interface for navigating between user interfaces
US20130241854A1 (en) Image sharing system and user terminal for the system
US8386927B1 (en) Gravity-based link assist
US8407608B1 (en) Touch input assist
US11157097B1 (en) Adaptive scroll wheel
KR20170036786A (ko) 2차 디스플레이용 모바일 디바이스 입력 제어기
US20150058770A1 (en) Method and appratus for providing always-on-top user interface for mobile application
US11822739B2 (en) Adaptive scroll wheel
US20170357389A1 (en) Device, Method, and Graphical User Interface for Media Playback in an Accessibility Mode
US11099731B1 (en) Techniques for content management using a gesture sensitive element
US20160313912A1 (en) Method and device for providing controller
US20130244730A1 (en) User terminal capable of sharing image and method for controlling the same
US10445314B1 (en) Instant unified search
KR101329618B1 (ko) 터치게임을 제공하는 방법, 게임장치 및 기록매체
US11922006B2 (en) Media control for screensavers on an electronic device
KR101810188B1 (ko) 영상 표시 장치, 영상 생성 장치, 영상 제공 서버, 영상 표시 방법, 영상 생성 방법 및 컴퓨터 프로그램
CN105474169B (zh) 启动表面控制
KR102678963B1 (ko) 온라인 광고 노출 방법 및 시스템
US20240036668A1 (en) Adaptive scroll wheel
US10545627B2 (en) Downloading of three-dimensional scene data for asynchronous navigation

Legal Events

Date Code Title Description
A107 Divisional application of patent