KR20150141124A - 응용 프로그램의 처리방법, 장치, 프로그램 및 기록매체 - Google Patents

응용 프로그램의 처리방법, 장치, 프로그램 및 기록매체 Download PDF

Info

Publication number
KR20150141124A
KR20150141124A KR1020147035959A KR20147035959A KR20150141124A KR 20150141124 A KR20150141124 A KR 20150141124A KR 1020147035959 A KR1020147035959 A KR 1020147035959A KR 20147035959 A KR20147035959 A KR 20147035959A KR 20150141124 A KR20150141124 A KR 20150141124A
Authority
KR
South Korea
Prior art keywords
application program
execution
background
logic
unit
Prior art date
Application number
KR1020147035959A
Other languages
English (en)
Other versions
KR101668786B1 (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 시아오미 아이엔씨.
Publication of KR20150141124A publication Critical patent/KR20150141124A/ko
Application granted granted Critical
Publication of KR101668786B1 publication Critical patent/KR101668786B1/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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/22Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks comprising specially adapted graphical user interfaces [GUI]
    • 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/04842Selection of displayed objects or displayed text elements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • 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
    • G06F9/44505Configuring for program initiating, e.g. using registry, configuration files
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Abstract

본 발명은 응용 프로그램의 처리방법 및 장치에 관한 것이며, 전자단말장치 분야에 속하며, 전자단말장치의 처리자원을 효과적으로 절약하고, 자원의 이용효율을 높이였다. 본 발명의 방법은 주로, 사용자 인터페이스의 UI프로세스와 로직 프로세스를 포함하는 응용 프로그램을 포어그라운드 실행으로부터 백그라운드 실행으로 전환하는 단계와, 상기 응용 프로그램의 UI프로세스를 종료하고, 상기 응용 프로그램의 로직 프로세스를 계속 실행하는 단계를 포함한다. 본 발명의 실시예는 주로 전자단말장치의 응용 프로그램의 처리과정에 사용된다.

Description

응용 프로그램의 처리방법 및 장치{PROCESSING METHOD AND DEVICE FOR APPLICATION PROGRAM}
본원은 2014년 5월 14일에 중국전리국에 제출한 출원 번호가 201410203339.1이며 발명의 명칭이 《응용 프로그램의 처리방법 및 장치》인 중국 특허 출원을 기초로 우선권을 주장하며, 당해 중국 특허 출원의 전부 내용을 본원에 원용한다.
본 발명은 전자단말장치 분야에 관한 것이며, 특히 응용 프로그램의 처리방법 및 장치에 관한 것이다.
현재, 휴대전화, pad등의 전자단말장치에 사용되는 응용 프로그램이 아주 많으며, 하나의 전자단말장치에 복수의 응용 프로그램이 동시에 실행되는 경우가 흔히 나타난다. 응용 프로그램의 실행은 두 가지 형식을 포함한다. 하나는 포어그라운드 실행이며, 즉, 스크린에 표시되는 윈도우 또는 인터페이스상에서 직접 실행되어, 프로그램의 실행 중의 현재의 인터페이스가 표시되며, 표시된 인터페이스를 통하여 전자단말장치 사용자와 인터랙티브 한다. 다른 하나의 형식은 백그라운드 실행이며, 즉, 스크린에는 응용 프로그램의 실행 인터페이스가 표시되지 않지만, 상기 응용 프로그램은 서비스를 계속 제공하며 언제든지 포어그라운드로 전환하여 표시될 수 있다.
전자단말장치의 실제 사용과정에 있어서, 흔히 응용 프로그램을 포어그라운드 실행으로부터 백그라운드 실행으로 전환할 필요가 있다. 예를 들면, 사용자가 음악 어플리케이션을 열어, 음악 재생하기 시작한다. 이때, 음악 어플리케이션의 프로세스는 상기 음악 어플리케이션의 UI(User Interface, 사용자 인터페이스)를 산출하여 표시한다. 인터페이스의 내용은 재생제어버튼, 레코드의 표지그림, 노래 정보 및 스크롤 가사 등을 포함할 수 있다. 이때, 사용자는 음악 어플리케이션을 백그라운드로 전환하여 실행하며, 백업 어플리케이션을 시동하여, 단말 데이터의 백업을 시작한다. 백업 어플리케이션의 프로세스도 백업 제어 버튼 및 백업 진도를 포함하는 UI를 산출하여 표시한다. 사용자는 백업을 실시하면서 메인 페이지로 전환하여 기타 조작을 실시할 수도 있지만, 여기서 하나하나 예시하지 않는다.
이러한 상황에 대한 관련기술의 처리방법은 응용 프로그램을 백그라운드로 전환하여 실행할 경우, 포어그라운드 실행시와 같은 프로세스를 계속 실행하며, 응용 프로그램의 데이터, 서비스 및 UI전체는 포어그라운드 실행시와 같이 계속 처리하며, 단지 UI를 숨기는 것일 뿐이다. 상기 응용 프로그램을 포어그라운드로 다시 전환하여 실행할 때, UI를 표시한다.
상기 응용 프로그램의 처리과정에 있어서, 적어도 하기와 같은 문제가 존재한다. 응용 프로그램을 백그라운드 실행으로 전환한 후, 포어그라운드 실행시와 같은 프로세스로 실행하므로, 대량의 처리자원을 점유한다. 또한, 실제에 있어서, 사용자는 백그라운드 프로그램의 UI에는 관심이 없다. 따라서, 이러한 처리방법은 처리자원의 낭비를 초리하고, 자원의 이용효율이 낮다.
관련기술에 존재하는 문제를 해결하기 위하여, 본 발명은 전자단말장치의 처리자원을 유효하게 절약하고, 자원의 이용효율을 높일 수 있는 응용 프로그램의 처리방법 및 장치를 제공한다.
본 발명의 실시예의 제1 양태에 따르면, 사용자 인터페이스의 UI프로세스와 로직 프로세스를 포함하는 응용 프로그램을 포어그라운드 실행으로부터 백그라운드 실행으로 전환하는 단계와,
상기 응용 프로그램의 UI프로세스를 종료하고, 상기 응용 프로그램의 로직 프로세스를 계속 실행하는 단계를 포함하는 응용 프로그램의 처리방법을 제공한다.
본 발명의 실시예의 제2 양태에 따르면, 사용자 인터페이스(UI) 프로세스와 로직 프로세스를 포함하는 프로그램을 포어그라운드 실행으로부터 백그라운드 실행으로 전환하기 위한 제1 전환유닛과,
상기 제1 전환유닛이 응용 프로그램을 포어그라운드 실행으로부터 백그라운드 실행으로 전환한 후, 상기 응용 프로그램의 UI프로세스를 종료하기 위한 종료유닛과,
상기 제1 전환유닛이 응용 프로그램을 포어그라운드 실행으로부터 백그라운드 실행으로 전환한 후, 상기 응용 프로그램의 로직 프로세스를 계속 실행하기 위한 실행유닛을 포함하는 응용 프로그램의 처리장치를 제공한다.
본 발명의 실시예가 제공하는 기술 방안은 이하와 같이 유익한 효과를 포함할 수 있다. 응용 프로그램의 UI프로세스와 로직 프로세스를 분리하여 독립적으로 실행하는 것을 통해, 응용 프로그램이 백그라운드로 전환되여 실행하는 경우, 사용자가 필요하는 로직 프로세스를 계속 실행하고, 사용자가 관심 없는 UI프로세스를 종료할 수 있다. 따라서, 관련기술 중의, 응용 프로그램의 실행을 모두 하나의 프로세스에 집중하여 실행하고, 백그라운드에서도 응용 프로그램의 모든 프로세스를 계속 실행하는 방법에 비하여, 응용 프로그램이 백그라운드로 전환하여 실행되는 경우, UI산출에 의해 점유하는 CPU 처리자원과 메모리 공간을 절약할 수 있어, 복수의 응용 프로그램이 동시에 실행되는 경우 전자단말장치의 소비 전력을 절감하며, 절전의 목적을 실현할 수 있다. 또한, 전자단말장치의 CPU 처리자원의 낭비를 피면하였으므로, 자원의 이용효율을 높이였을 뿐만 아니라, 전자단말장치의 발열을 효과적으로 감소할 수 있다.
이상의 일반적인 설명 및 이하의 상세한 설명은 단지 예시 및 해석에 불과하며, 본 발명을 한정하려는 것이 아니라는 것을 이해해야 한다.
여기에 표시된 도면은 명세서에 포함되며 명세서의 일부를 구성하고 본 발명에 따른 실시예를 도시하였으며, 명세서와 함께 본 발명의 원리를 해석하는데 사용된다.
도 1은 하나의 예시적인 실시예에 따른 응용 프로그램의 처리방법의 플로차트이다.
도 2는 하나의 예시적인 실시예에 따른 또 하나의 응용 프로그램의 처리방법의 플로차트이다.
도 3은 하나의 예시적인 실시예에 따른 또 하나의 응용 프로그램의 처리방법의 플로차트이다.
도 4는 하나의 예시적인 실시예에 따른 또 하나의 응용 프로그램의 처리방법의 플로차트이다.
도 5는 하나의 예시적인 실시예에 따른 또 하나의 응용 프로그램의 처리방법의 플로차트이다.
도 6은 응용 프로그램의 처리장치의 블록도이다.
도 7은 또 하나의 응용 프로그램의 처리장치의 블록도이다.
도 8은 또 하나의 응용 프로그램의 처리장치의 블록도이다.
도 9는 또 하나의 응용 프로그램의 처리장치의 블록도이다.
도 10은 또 하나의 응용 프로그램의 처리장치의 블록도이다.
도 11은 하나의 예시적인 실시예에 따른 응용 프로그램의 처리장치의 블록도이다.
도 12는 하나의 예시적인 실시예에 따른 또 하나의 응용 프로그램의 처리장치의 블록도이다.
여기에서 예시적인 실시예에 대하여 상세히 설명하며 그 예시를 도면에 표시한다. 특별히 설명하지 않는 한 기타 도면에서 동일한 부호는 동일하거나 유사한 요소를 나타낸다. 하기의 예시적인 실시예에서 언급한 실시예는 본 발명에 일치하는 모든 실시형태를 대표하는것은 아니다. 반대로, 그들은 단지 특허청구범위에 기재된 본 발명의 일부 측면과 일치한 장치 및 방법의 일례에 불과하다.
도1은 하나의 예시적인 실시예에 따른 응용 프로그램의 처리방법의 플로차트이며, 도1에 나타낸바와 같이, 응용 프로그램의 처리방법은 단말장치에 사용되어 하기와 같은 단계를 포함한다.
단계S11에 있어서, 응용 프로그램을 포어그라운드 실행으로부터 백그라운드 실행으로 전환한다. 여기서, 상기 응용 프로그램의 프로세스는 UI프로세스와 로직 프로세스를 포함한다.
본 발명에 있어서, 응용 프로그램의 실행과정에 있어서, 관련기술의 응용 프로그램의 실행방법과의 차이점은, 일반적으로 관련기술에 있어서 하나의 응용 프로그램은 하나의 프로세스만 가지고, 프로세스에는 서비스, 데이터, 알고리즘 및 UI의 서브프로그램이 섞여 있다. 본 발명에 있어서, 응용 프로그램의 프로그램 코드 중의 일부분은 응용 프로그램의 서비스, 데이터 또는 알고리즘과 관련되는 서브프로그램이며, 이러한 서브프로그램을 로직 프로세스에 병합하여 실행할 수 있다. 응용 프로그램의 다른 부분 프로그램 코드는 코어 서비스, 데이터 또는 알고리즘에 대한 영향이 작으며, 일반적으로 UI관련의 서브프로그램이며, 이러한 서브프로그램은 UI프로세스에 병합하여 실행할 수 있다.
예를 들면, 음악 응용 프로그램에 중의 재생제어버튼, 레코드의 표지그림, 음악 정보 및 스크롤 가사 등을 모두 UI프로세스에 구획하여 실행함으로써, 백그라운드로 전환했을 경우, 이러한 프로그램을 종료할 수 있도록 한다. 한편, 음악의 재생, 음악 데이터의 다운로드 등 응용 프로그램의 서비스 프로그램을 로직 프로세스에 구획하여 실행하며, 백그라운드로 전환하여도 계속 실행할 수 있도록 한다. 유사적으로, 라디오 어플리케이션, 백업 어플리케이션, 주식 어플리케이션 및 날씨 어플리케이션 등 많은 어플리케이션은, 모두 유사한 방법으로, 프로그램을 UI프로세스와 로직 프로세스에 구획한 후, 각각 독립적으로 실행할 수 있다.
단계 S12에 있어서, 상기 응용 프로그램의 UI프로세스를 종료하고, 상기 응용 프로그램의 로직 프로세스를 계속 실행한다.
여기서, 본 발명은 S11에서 설명한 UI프로세스와 로직 프로세스를 분리하여 독립적으로 실행하는 방법을 채용하므로써, 백그라운드로 전환하여 실행하는 경우, 이 두 가지의 프로세스를 구별하여 취급할 수 있다. 한편, 사용자는 응용 프로그램을 포어그라운드로부터 백그라운드로 전환하여 실행하기 때문에, 상기 응용 프로그램을 종료한 것은 아니다. 따라서, 단말장치의 완전한 어플리케이션 기능을 확보하기 위하여, 백그라운드에서 실행되는 응용 프로그램은 여전히 상응하는 서비스를 계속 제공한다. 즉 상기 응용 프로그램중 대응되는 로직 프로세스를 계속 실행한다. 한편, 기타 인터페이스를 표시하거나 또는 화면을 끄기 위하여, 사용자는 응용 프로그램을 백그라운드로 전환하므로, 백그라운드에서 실행되는 응용 프로그램의 UI인터페이스를 감지할 수 없다. 하지만, 이러한 UI인터페이스의 산출이 점유 하는 처리자원이 비교적 많으므로, 로직 프로세스의 수 배로 되기도 한다. 따라서, 점유 하는 자원을 줄이기 위하여, 백그라운드 실행시에, UI인터페이스를 산출하지 않고, 즉 UI프로세스를 종료한다.
또한, 도2는 또 하나의 예시적인 실시예에 따른 응용 프로그램의 처리방법의 플로차트이며, 도2에 나타낸바와 같이, 상기 방법은 하기의 단계를 더 포함할 수 있다.
단계 S13에 있어서, 상기 응용 프로그램을 백그라운드로부터 포어그라운드로 전환하여 실행하는 경우, 상기 로직 프로세스에 근거하여, 상기 UI프로세스를 다시 작성한다.
여기서, 백그라운드 실행시에 UI프로세스를 종료하였지만, 포어그라운드로 전환하여 실행할 때, 시기적절 한편 정확하게 응용 프로그램의 UI인터페이스를 표시해야 한다. 포어그라운드로 전환하여 실행할 때, UI프로세스를 다시 기동하며, UI프로세스는 자기 복원을 보완한다. 다시 열린 후, 우선 로직 프로세스 상태를 액세스 하며, 현재의 로직 프로세스에 대응하는 UI인터페이스를 산출한다.
또한, 도3은 또 하나의 예시적인 실시예에 따른 응용 프로그램의 처리방법의 플로차트이며, 도3에 나타낸바와 같이, 상기 방법은 단계 S11 전에, 하기의 단계를 더 포함할 수 있다.
단계S14에 있어서, 상기 응용 프로그램을 기동할 시, 상기 응용 프로그램의 설정파일의 로직 프로세스 마크 및 / 또는 UI프로세스 마크를 판독한다.
여기서, 응용 프로그램의 개발과정에서, 개발자는 상기 응용 프로그램의 설정파일에 상응하는 마크를 붙여, 본 발명의 로직 프로세스와 UI프로세스로 분리하는 방식을 만족한다. 마크를 붙이는 방법으로서 종료해서 안되는 프로세스에 마크를 붙이는 방업이 있다. 예를 들어 《server》, 《data》 등에 《process》 또는 《logic》 마크를 붙인다. 여기서, 열거한 《process》 또는 《logic》는 로직 프로세스의 마크로 간주할 수 있다. 이와 같이, 운영체제(operating system)는 상기 응용 프로그램을 실행할 때, 《logic》에 대응되는 프로그램 전체를 로직 프로세스에 집중하여 실행할 수 있고, 나머지 프로그램을 UI프로세스에 넣어서 실행할 수 있다. 응용 프로그램의 설정파일 중에서, UI와 관련되는 프로그램에 UI프로세스 마크를 붙이고, 유사적으로 UI프로세스 마크를 가지는 프로그램을 UI프로세스에 넣어 실행하며, 나머지는 백그라운드로 전환하여도 종료해서는 안되는 로직 프로세스로서 실행한다. 또는, UI와 관련되는 프로그램에 UI프로세스 마크를 붙이고, 로직과 관련되는 프로그램에 로직 프로세스 마크를 붙일 수도 있다. 본 발명의 실시예는 이에 대하여 한정하지 않는다.
단계S15에 있어서, 상기 로직 프로세스 마크 및 / 또는 UI프로세스 마크에 근거하여, 상기 응용 프로그램에 포함되는 각 서브프로그램에 대하여 프로세스 타입의 구획을 실시한다. 여기서, 상기 프로세스 타입은 UI타입과 로직 타입을 포함한다.
예를 들면, 음악 응용 프로그램을 예로 하면, 상기 응용 프로그램의 설정파일명은 《AndroidManifest.xml》이고, 그 중의 요소는 액티버티(Activity), 서비스(Service), 프로바이더(Provider) 및 리시버(Receiver)를 포함한다.
여기서, 각각의 요소를 간단히 소개하고, 각각의 요소가 소속하는 프로세스 타입을 구획하면, 하기와 같다.
① 《Activity》는 예를 들면, 우리가 보는 음악 리스트, 재생 인터페이스 등과 같은 UI인터페이스의 각 컴퍼넌트에 대응하고, UI프로세스에 속한다.
② 《Service》는 백그라운드의 재생 서비스이며, 로직 프로세스에 속한다.
③ 《Provider》는 예를 들면, 현재 포함하고 있는 음악 및 음악제작자 등과 같은 음악 데이터이며, 로직 프로세스에 속한다.
④ 《Receiver》는 예를 들면, 어느 노래의 다운로드가 완료한 후, 재생을 시작하는 것과 같은 시스템의 방송을 수신한 후, 트리거되는 동작이며, 로직 프로세스에 속한다.
단계S16에 있어서, 구획된 상기 프로세스 타입에 근거하여, 상기 UI프로세스 및 상기 로직 프로세스를 실행한다. 여기서, 상기 UI프로세스에서, 상기 UI타입의 서브프로그램을 실행하고, 상기 로직 프로세스에서, 상기 로직 타입의 서브프로그램을 실행한다.
여기서, S15에서 구획된 결과에 근거하여, UI타입에 속하는 서브프로그램을 독립적으로 실행하기 위한 UI프로세스를 확립하고, 로직 타입에 속하는 서브프로그램을 독립적으로 실행하기 위한 로직 프로세스를 확립한다. 예를 들면, 하나의 음악 어플리케이션의 모든 《Activity》요소를 하나의 UI프로세스에서 실행하고, 《Service》, 《Provider》 및 《Receiver》요소 전체를 하나의 로직 프로세스에 병합하여 실행한다.
여기서, 단계 S15가 실현되는 경우, 즉 응용 프로그램의 설정파일에, 백그라운드 실행시에 종료해도 되는 서브프로그램과 백그라운드 실행시에 종료해서는 안되는 서브프로그램이 체현될 경우, 본 발명의 실시예의 방법을 채용하면 처리자원을 효과적으로 절약할 수 있다는 것을 설명해야 한다. 하지만, 응용 프로그램의 개발업자의 수량이 많으므로, 각 응용 프로그램의 설정파일이 모두 본 발명의 UI프로세스와 로직 프로세스로 분리하는 방식에 부합한다고 확보할 수 없다. 응용 프로그램에 필요한 백그라운드 프로그램을 종료하여 응용 프로그램 기능의 정상적인 사용에 영향을 주는 것을 피면하기 위하여, 본 실시예는 상이한 처리방법을 채용할 수도 있다. 예를 들면, UI프로세스와 로직 프로세스를 분리하는 방식에 부합하는 응용 프로그램에 대하여, 백그라운드 실행시에 그 UI프로세스를 종료하고, UI프로세스와 로직 프로세스를 분리하는 방식에 부합되지 않는 응용 프로그램에 대하여, 백그라운드 실행시에, 있어야 하는 프로그램을 계속 실행한다.
또한, 바람직한 실시방식에 있어서, 도4에 나타낸바와 같이, 플로우의 인터페이스의 전환을 확보하여, UI프로세스가 빈번히 종료 및 재기동하는 것을 피면하기 위하여, 백그라운드로 퇴하여 실행한 후, UI프로세스를 종료하기 전에, 시간에 대한 판단조건을 추가할 수 있다. 구체적으로, 상기 방법은 단계 S11 후에,
상기 응용 프로그램이 백그라운드에서 실행하는 시간길이가 예정된 시간길이에 이르렀는지 여부를 확정하는 단계S17를 더 포함할 수 있다.
여기서, 상기 응용 프로그램이 백그라운드에서 실행하는 시간길이가 예정된 시간길이에 이르렀을 경우, 단계S12를 실행한다. 상기 응용 프로그램이 백그라운드에서 실행하는 시간길이가 예정된 시간길이에 이르지 않았을 경우, 단계S17를 계속 실행한다. 응용 프로그램을 백그라운드로 전환하여 계시(計時)하기 시작하며, 예정된 시간길이에 이르지 않아 포어그라운드 실행으로 되돌아오면, 계시를 종료하고, 백그라운드에 다시 이행하여 실행되는 경우, 새로운 계시를 시작할 수 있는 것을 이해할 수 있다. 상기 예정된 시간길이는 응용 프로그램의 개발과정에서 미리 배치할 수 있고, 사용자가 설정할 수도 있다. 예를 들면, 예정된 시간길이는 5초 또는 10초 등일 수 있다.
또 하나의 바람직한 실시방식에 있어서, 도5에 나타낸바와 같이, 백그라운드의 UI프로세스를 종료하는지 여부를 판단하는 조건으로서 시간길이 외에, 다른 판단조건을 채용할 수도 있다. 구체적으로, 상기 방법은 단계 S11 후, 하기의 단계를 더 포함할 수 있다.
단계 S18에 있어서, 백그라운드에서 실행하는 기타 UI프로세스의 수량이 예정된 수량에 도달하는지 여부를 확정한다.
여기서, 상기 기타 UI프로세스의 수량이 예정된 수량에 도달하였을 경우, 단계 S12를 실행한다. 현재 백그라운드에서 실행하는 UI프로세스의 수량이 예정된 수량에 도달하지 않았을 경우, 처리자원의 사용 가능한 공간이 비교적 충분하다고 간주할 수 있으며, 단계 S19를 실행한다. 상기 예정된 수량은, 응용 프로그램의 개발과정에서 미리 배치할 수 있고, 사용자가 설정할 수 있다. 예를 들면, 예정된 수량은 5개 또는 10개 등일 수 있다.
단계 S19에 있어서, 백그라운드에서 상기 응용 프로그램의 UI프로세스와 로직 프로세스를 계속 실행한다.
여기서, 현재 백그라운드에서 실행하는 UI프로세스의 수량이 예정된 수량에 도달하지 않았기 때문에, 응용 프로그램의 UI프로세스를 종료하지 않고, 백그라운드에서 실행할 때 여전히 UI프로세스와 로직 프로세스를 동시에 실행할 수 있다. 백그라운드에서 실행하는 UI프로세스가 예정된 수량에 도달하였을 경우, 처리자원의 과도 점유를 피면하기 위하여, 후속하여 백그라운드에 추가하여 실행되는 응용 프로그램의 UI프로세스를 종료할 수 있다.
본 발명의 실시예가 제공하는 응용 프로그램의 처리방법은 응용 프로그램의 UI프로세스와 로직 프로세스를 분리하여 독립적으로 실행하는 것을 통해, 응용 프로그램이 백그라운드로 전환되여 실행하는 경우, 사용자가 필요하는 로직 프로세스를 계속 실행하고, 사용자가 관심 없는 UI프로세스를 종료할 수 있다. 따라서, 관련기술 중의, 응용 프로그램의 실행을 모두 하나의 프로세스에 집중하여 실행하고, 백그라운드에서도 응용 프로그램의 모든 프로세스를 계속 실행하는 방법에 비하여, 응용 프로그램이 백그라운드로 전환하여 실행되는 경우, UI산출에 의해 점유하는 CPU 처리자원과 메모리 공간을 절약할 수 있어, 복수의 응용 프로그램이 동시에 실행되는 경우 전자단말장치의 소비 전력을 절감하며, 절전의 목적을 실현할 수 있다. 또한, 전자단말장치의 CPU 처리자원의 낭비를 피면하였으므로, 자원의 이용효율을 높이였을 뿐만 아니라, 전자단말장치의 발열을 효과적으로 감소할 수 있다.
도6은 하나의 예시적인 실시예에 따른 응용 프로그램의 처리장치(200)의 블록도이다. 도6에 나타낸바와 같이, 상기 장치(200)은, 제1 전환유닛(201), 종료유닛(202) 및 실행유닛(203)을 포함한다.
상기 제1 전환유닛(201)은 응용 프로그램을 포어그라운드 실행으로부터 백그라운드 실행으로 전환하도록 구성된다. 여기서, 상기 응용 프로그램의 프로세스는 사용자 인터페이스의 UI프로세스와 로직 프로세스를 포함한다.
상기 종료유닛(202)은, 상기 제1 전환유닛(201)이 응용 프로그램을 포어그라운드 실행으로부터 백그라운드 실행으로 전환한 후, 상기 응용 프로그램의 UI프로세스를 종료하도록 구성된다.
실행유닛(203)은 상기 제1 전환유닛(201)이 응용 프로그램을 포어그라운드 실행으로부터 백그라운드 실행으로 전환한 후, 상기 응용 프로그램의 로직 프로세스를 계속 실행하도록 구성된다.
또한, 도7에 나타낸바와 같이, 상기 장치(200)는 제2 전환유닛(204)과 재생유닛(205)을 더 포함한다.
제2 전환유닛(204)은 상기 응용 프로그램을 백그라운드 실행으로부터 포어그라운드 실행으로 전환한다.
재생유닛(205)은 제2 전환유닛(204)이 상기 응용 프로그램을 백그라운드 실행으로부터 포어그라운드 실행으로 전환한 후, 상기 로직 프로세스에 근거하여 상기 UI프로세스를 다시 작성한다.
또한, 도8에 나타낸바와 같이, 더욱, 상기 장치(200)는 판독유닛(206), 구획유닛(207) 및 작성유닛(208)을 더 포함한다.
상기 판독유닛(206)은 상기 제1 전환유닛(201)이 응용 프로그램을 포어그라운드 실행으로부터 백그라운드 실행으로 전환하기 전에, 상기 응용 프로그램이 기동할 시, 상기 응용 프로그램의 설정파일의 로직 프로세스 마크 및 / 또는 UI프로세스 마크를 판독한다.
상기 구획유닛(207)은 상기 판독유닛(206)이 판독한 상기 로직 프로세스 마크 및 / 또는 UI프로세스 마크에 근거하여, 상기 응용 프로그램에 포함되는 각 서브프로그램에 대하여 프로세스 타입의 구획을 실시한다. 여기서, 상기 프로세스 타입은 UI타입과 로직 타입을 포함한다.
상기 작성유닛(208)은 상기 구획유닛(207)에 의해 구획된 상기 프로세스 타입에 근거하여, 상기 UI프로세스 및 상기 로직 프로세스를 작성한다. 여기서, 상기 UI프로세스에서 상기 UI타입의 서브프로그램이 실행되고 상기 로직 프로세스에서, 상기 로직 타입의 서브프로그램이 실행된다.
바람직하게, 도9에 나타낸바와 같이, 하나의 가능한 실시방식에 있어서, 상기 장치(200)는
상기 제1 전환유닛(201)이 응용 프로그램을 포어그라운드 실행으로부터 백그라운드 실행으로 전환한 후, 상기 응용 프로그램이 백그라운드에서 실행하는 시간길이를 확정하기 위한 제1확정유닛(209)을 더 포함하며,
상기 종료유닛(202)은 상기 제1 전환유닛(201)이 확정한 시간길이가 예정된 시간길이에 이르렀을 경우, 상기 응용 프로그램의 UI프로세스를 종료한다.
도10에 나타낸바와 같이, 또 하나의 가능한 실현방식에 있어서, 상기 장치(200)는
상기 제1 전환유닛(201)이 응용 프로그램을 포어그라운드 실행으로부터 백그라운드 실행으로 전환한 후, 백그라운드에서 실행하는 기타 UI프로세스의 수량을 확정하기 위한 제2 확정유닛(210)을 포함하며,
상기 종료유닛(201)은 상기 제2 확정유닛(210)이 확정한 상기 기타 UI프로세스의 수량이 예정된 수량에 도달하였을 경우, 상기 응용 프로그램의 UI프로세스를 종료한다.
상술한 실시예의 장치에 있어서, 각 모듈이 실행하는 조작의 구체적인 방법은 이미 관련되는 실시예에서 상세히 설명하였으므로, 여기서 반복하여 설명하지 않는다.
본 발명의 실시예가 제공하는 응용 프로그램의 처리장치(200)는응용 프로그램의 UI프로세스와 로직 프로세스를 분리하여 독립적으로 실행하는 것을 통해, 응용 프로그램이 백그라운드로 전환되여 실행하는 경우, 사용자가 필요하는 로직 프로세스를 계속 실행하고, 사용자가 관심 없는 UI프로세스를 종료할 수 있다. 따라서, 관련기술 중의, 응용 프로그램의 실행을 모두 하나의 프로세스에 집중하여 실행하고, 백그라운드에서도 응용 프로그램의 모든 프로세스를 계속 실행하는 방법에 비하여, 응용 프로그램이 백그라운드로 전환하여 실행되는 경우, UI산출에 의해 점유하는 CPU 처리자원과 메모리 공간을 절약할 수 있어, 복수의 응용 프로그램이 동시에 실행되는 경우 전자단말장치의 소비 전력을 절감하며, 절전의 목적을 실현할 수 있다. 또한, 전자단말장치의 CPU 처리자원의 낭비를 피면하였으므로, 자원의 이용효율을 높이였을 뿐만 아니라, 전자단말장치의 발열을 효과적으로 감소할 수 있다.
도11은 하나의 예시적인 실시예에 따른 응용 프로그램에 사용되는 처리장치(800)의 블록도이다. 예를 들어, 장치 (800)는 휴대 전화, 컴퓨터, 디지털 방송 단말기, 메시지 송수신 장치, 게임 컨트롤러, 플랫 장치, 의료장치, 헬스장치 PDA (Personal Digital Assistant) 등이 될수 있다.
도8 에 도시된 바와 같이, 장치(800)는 프로세스 어셈블리(802), 메모리(804), 전원 어셈블리(806), 멀티미디어 어셈블리(808), 오디오 어셈블리(810), 입력/출력(I/O) 인터페이스(812), 센서 어셈블리(814) 및 통신 어셈블리(816) 등 하나 또는 복수의 어셈블리를 포함할 수 있다..
프로세스 어셈블리(802)는 통상적으로 장치(800)의 전체 조작을 제어하며, 예를 들면, 표시,전화 통화,데이터 통신,카메라 조작 및 기록 조작에 관련된 조작을 제어할 수 있다. 프로세스 소자(802)는 하나 또는 복수의 프로세서(820)를 구비하여 인스트럭션을 실행함으로써 상기 방법의 전부 혹은 일부 단계를 완성한다. 또한, 프로세스 어셈블리(802)는 하나 또는 복수의 모듈을 포함하고 있어 프로세스 어셈블리(802)와 기타 어셈블리 사이의 인트렉션에 편리하다. 예를 들면, 프로세스 어셈블리(802)는 멀티미디어 모듈을 포함고 있어 멀티미디어 어셈블리(808)와 프로세스 어셈블리(802) 사이의 인트렉션이 편리하게 된다.
메모리(804)에는 각종 유형의 데이터를 저장되어 장치(800)의 동작을 서포트한다. 이러한 데이터의 예로서 장치(800)에서 동작하는 임의의 애플리케이션 프로그램 혹은 방법을 실행하기 위한 인스트럭션,연락인 데이터,전화번호부 데이터,메시지,이미지, 비디오 등을 포함한다. 메모리(804)는 임의의 유형의 휘발성 혹은 비휘발성 메모리 혹은 양자의 조합으로 실현될 수 있으며, 예를 들면 SRAM(Static Random Access Memory), EEPROM (Electrically Erasable Programmable Read-Only Memory) ,EPROM(Erasable Programmable Read Only Memory), PROM(Programmable Read-Only Memory), ROM(Read-Only Memory),자기 메모리,플래시 메모리,자기 디스크 혹은 콤팩트 디스크 등으로 실현될 수 있다.
전력 어셈블리(806)는 장치(800)의 각 어셈블리에 전력을 공급하기 위한 것이다. 전력 어셈블리(806)는 전원 관리 시스템,하나 또는 복수의 전원 및 장치(800)를 위하여 전력을 생성, 관리 및 분배하기 위한 기타 어셈블리를 포함할 수 있다.
멀티미디어 어셈블리(808)는 상기 장치(800)와 사용자 사이에 하나의 출력 인터페이스를 제공하는 스크린을 포함한다. 일부 실시예에 있어서, 스크린은 액정 표시 장치(LCD)와 터치 패널(TP)을 포함할 수 있다. 스크린이 터치 패널을 포함할 경우, 스크린은 사용자가 입력한 신호를 수신할 수 있는 터치 스크린을 구현할 수 있다. 터치 패널은 하나 또는 복수의 터치 센서를 포함하고 있어 터치, 슬라이딩 및 터치 패널위에서의 손 움직임을 감지할 수 있다. 상기 터치 센서는 터치 혹은 슬라이딩 동작의 경계위치를 감지할 수 있을 뿐만 아니라, 상기 터치 혹은 슬라이딩 조작에 관련된 지속시간 및 압력을 검출할 수 있다. 일부 실시예에 있어서,멀티미디어 어셈블리(808)는 하나의 프론트 카메라 및/또는 리어 카메라를 포함한다. 장치(800)가 예를 들면 촬영 모드 혹은 비디오 모드 등 조작 모드 상태에 있을 경우, 프론트 카메라 및/또는 리어 카메라는 외부로 부터의 멀티미디어 데이터를 수신할 수 있다. 프론트 카메라와 리어 카메라는 하나의 고정된 광학 렌즈 시스템일 수 있거나 또는 가변 초점거리와 광학 줌기능을 구비할 수 있다.
오디오 어셈블리(810)는 오디오 신호를 출력 및/또는 입력하기 위한 것이다. 예를 들면, 오디오 어셈블리(810)는 마이크로폰(MIC)을 포함하며, 장치(800)가 예를 들면 호출 모드, 기록 모드 및 음성 인식 모드 등 조작 모드에 있을 경우, 마이크로폰은 외부의 오디오 신호를 수신한다. 수신된 오디오 신호는 진일보 메모리(804)에 저장되거나 혹은 통신 어셈블리(816)를 통하여 송신될수 있다. 일부 실시예에 있어서,오디오 어셈블리(810)는 스피커를 더 포함할 수 있어 오디오 신호를 출력한다.
I/O 인터페이스(812)는 프로세스 어셈블리(802)와 주변 인터페이스 모듈 사이에 인터페이스를 제공하기 위한 것이다. 상기 주변 인터페이스 모듈은 키보드,휠 키,버튼 등일 수 있다. 이러한 버튼은 홈 버튼, 음량 버튼, 작동 버튼 및 잠금 버튼 등을 포함하지만 이에 한정되지 않는다.
센서 어셈블리(814)는 장치(800)에 각 방면의 상태평가를 제공하는 하나 또는 복수의 센서를 포함한다. 예를 들면,센서 어셈블리(814)는 장치(800)의 온/오프 상태,디스플레이 및 키패드와 같은 장치(800)의 어셈블리의 상대위치결정을 검출할 수 있다. 예를 들면,센서 어셈블리(814)는 장치(800) 혹은 장치(800)의 일 어셈블리의 위치변경,사용자와 장치(800)사이의 접촉여부, 장치(800)의 방위 혹은 가속/감속 및 장치(800)의 온도 변화를 검출할 수 있다. 센서 어셈블리(814)는 근접 센서를 포함할 수 있어, 임의의 물리적 접촉이 없는 정황하에서 근처 물체의 존재를 검출할 수 있다. 센서 어셈블리(814)는 예를 들면 CMOS 혹은 CCD 이미지 센서 등 광센서를 더 포함할 수 있으며, 이미징 애플리케이션에 사용된다. 일부 실시예에 있어서, 상기 센서 어셈블리(814)는 가속 센서,자이로 센서,자기 센서,압력 센서 혹은 온도 센서를 포함할 수 있다.
통신 어셈블리(816)는 장치(800)와 기타 설비 사이의 유선 혹은 무선 통신에 사용된다. 장치(800)는 예를 들면 WiFi,2G 혹은 3G,혹은 이들의 조합 등의 통신규격에 따른 무선 네트워크에 접속할 수 있다. 일 예시적 실시예에 있어서,통신 어셈블리(816)는 방송 채널을 통하여 외부 방송 관리 시스템으로부터의 방송 신호 혹은 방송 관련 정보를 수신할 수 있다. 일 예시적 실시예에 있어서, 상기 통신 어셈블리(816)는 근거리 무선 통신(NFC)모듈을 더 포함하고 있어, 단거리 통신을 촉진할 수 있다. 예를 들면, NFC 모듈은 RFID 기술, IrDA 기술, UWB 기술,블루투스(BT)기술 및 기타 기술에 기초하여 실현될 수 있다.
예시적 실시예에 있어서, 장치(800)는 하나 또는 복수의 애플리케이션 전용 집적 회로(ASIC), 디지털 신호 프로세서(DSP), 디지털 신호 처리설비(DSPD), 프로그램 가능 논리 소자(PLD), 필드 프로그래머블 게이트 어레이(FPGA), 컨트롤러, 마이크로 컨트롤러, 마이크로 프로세서 혹은 기타 전자소자에 의하여 실현되어 상기 방법을 수행할 수 있다.
예시적 실시예에 있어서, 인스트럭션을 포함하는 비일시적인 컴퓨터 판독 가능한 기록 매체를 제공하는데, 예를 들면 인스트럭션을 포함하는 메모리(804) 등을 포함하며, 상기 인스트럭션은 장치(800)의 프로세서(820)에 의하여 실행되어 상기 방법을 실현할 수 있다. 예를 들면, 상기 비일시적인 컴퓨터 판독 가능한 기록 매체는 ROM, RAM, CD-ROM, 자기테이프, 플로피디스크 및 광데이터 저장 장치 등일 수 있다.
도12는 하나의 예시적인 실시예에 따른 응용 프로그램의 처리장치(1900)의 블록도이다. 예를 들면, 장치(1900)는 서버일 수 있다. 도19에 나타낸바와 같이, 장치(1900)는 하나 또는 복수의 프로세서를 포함하는 처리유닛(1922) 및 메모리 (1932)를 대표로 하는 기억장치를 구비한다. 상기 기억장치는 예를 들면, 응용 프로그램과 같은 처리유닛(1922)에 의하여 실행되는 인스트럭션을 저장한다. 메모리 (1932)에 저장되는 응용 프로그램은 하나 또는 복수의 모듈을 포함할 수 있다. 각 모듈은 일련의 인스트럭션에 대응된다. 또한, 처리유닛(1922)은 인스트럭션을 실행하도록 구성되어 상기의 응용 프로그램의 처리방법을 실행한다.
장치(1900)는 장치(1900)의 전원을 관리하도록 구성된 전원유닛(1926)과, 장치(1900)를 네트워크에 접속하도록 구성된 하나의 유선 또는 무선 네트워크 인터페이스(1950) 및 하나의 입력/출력(I/O) 인터페이스(1958)를 구비한다. 장치(1900)는 메모리(1932)에 저장된, 예를 들면 Windous ServerTM, Mac 0S XTM, UnixTM, LinuxTM, FreeBSDTM 또는 유사한 operating system에 기초하여 조작할 수 있다.
당업자는 명세서를 참조하고 또한 여기서 공개한 발명을 실행한 후, 본 발명의 다른 실시방안을 용이하게 생각해낼 수 있다. 본원은 본 발명의 임의의 변형, 용도 또는 적응적 변화를 포함하고, 이러한 변형, 용도 또는 적응적 변화는 본 발명의 일반적인 원리에 따르며, 본 명세서에서 공개하지 않은 본 기술분야의 공지상식 또는 관용기술수단을 포함한다. 명세서와 실시예는 단지 예시적인 것으로서, 본 발명의 보호범위와 취지는 특허청구범위에 의해 한정된다.
본 발명은 상기 기재되어 도면에 나타낸 구체적인 구조에 한정되지 않으며, 그 범위내에서 다양한 수정과 변형을 실시할 수 있다는것을 이해해야 한다. 본 발명의 범위는 특허청구범위에 의해 제한된다.

Claims (10)

  1. 사용자 인터페이스의 UI프로세스와 로직 프로세스를 포함하는 응용 프로그램을 포어그라운드 실행으로부터 백그라운드 실행으로 전환하는 단계와,
    상기 응용 프로그램의 UI프로세스를 종료하고, 상기 응용 프로그램의 로직 프로세스를 계속 실행하는 단계를 포함하는 것을 특징으로 하는 응용 프로그램의 처리방법.
  2. 제1 항에 있어서,
    상기 응용 프로그램을 백그라운드로부터 포어그라운드로 전환하여 실행하는 경우, 상기 로직 프로세스에 근거하여 상기 UI프로세스를 다시 작성하는 단계를 더 포함하는 것을 특징으로 하는 응용 프로그램의 처리방법.
  3. 제1 항에 있어서,
    상기 응용 프로그램을 포어그라운드 실행으로부터 백그라운드 실행으로 전환하기 전에,
    상기 응용 프로그램을 기동할 시, 상기 응용 프로그램의 설정파일의 로직 프로세스 마크 및 / 또는 UI프로세스 마크를 판독하는 단계와,
    상기 로직 프로세스 마크 및 / 또는 UI프로세스 마크에 근거하여, 상기 응용 프로그램에 포함되는 각 서브프로그램에 대하여 프로세스 타입의 구획을 실시하는 단계와,
    구획된 상기 프로세스 타입에 근거하여, 상기 UI프로세스 및 상기 로직 프로세스를 실행하는 단계를 더 포함하며,
    상기 프로세스 타입은 UI타입과 로직 타입을 포함하고,
    상기 UI프로세스에서 상기 UI타입의 서브프로그램을 실행하고, 상기 로직 프로세스에서 상기 로직 타입의 서브프로그램을 실행하는 것을 특징으로 하는 응용 프로그램의 처리방법.
  4. 제1 항 내지 제 3항 중 어느 한 항에 있어서,
    상기 응용 프로그램을 포어그라운드 실행으로부터 백그라운드 실행으로 전환한 후,
    상기 응용 프로그램이 백그라운드에서 실행하는 시간길이를 확정하는 단계와,
    상기 응용 프로그램이 백그라운드에서 실행하는 시간길이가 예정된 시간길이에 이르렀을 경우, 상기 응용 프로그램의 UI프로세스를 종료하는 단계를 실행하는 단계를 더 포함하는 것을 특징으로 하는 응용 프로그램의 처리방법.
  5. 제1 항 내지 제 3항 중 어느 한 항에 있어서,
    상기 응용 프로그램을 포어그라운드 실행으로부터 백그라운드 실행으로 전환한 후,
    백그라운드에서 실행하는 기타 UI프로세스의 수량을 확정하는 단계와,
    상기 기타 UI프로세스의 수량이 예정된 수량에 도달하였을 경우, 상기 응용 프로그램의 UI프로세스를 종료하는 단계를 실행하는 단계를 더 포함하는 것을 특징으로 하는 응용 프로그램의 처리방법.
  6. 사용자 인터페이스(UI) 프로세스와 로직 프로세스를 포함하는 프로그램을 포어그라운드 실행으로부터 백그라운드 실행으로 전환하기 위한 제1 전환유닛과,
    상기 제1 전환유닛이 응용 프로그램을 포어그라운드 실행으로부터 백그라운드 실행으로 전환한 후, 상기 응용 프로그램의 UI프로세스를 종료하기 위한 종료유닛과,
    상기 제1 전환유닛이 응용 프로그램을 포어그라운드 실행으로부터 백그라운드 실행으로 전환한 후, 상기 응용 프로그램의 로직 프로세스를 계속 실행하기 위한 실행유닛을 포함하는 것을 특징으로 하는 응용 프로그램의 처리장치.
  7. 제6 항에 있어서,
    상기 응용 프로그램을 백그라운드 실행으로부터 포어그라운드 실행으로 전환하기 위한 제2 전환유닛과,
    제2 전환유닛이 상기 응용 프로그램을 백그라운드 실행으로부터 포어그라운드 실행으로 전환한 후, 상기 로직 프로세스에 근거하여 상기 UI프로세스를 다시 작성하기 위한 재생유닛을 더 포함하는 것을 특징으로 하는 응용 프로그램의 처리장치.
  8. 제6 항에 있어서,
    상기 제1 전환유닛이 응용 프로그램을 포어그라운드 실행으로부터 백그라운드 실행으로 전환하기 전에, 상기 응용 프로그램이 기동할 시, 상기 응용 프로그램의 설정파일의 로직 프로세스 마크 및 / 또는 UI프로세스 마크를 판독하기 위한 판독유닛과,
    상기 판독유닛이 판독한 상기 로직 프로세스 마크 및 / 또는 UI프로세스 마크에 근거하여, 상기 응용 프로그램에 포함되는 각 서브프로그램에 대하여 프로세스 타입의 구획을 실행하기 위한 구획유닛과,
    상기 구획유닛에 의해 구획된 상기 프로세스 타입에 근거하여, 상기 UI프로세스 및 상기 로직 프로세스를 작성하기 위한 작성유닛을 더 포함하며,
    상기 프로세스 타입은 UI타입과 로직 타입을 포함하고,
    상기 UI프로세스에서, 상기 UI타입의 서브프로그램이 실행되고, 상기 로직 프로세스에서, 상기 로직 타입의 서브프로그램이 실행되는 것을 특징으로 하는 응용 프로그램의 처리장치.
  9. 제6 항 내지 제8 항 중 어느 한 항에 있어서,
    상기 제1 전환유닛이 응용 프로그램을 포어그라운드 실행으로부터 백그라운드 실행으로 전환한 후, 상기 응용 프로그램이 백그라운드에서 실행하는 시간길이를 확정하기 위한 제1확정유닛을 더 포함하며,
    상기 종료유닛은 상기 제1 전환유닛이 확정한 시간길이가 예정된 시간길이에 이르렀을 경우, 상기 응용 프로그램의 UI프로세스를 종료하는 것을 특징으로 하는 응용 프로그램의 처리장치.
  10. 제6 항 내지 제8 항 중 어느 한 항에 있어서,
    상기 제1 전환유닛이 응용 프로그램을 포어그라운드 실행으로부터 백그라운드 실행으로 전환한 후, 백그라운드에서 실행하는 기타 UI프로세스의 수량을 확정하기 위한 제2 확정유닛을 더 포함하며,
    상기 종료유닛은 상기 제2 확정유닛이 확정한 상기 기타 UI프로세스의 수량이 예정된 수량에 도달하였을 경우, 상기 응용 프로그램의 UI프로세스를 종료하는 것을 특징으로 하는 응용 프로그램의 처리장치.
KR1020147035959A 2014-05-14 2014-10-22 응용 프로그램의 처리방법, 장치, 프로그램 및 기록매체 KR101668786B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
CN201410203339.1 2014-05-14
CN201410203339.1A CN104050035B (zh) 2014-05-14 2014-05-14 应用程序的处理方法及装置
PCT/CN2014/089218 WO2015172518A1 (zh) 2014-05-14 2014-10-22 应用程序的处理方法及装置

Publications (2)

Publication Number Publication Date
KR20150141124A true KR20150141124A (ko) 2015-12-17
KR101668786B1 KR101668786B1 (ko) 2016-10-24

Family

ID=51502929

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020147035959A KR101668786B1 (ko) 2014-05-14 2014-10-22 응용 프로그램의 처리방법, 장치, 프로그램 및 기록매체

Country Status (9)

Country Link
US (1) US20150333971A1 (ko)
EP (1) EP2945058B1 (ko)
JP (1) JP6072362B2 (ko)
KR (1) KR101668786B1 (ko)
CN (1) CN104050035B (ko)
BR (1) BR112015000216B1 (ko)
MX (1) MX359997B (ko)
RU (1) RU2606051C2 (ko)
WO (1) WO2015172518A1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20200111295A (ko) * 2015-12-31 2020-09-28 후아웨이 테크놀러지 컴퍼니 리미티드 메모리 리클레임 방법 및 장치

Families Citing this family (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104050035B (zh) * 2014-05-14 2018-05-25 小米科技有限责任公司 应用程序的处理方法及装置
CN104375880B (zh) * 2014-09-18 2016-04-06 腾讯科技(深圳)有限公司 内存释放方法及装置
CN104461663B (zh) * 2014-12-30 2018-04-20 北京奇虎科技有限公司 一种加载其它移动端应用的方法、装置和移动终端
CN104507158B (zh) * 2014-12-30 2018-10-23 北京奇虎科技有限公司 一种建立无线局域网连接的方法、装置和移动终端
CN105653323B (zh) * 2015-12-28 2019-07-02 小米科技有限责任公司 应用程序管理方法及装置
CN105676991A (zh) * 2015-12-28 2016-06-15 小米科技有限责任公司 一种管理应用程序的方法和装置
CN105893130B (zh) * 2016-03-31 2019-06-07 维沃移动通信有限公司 一种移动终端应用程序的处理方法和移动终端
US10552320B2 (en) * 2016-04-01 2020-02-04 Intel Corporation Using a projected out of memory score to selectively terminate a process without transitioning to a background mode
CN105912204B (zh) * 2016-04-07 2022-04-15 北京小米移动软件有限公司 启动应用界面的方法及装置
CN106020813A (zh) * 2016-05-16 2016-10-12 上海传英信息技术有限公司 应用程序启动装置和方法
CN105975347A (zh) * 2016-05-26 2016-09-28 宇龙计算机通信科技(深圳)有限公司 一种冻结应用的方法及系统
US11165715B2 (en) * 2016-06-14 2021-11-02 Maxell, Ltd. Communication control method
CN107807847B (zh) * 2016-09-09 2022-04-29 华为技术有限公司 应用进程的管理方法和终端设备
CN106847272A (zh) * 2016-12-12 2017-06-13 北京光年无限科技有限公司 与运行应用关联的智能机器人的数据交互方法
CN107315658A (zh) * 2017-06-26 2017-11-03 珠海市魅族科技有限公司 一种数据备份方法及装置、计算机装置及可读存储介质
CN107423125A (zh) * 2017-07-27 2017-12-01 上海传英信息技术有限公司 一种用于智能终端的摄像控制方法及摄像控制系统
CN107729098B (zh) * 2017-09-25 2021-06-29 北京小米移动软件有限公司 用户界面显示方法及装置
CN107918517B (zh) * 2017-11-13 2020-02-18 Oppo广东移动通信有限公司 屏幕旋转的响应方法、装置、移动终端及存储介质
CN109992363B (zh) * 2017-12-29 2021-03-26 Oppo广东移动通信有限公司 应用程序处理方法和装置、电子设备、计算机可读存储介质
CN108877143B (zh) * 2018-04-20 2021-06-22 深圳市沃特沃德股份有限公司 儿童游乐园项目安全提醒方法及其装置
CN110716759B (zh) 2018-06-26 2023-06-30 深圳富泰宏精密工业有限公司 电子设备、计算机可读存储介质及运行参数配置方法
JP7151219B2 (ja) * 2018-07-05 2022-10-12 株式会社リコー 組み込み機器、ウィルススキャンプログラム実行方法、プログラム
CN111949385A (zh) * 2019-05-16 2020-11-17 珠海格力电器股份有限公司 一种用于终端进程的监听控制方法
CN111949471A (zh) * 2019-05-16 2020-11-17 珠海格力电器股份有限公司 一种用于终端进程的监听控制方法
CN110489215A (zh) * 2019-06-29 2019-11-22 华为技术有限公司 一种应用程序中等待场景的处理方法和装置
CN110806926A (zh) * 2019-09-05 2020-02-18 华为技术有限公司 一种资源管控方法及设备
CN112685143A (zh) * 2019-10-17 2021-04-20 迈普通信技术股份有限公司 一种设备操作的实现方法及装置
CN112835656A (zh) * 2019-11-01 2021-05-25 科美诊断技术股份有限公司 一种客户端的启动方法及装置

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040230911A1 (en) * 2003-05-17 2004-11-18 Microsoft Corporation System and method for controlling user interface properties with data
CN103164269A (zh) * 2011-12-08 2013-06-19 中兴通讯股份有限公司 一种多窗口显示应用程序的方法及终端
US20130343373A1 (en) * 2012-06-25 2013-12-26 Microsoft Corporation Voice-over-internet protocol (voip) application platform

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA2128387C (en) * 1993-08-23 1999-12-28 Daniel F. Hurley Method and apparatus for configuring computer programs from available subprograms
US20080233937A1 (en) * 2006-05-08 2008-09-25 Marja-Leena Nurmela Mobile communication terminal and method
US8510743B2 (en) * 2007-10-31 2013-08-13 Google Inc. Terminating computer applications
CN101788926B (zh) * 2009-12-28 2014-04-30 中兴通讯股份有限公司 J2me应用前台切换的资源调配方法及装置
US9104476B2 (en) * 2010-04-07 2015-08-11 Apple Inc. Opportunistic multitasking of VOIP applications
US8380999B1 (en) * 2010-12-20 2013-02-19 Amazon Technologies, Inc. Power management for electronic devices
US9191417B2 (en) * 2012-06-28 2015-11-17 Microsoft Technology Licensing, Llc Cross-process media handling in a voice-over-internet protocol (VOIP) application platform
CN104252389B (zh) * 2013-06-27 2016-04-13 腾讯科技(深圳)有限公司 应用程序运行方法、系统
CN104050035B (zh) * 2014-05-14 2018-05-25 小米科技有限责任公司 应用程序的处理方法及装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040230911A1 (en) * 2003-05-17 2004-11-18 Microsoft Corporation System and method for controlling user interface properties with data
CN103164269A (zh) * 2011-12-08 2013-06-19 中兴通讯股份有限公司 一种多窗口显示应用程序的方法及终端
US20130343373A1 (en) * 2012-06-25 2013-12-26 Microsoft Corporation Voice-over-internet protocol (voip) application platform

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20200111295A (ko) * 2015-12-31 2020-09-28 후아웨이 테크놀러지 컴퍼니 리미티드 메모리 리클레임 방법 및 장치
US11023372B2 (en) 2015-12-31 2021-06-01 Huawei Technologies Co., Ltd. Application memory reclaim method and apparatus

Also Published As

Publication number Publication date
CN104050035B (zh) 2018-05-25
BR112015000216B1 (pt) 2022-01-11
US20150333971A1 (en) 2015-11-19
JP6072362B2 (ja) 2017-02-01
RU2606051C2 (ru) 2017-01-10
EP2945058A1 (en) 2015-11-18
KR101668786B1 (ko) 2016-10-24
EP2945058B1 (en) 2017-09-20
MX359997B (es) 2018-10-17
BR112015000216A2 (pt) 2017-06-27
RU2014152488A (ru) 2016-09-10
WO2015172518A1 (zh) 2015-11-19
CN104050035A (zh) 2014-09-17
JP2016526244A (ja) 2016-09-01
MX2015000194A (es) 2016-03-03

Similar Documents

Publication Publication Date Title
KR101668786B1 (ko) 응용 프로그램의 처리방법, 장치, 프로그램 및 기록매체
US11127398B2 (en) Method for voice controlling, terminal device, cloud server and system
JP6096992B2 (ja) 記憶空間を節約するための方法、装置、プログラム及び記憶媒体
RU2647625C2 (ru) Способ и устройство для запуска прикладной программы
JP6189000B2 (ja) アプリケーションのインストールパッケージの処理方法、装置、プログラム及び記録媒体
US20170185788A1 (en) Method and apparatus for managing application
EP3171270A1 (en) Method and device for information push
RU2643516C2 (ru) Способ и устройство для управления потребляемой мощностью
RU2663821C2 (ru) Способ и устройство для напоминания в отключенном состоянии
WO2018010596A1 (zh) 一种模式切换方法及装置
EP3320673A1 (en) Wake up to a cast alarm or an alarm plus content prompt
CN104881304B (zh) 资源下载方法及装置
CN112905089B (zh) 设备控制方法及装置
CN108289237B (zh) 播放动态图片的方法、装置、终端及计算机可读存储介质
EP3657326B1 (en) Broadcast event processing method and device
WO2016026108A1 (zh) 一种应用程序的切换方法、装置及电子终端
CN111966410A (zh) 启动处理方法、装置、电子设备及存储介质
EP3553650B1 (en) Multimedia data playback method and terminal device
RU2733065C1 (ru) Способ и устройство для передачи системных сообщений, а также способ и устройство для приема системных сообщений
EP3835945A1 (en) Method and device for processing an application
CN114385335A (zh) 中断资源的使用方法、装置、设备及存储介质
CN104866349A (zh) 应用更新方法及装置
CN112230982A (zh) 素材处理方法、装置、电子设备及存储介质
CN112083981A (zh) 一种页面视图组件的创建方法和装置
CN117009023B (zh) 显示通知信息的方法及相关装置

Legal Events

Date Code Title Description
A201 Request for examination
AMND Amendment
E902 Notification of reason for refusal
AMND Amendment
E601 Decision to refuse application
AMND Amendment
X701 Decision to grant (after re-examination)
GRNT Written decision to grant