KR20150088059A - 어플리케이션 관리 방법 및 그 방법을 처리하는 전자 장치 - Google Patents

어플리케이션 관리 방법 및 그 방법을 처리하는 전자 장치 Download PDF

Info

Publication number
KR20150088059A
KR20150088059A KR1020140008422A KR20140008422A KR20150088059A KR 20150088059 A KR20150088059 A KR 20150088059A KR 1020140008422 A KR1020140008422 A KR 1020140008422A KR 20140008422 A KR20140008422 A KR 20140008422A KR 20150088059 A KR20150088059 A KR 20150088059A
Authority
KR
South Korea
Prior art keywords
update
electronic device
application
information
data
Prior art date
Application number
KR1020140008422A
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 삼성전자주식회사
Priority to KR1020140008422A priority Critical patent/KR20150088059A/ko
Priority to US14/603,719 priority patent/US20150205598A1/en
Publication of KR20150088059A publication Critical patent/KR20150088059A/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • 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
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management
    • G06F8/71Version control; Configuration management
    • 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

Abstract

본 발명의 다양한 실시예 중에 하나는 전자 장치의 어플리케이션을 관리하기 위한 장치 및 방법에 관한 것으로, 제 2 전자 장치의 동작 방법은 제 1 전자 장치로부터 업데이트 대상을 나타내는 타겟 정보가 포함되어 있는 업데이트 통지를 수신하는 동작, 수신된 업데이트 통지의 타겟 정보를 기반으로, 기 설치된 어플리케이션 가운데 업데이트 동작이 필요한 어플리케이션을 확인하는 동작 및 상기 확인된 어플리케이션이 업데이트 될 수 있도록 제 1 전자 장치로부터 업데이트 데이터를 수신하는 동작을 포함할 수 있다. 다른 실시예도 가능하다.

Description

어플리케이션 관리 방법 및 그 방법을 처리하는 전자 장치{METHOD FOR MANAGING APPLICATION AND AN ELECTRONIC DEVICE THEREOF}
본 발명은 전자 장치의 어플리케이션을 관리하기 위한 장치 및 방법에 관한 것이다.
최근 들어 하나 또는 그 이상의 기능을 복합적으로 수행하는 컨버젼스 기능을 갖는 전자 장치들이 점점 늘어나고 있다. 더욱이 전자 장치들로는 소위 '스마트 폰'이라 대별되는 이동 단말기가 주류를 이루고 있다. 특히 이러한 이동 단말기는 대화면 터치 방식의 디스플레이 모듈을 구비하고 있으며, 상대방과의 통신이라는 기본적인 기능 이외에 고화소 카메라 모듈을 구비하고 있어 정지 영상 및 동영상 촬영이 가능하다. 또한, 음악, 동영상 등 멀티미디어 콘텐츠를 재생할 수 있고, 네트워크 망에 접속하여 웹 서핑을 수행할 수도 있다. 이러한 이동 단말기는 점차 고성능 프로세서를 구비함으로써 다양한 컨버젼스 기능을 좀더 빠르게 수행하도록 진보되고 있어, 상대방과의 통신이라는 주된 기능은 오히려 부가 기능으로 여겨질 정도로 눈부신 발전을 거듭하고 있다.
상기 전자 장치는 설치형 어플리케이션을 이용하여 추가적인 기능을 제공할 수 있다. 상기 설치형 어플리케이션은 사용자가 유료 결제 또는 무료 결제 방식으로 다운로드 받을 수 있는 패키지 파일로, 예를 들어, 구글 운영체제를 위한 APK 파일, 애플 운영체제를 IPA 파일, 마이크로소프트 운영체를 위한 CAB, EXE 파일 등을 포함할 수 있다.
상기 설치형 어플리케이션의 제공자는 업데이트 데이터를 이용하여 전자 장치가 해당 패키지 파일을 다운받아 재설치할 수 있도록 함으로써 기 제공된 어플리케이션을 기능을 개선하거나 버그를 수정할 수 있다.
도 1은 일반적인 전자 장치의 어플리케이션 업데이트 동작을 도시한 도면이다.
상기 도 1을 참조하면, 상기 어플리케이션 제작자(어플리케이션 서버)는 어플리케이션을 다운로드한 전자 장치들로 업데이트 통지를 전송할 수 있다. 상기 업데이트 통지는 상기 전자 장치들로 제공된 어플리케이션에 대하여 버그가 수정되거나 새로운 기능이 추가된 경우에 전송될 수 있으며, 상기 업데이트 통지를 수신한 전자 장치는 사용자의 선택에 따라 어플리케이션 업데이트 동작을 수행하거나 수행하지 않을 수 있다.
도시된 도면은 새로운 버전(버전 2.0)의 어플리케이션이 존재하는 서버에(120)서 하위 버전의 어플리케이션을 이용하는 전자 장치들(100), (110)로 새로운 버전의 어플리케이션으로 업데이트가 필요함을 알리는 업데이트 통지를 전송(122)하는 상황을 도시하고 있다.
더하여, 상기 업데이트 통지에 대응하여 업데이트를 수락하는 전자 장치(110)는 서버(120)로 데이터를 요청하여 요청에 대한 데이터를 수신한 후, 기 저장된 어플리케이션에 대한 업데이트 동작을 수행할 수 있다. 도시된 도면에서는 1.5 버전의 어플리케이션을 이용하는 전자 장치(110)와 1.0 버전의 어플리케이션을 사용하는 전자 장치(100)가 어플리케이션 업데이트 동작으로 2.0 버전으로 어플리케이션을 업데이트 동작을 수행하는 상황을 도시하고 있다.
종래 기술에 따르면, 상기 설치형 어플리케이션 제공자는 설치형 어플리케이션을 다운로드한 사용자의 전자 장치로 업데이트가 필요함을 통지하여 기 설치된 어플리케이션이 업데이트되도록 할 수 있다.
일반적으로, 어플리케이션 업데이트는 최근에 제작한 특정 데이터(특정 버전의 어플리케이션)로 업데이트 동작을 수행하는 것으로, 사용자는 기 설치된 어플리케이션에 대한 업데이트를 수락하거나 수락하지 않을 수 있다. 특정 버전의 어플리케이션에서 오류(예를 들어, 보안 오류 등)가 발생하여 상기 어플리케이션 제작자가 오류가 발생된 버전뿐만 아니라 오류가 발생되지 않은 버전의 어플리케이션에 대하여도 업데이트 동작을 요구하는 경우에 오류가 발생되지 않은 버전을 가지고 있는 사용자도 불필요한 통신 요금을 지불하거나 업데이트를 수행하는 동안에 어플리케이션을 사용하지 못하는 경우가 발생될 수 있다.
상기와 같은 문제점을 해결하기 위하여, 본 발명의 다양한 실시예 중에 하나는 업데이트 대상에 해당하는 어플리케이션이 설치된 전자 장치만 업데이트 동작을 수행하도록 하기 위한 장치 및 방법을 제공할 수 있다.
전술한 과제를 해결하기 위한 한 실시예에 따르면, 제 1 전자 장치의 동작 방법은 제 2 전자 장치들로 제공된 어플리케이션에 대하여 업데이트가 감지되면, 업데이트될 어플리케이션에 대한 타겟 정보를 포함하는 업데이트 통지를 생성하는 동작, 상기 생성된 업데이트 통지를 제 2 전자 장치로 전송하는 동작 및 상기 업데이트 통지에 대하여 응답한 제 2 전자 장치로 어플리케이션에 대한 업데이트 데이터를 전송하는 동작을 포함할 수 있다.
본 발명의 다양한 실시예에 따르면, 업데이트 대상에 해당하는 어플리케이션이 설치된 전자 장치만 업데이트 동작을 수행할 수 있다.
도 1은 일반적인 전자 장치의 어플리케이션 업데이트 동작을 도시한 도면이다.
도 2는 본 발명의 다양한 실시예에 따른 전자 장치의 어플리케이션 업데이트 동작을 도시한 도면이다.
도 3은 다양한 실시예에 따른, 전자 장치를 포함하는 네트워크 환경을 도시한다.
도 4는 본 발명의 다양한 실시예에 따른 업데이트 모듈의 구성을 도시한다.
도 5는 본 발명의 다양한 실시예에 따른 제 1 전자 장치의 동작을 도시한 흐름도이다.
도 6은 본 발명의 다양한 실시예에 따른 제 2 전자 장치의 동작을 도시한 흐름도이다.
도 7은 본 발명의 다양한 실시예에 따른 제 2 전자 장치의 동작을 도시한 흐름도이다.
도 8은 본 발명의 다양한 실시예에 따른 제 1 전자 장치의 동작을 도시한 흐름도이다.
도 9는 본 발명의 다양한 실시예에 따른 업데이트 통지의 구성을 도시한다.
도 10은 본 발명의 다양한 실시예에 따른 어플리케이션 업데이트 동작을 도시한 도면이다.
도 11은 본 발명의 다양한 실시예에 따른 어플리케이션 업데이트 동작을 도시한 도면이다.
이하, 첨부된 도면을 참조하여 본 개시(present disclosure)를 설명한다. 본 개시는 다양한 변경을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들이 도면에 예시되고 관련된 상세한 설명이 기재되어 있다. 그러나, 이는 본 개시를 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 개시의 사상 및 기술 범위에 포함되는 모든 변경 및/또는 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 도면의 설명과 관련하여, 유사한 구성요소에 대해서는 유사한 참조 부호가 사용되었다.
본 개시 가운데 사용될 수 있는“포함한다” 또는 “포함할 수 있다” 등의 표현은 개시된 해당 기능, 동작 또는 구성요소 등의 존재를 가리키며, 추가적인 하나 이상의 기능, 동작 또는 구성요소 등을 제한하지 않는다. 또한, 본 개시에서, "포함하다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
본 개시에서 “또는” 등의 표현은 함께 나열된 단어들의 어떠한, 그리고 모든 조합을 포함한다. 예를 들어, “A 또는 B”는, A를 포함할 수도, B를 포함할 수도, 또는 A 와 B 모두를 포함할 수도 있다.
본 개시 가운데 “제 1,”“제2,”“첫째,”또는“둘째,”등의 표현들이 본 개시의 다양한 구성요소들을 수식할 수 있지만, 해당 구성요소들을 한정하지 않는다. 예를 들어, 상기 표현들은 해당 구성요소들의 순서 및/또는 중요도 등을 한정하지 않는다. 상기 표현들은 한 구성요소를 다른 구성요소와 구분 짓기 위해 사용될 수 있다. 예를 들어, 제1 사용자 기기와 제 2 사용자 기기는 모두 사용자 기기이며, 서로 다른 사용자 기기를 나타낸다. 예를 들어, 본 개시의 권리 범위를 벗어나지 않으면서 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다.
어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해될 수 있어야 할 것이다.
본 개시에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 개시를 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 개시가 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥 상 가지는 의미와 일치하는 의미를 가지는 것으로 해석되어야 하며, 본 개시에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
본 개시에 따른 전자 장치는, 통신 기능이 포함된 장치일 수 있다. 예를 들면, 상기 전자 장치는 스마트 폰(smartphone), 태블릿 PC(tablet personal computer), 이동전화기(mobile phone), 화상전화기, 전자북 리더기(e-book reader), 데스크탑 PC(desktop personal computer), 랩탑 PC(laptop personal computer), 넷북 컴퓨터(netbook computer), PDA(personal digital assistant), PMP(portable multimedia player), MP3 플레이어, 모바일 의료기기, 카메라(camera), 또는 웨어러블 장치(wearable device)(예: 전자 안경과 같은 head-mounted-device(HMD), 전자 의복, 전자 팔찌, 전자 목걸이, 전자 앱세서리(appcessory), 전자 문신, 또는 스마트 와치(smartwatch)) 중 적어도 하나를 포함할 수 있다.
어떤 실시예들에 따르면, 전자 장치는 통신 기능을 갖춘 스마트 가전 제품(smart home appliance)일 수 있다. 스마트 가전 제품은, 예를 들자면, 전자 장치는 텔레비전, DVD(digital video disk) 플레이어, 오디오, 냉장고, 에어컨, 청소기, 오븐, 전자레인지, 세탁기, 공기 청정기, 셋톱 박스(set-top box), TV 박스(예를 들면, 삼성 HomeSyncTM, 애플TVTM, 또는 구글 TVTM), 게임 콘솔(game consoles), 전자 사전, 전자 키, 캠코더(camcorder), 또는 전자 액자 중 적어도 하나를 포함할 수 있다.
어떤 실시예들에 따르면, 전자 장치는 각종 의료기기(예: MRA(magnetic resonance angiography), MRI(magnetic resonance imaging), CT(computed tomography), 촬영기, 초음파기 등), 네비게이션(navigation) 장치, GPS 수신기(global positioning system receiver), EDR(event data recorder), FDR(flight data recorder), 자동차 인포테인먼트(infotainment) 장치, 선박용 전자 장비(예: 선박용 항법 장치 및 자이로 콤파스 등), 항공 전자기기(avionics), 보안 기기, 또는 산업용 또는 가정용 로봇 중 적어도 하나를 포함할 수 있다.
어떤 실시예들에 따르면, 전자 장치는 통신 기능을 포함한 가구(furniture) 또는 건물/구조물의 일부, 전자 보드(electronic board), 전자 사인 입력장치(electronic signature receiving device), 프로젝터(projector), 또는 각종 계측기기(예: 수도, 전기, 가스, 또는 전파 계측 기기 등) 중 적어도 하나를 포함할 수 있다. 본 개시에 따른 전자 장치는 전술한 다양한 장치들 중 하나 또는 그 이상의 조합일 수 있다. 또한, 본 개시에 따른 전자 장치는 전술한 기기들에 한정되지 않음은 당업자에게 자명하다.
이하, 첨부된 도면을 참조하여 다양한 실시예에 따른 전자 장치에 대해서 살펴본다. 다양한 실시예에서 이용되는 사용자라는 용어는 전자 장치를 사용하는 사람 또는 전자 장치를 사용하는 장치(예: 인공지능 전자 장치)를 지칭할 수 있다.
도 2는 본 발명의 다양한 실시예에 따른 전자 장치의 어플리케이션 업데이트 동작을 도시한 도면이다.
상기 도 2를 참조하면, 상기 어플리케이션 제작자(어플리케이션 서버)는 어플리케이션을 다운로드한 전자 장치들로 업데이트 통지를 전송할 수 있다. 상기 업데이트 통지는 상기 전자 장치들로 제공된 어플리케이션의 버그가 수정되거나 새로운 기능이 추가된 경우에 전송될 수 있으며, 상기 업데이트 통지를 수신한 전자 장치는 사용자의 선택에 따라 어플리케이션 업데이트 동작을 수행하거나 수행하지 않을 수 있다. 본 발명의 다양한 실시예에 따르면, 상기 업데이트 통지는 업데이트 대상 정보, 예를 들어, 타겟 정보를 포함할 수 있다. 상기 타겟 정보는 업데이트 동작이 필요한 어플리케이션의 버전 정보가 될 수 있다.
도시된 도면은 새로운 버전(버전 2.0)의 어플리케이션이 존재하는 서버(220)에서 하위 버전의 어플리케이션을 이용하는 전자 장치들(200), (210)로 새로운 버전의 어플리케이션으로 업데이트가 필요함을 알리는 업데이트 통지를 전송(222)하는 상황을 도시하고 있다. 상기 서버(220)는 버전 1.5의 어플리케이션이 버전 2.0으로 업데이트 된다는 내용의 업데이트 통지를 전자 장치들로 전송할 수 있다.
상기 업데이트 통지를 수신한 전자 장치는 업데이트 통지에 포함되어 있는 타겟 정보를 이용하여 자신의 어플리케이션이 업데이트가 필요한 타겟 정보에 포함되어 있음을 확인할 수 있다. 버전 1.0의 어플리케이션이 설치된 전자 장치 A(200)는 자신이 업데이트 대상이 아니라고 판단할 수 있고, 버전 1.5의 어플리케이션이 설치된 전자 장치 N(210)은 자신이 업데이트 대상이라고 판단할 수 있다.
일 실시예에 따르면, 상기 전자 장치는 자신의 어플리케이션이 업데이트 통지의 타겟 정보에 포함되어 있는 경우에는 어플리케이션 서버(220)로 업데이트 데이터를 요청(212)할 수 있다. 다른 실시예에 따르면, 상기 전자 장치는 자신의 어플리케이션이 업데이트 통지의 타겟 정보에 포함되어 있는 경우에는 어플리케이션에 대한 업데이트가 필요함을 알리는 정보를 제공한 후, 사용자의 입력을 감지한 경우에 어플리케이션 서버(220)로 업데이트 데이터를 요청(212)할 수 있다.
상기 업데이트 통지에 대응하여 업데이트 데이터를 요청한 전자 장치(210)는 서버(220)로부터 요청에 대한 데이터를 수신(224)한 후, 기 저장된 어플리케이션에 대한 업데이트 동작을 수행할 수 있다.
도 3은 다양한 실시예에 따른, 전자 장치(301)를 포함하는 네트워크 환경(300)을 도시한다. 상기 도 3을 참조하면, 상기 전자 장치(301)는 버스(310), 프로세서(320), 메모리(330), 입출력 인터페이스(340), 디스플레이(350) 및 통신 인터페이스(360), 업데이트 모듈(370)을 포함할 수 있다.
상기 버스(310)는 전술한 구성요소들을 서로 연결하고, 전술한 구성요소들 간의 통신(예: 제어 메시지)을 전달하는 회로일 수 있다.
상기 프로세서(320)는, 예를 들면, 상기 버스(310)를 통해 전술한 다른 구성요소들(예: 상기 메모리(330), 상기 입출력 인터페이스(340), 상기 디스플레이(350), 상기 통신 인터페이스(360) 또는 업데이트 모듈(370) 등)로부터 명령을 수신하여, 수신된 명령을 해독하고, 해독된 명령에 따른 연산이나 데이터 처리를 실행할 수 있다.
상기 메모리(330)는, 상기 프로세서(320) 또는 다른 구성요소들(예: 상기 입출력 인터페이스(340), 상기 디스플레이(350), 상기 통신 인터페이스(360) 또는 업데이트 모듈(370) 등)로부터 수신되거나 상기 프로세서(320) 또는 다른 구성요소들에 의해 생성된 명령 또는 데이터를 저장할 수 있다. 상기 메모리(330)는, 예를 들면, 커널(331), 미들웨어(332), 어플리케이션 프로그래밍 인터페이스(API: application programming interface)(333) 또는 어플리케이션(334) 등의 프로그래밍 모듈들을 포함할 수 있다. 전술한 각각의 프로그래밍 모듈들은 소프트웨어, 펌웨어, 하드웨어 또는 이들 중 적어도 둘 이상의 조합으로 구성될 수 있다.
상기 커널(331)은 나머지 다른 프로그래밍 모듈들, 예를 들면, 상기 미들웨어(332), 상기 API(333) 또는 상기 어플리케이션(334)에 구현된 동작 또는 기능을 실행하는 데 사용되는 시스템 리소스들(예: 상기 버스(310), 상기 프로세서(320), 상기 메모리(330) 또는 업데이트 모듈(370) 등)을 제어 또는 관리할 수 있다. 또한, 상기 커널(331)은 상기 미들웨어(332), 상기 API(333) 또는 상기 어플리케이션(334)에서 상기 전자 장치(301)의 개별 구성요소에 접근하여 제어 또는 관리할 수 있는 인터페이스를 제공할 수 있다.
상기 미들웨어(332)는 상기 API(333) 또는 상기 어플리케이션(334)이 상기 커널(331)과 통신하여 데이터를 주고받을 수 있도록 중개 역할을 수행할 수 있다. 또한, 상기 미들웨어(332)는 상기 어플리케이션(334)으로부터 수신된 작업 요청들과 관련하여, 예를 들면, 상기 어플리케이션(334) 중 적어도 하나의 어플리케이션에 상기 전자 장치(301)의 시스템 리소스(예: 상기 버스(310), 상기 프로세서(320), 상기 메모리(330) 또는 업데이트 모듈(370) 등)를 사용할 수 있는 우선 순위를 배정하는 등의 방법을 이용하여 작업 요청에 대한 제어(예: 스케쥴링 또는 로드 밸런싱)을 수행할 수 있다.
상기 API(333)는 상기 어플리케이션(334)이 상기 커널(331) 또는 상기 미들웨어(332)에서 제공되는 기능을 제어하기 위한 인터페이스로, 예를 들면, 파일 제어, 창 제어, 화상 처리 또는 문자 제어 등을 위한 적어도 하나의 인터페이스 또는 함수(예: 명령어)를 포함할 수 있다.
다양한 실시예에 따르면, 상기 어플리케이션(334)은 SMS/MMS 어플리케이션, 이메일 어플리케이션, 달력 어플리케이션, 알람 어플리케이션, 건강 관리(health care) 어플리케이션(예: 운동량 또는 혈당 등을 측정하는 어플리케이션) 또는 환경 정보 어플리케이션(예: 기압, 습도 또는 온도 정보 등을 제공하는 어플리케이션) 등을 포함할 수 있다. 추가적으로 또는 대체적으로, 상기 어플리케이션(334)은 상기 전자 장치(301)와 외부 전자 장치(예: 전자 장치(304)) 사이의 정보 교환과 관련된 어플리케이션일 수 있다. 상기 정보 교환과 관련된 어플리케이션은, 예를 들어, 상기 외부 전자 장치에 특정 정보를 전달하기 위한 알림 전달(notification relay) 어플리케이션, 또는 상기 외부 전자 장치를 관리하기 위한 장치 관리(device management) 어플리케이션을 포함할 수 있다.
예를 들면, 상기 알림 전달 어플리케이션은 상기 전자 장치(301)의 다른 어플리케이션(예: SMS/MMS 어플리케이션, 이메일 어플리케이션, 건강 관리 어플리케이션 또는 환경 정보 어플리케이션 등)에서 발생한 알림 정보를 외부 전자 장치(예: 전자 장치(304))로 전달하는 기능을 포함할 수 있다. 추가적으로 또는 대체적으로, 상기 알림 전달 어플리케이션은, 예를 들면, 외부 전자 장치(예: 전자 장치(304))로부터 알림 정보를 수신하여 사용자에게 제공할 수 있다. 상기 장치 관리 어플리케이션은, 예를 들면, 상기 전자 장치(301)와 통신하는 외부 전자 장치(예: 전자 장치(304))의 적어도 일부에 대한 기능(예: 외부 전자 장치 자체(또는, 일부 구성 부품)의 턴온/턴오프 또는 디스플레이의 밝기(또는, 해상도) 조절), 상기 외부 전자 장치에서 동작하는 어플리케이션 또는 상기 외부 전자 장치에서 제공되는 서비스(예: 통화 서비스 또는 메시지 서비스)를 관리(예: 설치, 삭제 또는 업데이트)할 수 있다.
다양한 실시예에 따르면, 상기 어플리케이션(334)은 상기 외부 전자 장치(예: 전자 장치(304))의 속성(예: 전자 장치의 종류)에 따라 지정된 어플리케이션을 포함할 수 있다. 예를 들어, 외부 전자 장치가 MP3 플레이어인 경우, 상기 어플리케이션(334)은 음악 재생과 관련된 어플리케이션을 포함할 수 있다. 유사하게, 외부 전자 장치가 모바일 의료기기인 경우, 상기 어플리케이션(334)은 건강 관리와 관련된 어플리케이션을 포함할 수 있다. 한 실시예에 따르면, 상기 어플리케이션(334)은 전자 장치(301)에 지정된 어플리케이션 또는 외부 전자 장치(예: 서버 (306) 또는 전자 장치(304))로부터 수신된 어플리케이션 중 적어도 하나를 포함할 수 있다.
상기 입출력 인터페이스(340)는, 입출력 장치(예: 센서, 키보드 또는 터치 스크린)를 통하여 사용자로부터 입력된 명령 또는 데이터를, 예를 들면, 상기 버스(310)를 통해 상기 프로세서(320), 상기 메모리(330), 상기 통신 인터페이스(360) 또는 업데이트 모듈(370)에 전달할 수 있다. 예를 들면, 상기 입출력 인터페이스(340)는 터치 스크린을 통하여 입력된 사용자의 터치에 대한 데이터를 상기 프로세서(320)로 제공할 수 있다. 또한, 상기 입출력 인터페이스(340)는, 예를 들면, 상기 버스(310)를 통해 상기 프로세서(320), 상기 메모리(330), 상기 통신 인터페이스(360) 또는 업데이트 모듈(370)로부터 수신된 명령 또는 데이터를 상기 입출력 장치(예: 스피커 또는 디스플레이)를 통하여 출력할 수 있다. 예를 들면, 상기 입출력 인터페이스(340)는 상기 프로세서(320)를 통하여 처리된 음성 데이터를 스피커를 통하여 사용자에게 출력할 수 있다.
상기 디스플레이(350)는 사용자에게 각종 정보(예: 멀티미디어 데이터 또는 텍스트 데이터 등)을 표시할 수 있다.
상기 통신 인터페이스(360)는 상기 전자 장치(301)와 외부 장치(예: 전자 장치(304) 또는 서버(306)) 간의 통신을 연결할 수 있다. 예를 들면, 상기 통신 인터페이스(360)는 무선 통신 또는 유선 통신을 통해서 네트워크(362)에 연결되어 상기 외부 장치와 통신할 수 있다. 상기 무선 통신은, 예를 들어, Wifi(wireless fidelity), BT(Bluetooth), NFC(near field communication), GPS(global positioning system) 또는 cellular 통신(예: LTE, LTE-A, CDMA, WCDMA, UMTS, WiBro 또는 GSM 등) 중 적어도 하나를 포함할 수 있다. 상기 유선 통신은, 예를 들어, USB(universal serial bus), HDMI(high definition multimedia interface), RS-232(recommended standard 232) 또는 POTS(plain old telephone service) 중 적어도 하나를 포함할 수 있다.
한 실시예에 따르면, 상기 네트워크(362)는 통신 네트워크(telecommunications network)일 수 있다. 상기 통신 네트워크 는 컴퓨터 네트워크(computer network), 인터넷(internet), 사물 인터넷(internet of things) 또는 전화망(telephone network) 중 적어도 하나를 포함할 수 있다. 한 실시예에 따르면, 상기 전자 장치(301)와 외부 장치 간의 통신을 위한 프로토콜(예: transport layer protocol, data link layer protocol 또는 physical layer protocol))은 어플리케이션(334), 어플리케이션 프로그래밍 인터페이스(333), 상기 미들웨어(332), 커널(331) 또는 통신 인터페이스(360) 중 적어도 하나에서 지원될 수 있다.
상기 업데이트 모듈(370)은, 한 실시예에 따르면, 상기 통신 인터페이스(360)을 이용하여, 외부 전자 장치(304) 또는 서버(306)와 통신할 수 있다. 예를 들어, 상기 업데이트 모듈(370)은 외부 전자 장치(304) 또는 서버(306)로부터 설치형 어플리케이션을 제공받아 전자 장치의 저장공간에 설치할 수 있다. 일 실시예에 따르면, 상기 업데이트 모듈(370)은 기 설치된 어플리케이션에 대한 업데이트 동작을 수행할 수 있다. 일 실시예에 따르면, 상기 업데이트 모듈(370)은 설치형 어플리케이션을 제공한 외부 전자 장치(304) 또는 서버(306)로부터 수신하는 업데이트 통지에 포함된 타겟 정보를 기반으로 기 설정된 어플리케이션에 대한 업데이트 동작 수행 여부를 판단할 수 있다. 일 실시예에 따르면, 상기 업데이트 통지는 업데이트 동작이 필요한 어플리케이션의 버전 정보를 나타내는 타겟 정보를 포함할 수 있다. 상기 업데이트 모듈(370)은 기 설정된 어플리케이션의 버전 정보가 업데이트 통지의 타겟 정보에 포함되어 있는 경우, 업데이트 대상이라고 판단하여 어플리케이션에 대한 업데이트 동작을 수행할 수 있다.
상기 업데이트 모듈(370)은 다른 실시예에 따르면, 기 설치되어 있는 어플리케이션의 버전 정보를 설치형 어플리케이션을 제공한 외부 전자 장치(304) 또는 서버(306)로 전송하여 업데이트가 필요한 어플리케이션이 있는지 확인할 수 있다. 상기 외부 전자 장치(304) 또는 서버(306)는 상기 업데이트 모듈(370)에 의해 전송된 버전 정보가 업데이트 대상에 해당되는 경우, 상기 전자 장치(301)로 업데이트 데이터를 제공할 수 있다.
도 4는 본 발명의 다양한 실시예에 따른 업데이트 모듈(307)의 구성을 도시한다. 상기 도 4를 참조하면, 상기 업데이트 모듈(370)은 데이터 관리 모듈(410), 업데이트 판단 모듈(420), 통신 모듈(430)을 포함하여 구성될 수 있다.
상기 데이터 관리 모듈(410)은 상기 전자 장치에 저장된 데이터를 관리할 수 있다. 일 실시예에 따르면, 상기 데이터 관리 모듈(410)은 상기 설치형 어플리케이션을 이용하여 어플리케이션을 설치, 제거 또는 변경할 수 있다. 상기 어플리케이션을 변경하는 것은 업데이트 데이터를 이용하여 기 설치된 어플리케이션을 버그가 수정되거나 기능이 추가된 어플리케이션으로 업데이트하는 것이 될 수 있다.
상기 데이터 관리 모듈(410)은 상기 전자 장치에 설치된 어플리케이션의 업데이트 정보를 관리할 수 있다. 일 실시예에 따르면, 상기 데이터 관리 모듈(410)은 상기 어플리케이션에 대한 최종 업데이트된 날짜, 최종 업데이트 파일에 대한 정보(예를 들어, 버전 정보 등), 어플리케이션에 대한 업데이트 히스토리 등을 관리할 수 있다.
상기 업데이트 판단 모듈(420)은 상기 전자 장치에 설치된 어플리케이션 가운데 업데이트 대상에 해당하는 어플리케이션을 확인할 수 있다.
상기 업데이트 판단 모듈(420)은 어플리케이션 제공자로부터 제공되는 어플리케이션 업데이트 통지(요청)를 분석하여 업데이트 대상 어플리케이션을 확인할 수 있다. 상기 어플리케이션 업데이트 통지는 업데이트 버전 및 타겟 업데이트 버전이 포함될 수 있다. 상기 업데이트 버전은 업데이트가 수행된 후의 어플리케이션 버전이며, 상기 타겟 업데이트 버전은 업데이트를 수행할 대상에 해당하는 버전이 될 수 있다.
상기 업데이트 판단 모듈(420)은 A 라는 어플리케이션에 대하여 업데이트 요청을 수신할 경우, 기 설치된 A 어플리케이션 버전(현재 버전)이 서비스 제공자로부터 수신한 타겟 업데이트 버전(타겟 정보)에 포함된 경우에만 A 어플리케이션을 업데이트 대상이라고 판단할 수 있다.
상기 통신 모듈(430)은 상기 업데이트 판단 모듈(420)에 의해 업데이트 대상 어플리케이션이 확인되면, 해당 어플리케이션에 대한 업데이트 데이터를 요청할 수 있다.
다른 실시예에 따르면, 상기 통신 모듈(430)은 어플리케이션을 제공하는 서버로 기 설치된 어플리케이션에 대한 정보(버전 정보)를 제공하여 업데이트 가능한 어플리케이션이 존재하는지 확인할 수 있다.
또 다른 실시예에 따르면, 상기 업데이트 모듈(370)이 어플리케이션을 제공하는 기능(서버 기능)을 제공하는 경우, 상기 통신 모듈(430)은 설치형 어플리케이션을 다운로드한 전자 장치들로 어플리케이션 업데이트를 요청할 수 있다. 상기 통신 모듈(430)은 업데이트를 수행할 대상에 해당하는 어플리케이션의 버전(타겟 정보)을 상기 전자 장치로 제공할 수 있다.
다양한 실시예에 따르면, 제 1 전자 장치는 제 2 전자 장치들로 기 제공된 어플리케이션에 대하여 업데이트가 감지되면, 업데이트될 어플리케이션에 대한 타겟 정보를 포함하는 업데이트 통지를 생성하는 업데이트 판단 모듈, 상기 생성된 업데이트 통지를 제 2 전자 장치로 전송하고, 상기 업데이트 통지에 대하여 응답한 제 2 전자 장치로 업데이트 데이터를 전송하도록 구성될 수 있다.
다양한 실시예에 따르면, 상기 제 1 전자 장치는 상기 제 2 전자 장치로부터 기 설치된 어플리케이션에 대한 정보를 수신하고, 수신한 정보를 기반으로 제 2 전자 장치에 설치된 어플리케이션 가운데 업데이트 동작이 필요한 어플리케이션을 확인하고, 상기 확인된 어플리케이션 대한 정보를 포함하는 업데이트 통지를 생성하는 업데이트 판단 모듈을 포함할 수 있다.
다양한 실시예에 따르면, 상기 제 1 전자 장치는 어플리케이션 서버를 포함할 수 있다.
다양한 실시예에 따르면, 제 2 전자 장치는 기 설치된 어플리케이션의 업데이트 정보를 관리하는 데이터 관리 모듈, 제 1 전자 장치로부터 업데이트 대상을 나타내는 타겟 정보가 포함되어 있는 업데이트 통지를 수신하는 통신 모듈 및 상기 데이터 관리 모듈에 의해 관리되는 업데이트 정보와 상기 통신 모듈을 통해 수신되는 타겟 정보를 기반으로 기 설치된 어플리케이션에 대한 업데이트 필요성을 판단하는 업데이트 판단 모듈을 포함할 수 있다.
다양한 실시예에 따르면, 상기 데이터 관리부는 기 설치된 어플리케이션에 대한 최종 업데이트 날짜, 최종 업데이트 파일의 버전 정보, 어플리케이션에 대한 업데이트 히스토리 가운데 적어도 하나를 업데이트 정보로 관리하도록 구성될 수 있다.
다양한 실시예에 따르면, 상기 통신 모듈은 상기 업데이트 판단 모듈에 의해 타겟 정보에 해당하는 업데이트 정보가 확인되면, 상기 제 1 전자 장치로 업데이트 정보에 대응되는 어플리케이션에 대한 업데이트 데이터를 요청하도록 구성될 수 있다.
다양한 실시예에 따르면, 상기 제 2 전자 장치는 이동통신 단말기를 포함할 수 있다.
다양한 실시예에 따르면, 상기 제 2 전자 장치는 기 설치된 어플리케이션의 업데이트 정보를 제 1 전자 장치로 전송하여 상기 제 1 전자 장치로부터 업데이트가 필요한 어플리케이션의 정보를 수신하고, 상기 수신한 정보를 기반으로 기 설치된 어플리케이션에 대한 업데이트 데이터를 요청하도록 구성된 통신 모듈 포함하도록 구성될 수 있다.
도 5는 본 발명의 다양한 실시예에 따른 제 1 전자 장치의 동작을 도시한 흐름도이다.
상기 도 5를 참조하면, 상기 제 1 전자 장치는 제 2 전자 장치로 데이터(예를 들어, 설치형 어플리케이션)를 제공한 전자 장치가 될 수 있다. 일 실시예에 따르면, 상기 제 1 전자 장치는 어플리케이션 서버를 포함할 수 있으며, 상기 제 2 전자 장치는 상기 제 1 전자 장치로부터 제공되는 데이터(예를 들어, 설치형 어플리케이션)를 제공받아 저장 또는 설치한 전자 장치(예를 들어, 스마트 폰)가 될 수 있다.
상기 제 1 전자 장치는 동작 501와 같이 데이터 업데이트가 감지되는지 확인할 수 있다. 여기에서, 상기 데이터 업데이트는 제 2 전자 장치로 제공된 어플리케이션에 대하여 버그가 수정되거나 기능이 추가되는 것이 될 수 있다.
상기 제 1 전자 장치는 동작 503과 같이 업데이트가 수행될 데이터에 대한 정보가 될 수 있는 타겟 정보를 포함하는 업데이트 통지(요청)를 생성할 수 있다. 일 실시예에 따르면, 상기 타겟 정보는 버그가 수정되거나 기능이 추가된 어플리케이션의 버전 정보를 포함할 수 있다. 일 실시예에 따르면, 상기 업데이트 통지는 적어도 하나 이상의 타겟 정보를 포함할 수 있다.
일 실시예에 따르면, 상기 제 1 전자 장치는 상기 업데이트 통지를 이용하여 특정 버전의 어플리케이션이 사용되는 것을 제한할 수 있다. 예를 들어, 상기 제 1 전자 장치는 적어도 업데이트 통지에 포함된 타겟 정보에 해당하는 어플리케이션에 대해서는 강제적으로 업데이트 동작을 수행하도록 할 수 있다.
상기 제 1 전자 장치는 동작 505와 같이 타겟 정보가 포함된 업데이트 요청을 제 2 전자 장치로 제공할 수 있다.
상기 제 1 전자 장치는 동작 507과 같이 업데이트 요청에 대한 응답을 수신할 수 있으며, 동작 509와 같이 응답에 대응하여 업데이트 데이터를 제 2 전자 장치로 전송할 수 있다. 상기 업데이트 데이터는 상기 제 2 전자 장치로 제공된 어플리케이션의 버그를 수정하거나 기능을 추가하기 위한 데이터가 될 수 있다. 상기 제 1 전자 장치는 업데이트 통지에 포함된 타겟 정보에 해당하는 데이터를 저장한 제 2 전자 장치로부터 업데이트 요청을 수신할 수 있다. 물론, 상기 제 1 전자 장치는 업데이트 통지에 포함된 타겟 정보에 해당되지 않는 데이터를 저장한 제 2 전자 장치로부터도 업데이트 요청을 수신할 수 있다.
도 6은 본 발명의 다양한 실시예에 따른 제 2 전자 장치의 동작을 도시한 흐름도이다.
다양한 실시예에 따르면, 상기 제 2 전자 장치는 제 1 전자 장치로부터 데이터(예를 들어, 설치형 어플리케이션)를 다운로드한 전자 장치(예를 들어, 스마트 폰)가 될 수 있으며, 상기 제 1 전자 장치는 어플리케이션 서버를 포함할 수 있다.
상기 제 2 전자 장치는 동작 601과 같이 제 1 전자 장치로부터 타겟 정보가 포함된 업데이트 요청을 수신하는지 확인할 수 있다. 일 실시예에 따르면, 상기 업데이트 요청은 기 설치된 어플리케이션에 대하여 기능을 추가하거나 버그를 수정하도록 하는 요청이며, 상기 타겟 정보는 업데이트를 수행해야하는 어플리케이션의 버전 정보를 포함할 수 있다. 상기 타겟 정보는 버그가 수정되거나 기능이 추가되는 어플리케이션에 대한 버전 정보가 될 수 있다.
상기 제 2 전자 장치는 동작 603과 같이 업데이트가 필요한 저장 데이터(예를 들어, 기 설치된 어플리케이션)의 버전 정보를 확인할 수 있으며, 동작 605와 같이 저장 데이터의 버전 정보가 타겟 정보에 포함되는지 확인할 수 있다.
상기 제 2 전자 장치는 저장 데이터의 버전 정보가 타겟 정보에 포함되지 않으면, 어플리케이션에 대하여 업데이트 동작이 불필요하다고 판단할 수 있다. 일 실시예에 따르면, 상기 제 2 전자 장치는 저장 데이터의 버전 정보가 타겟 정보에 포함되지 않으면, 상기 수신한 업데이트 요청을 파기할 수 있다.
상기 제 2 전자 장치는 상기 저장 데이터의 버전 정보가 타겟 정보에 포함되면, 저장 데이터에 대한 업데이트 동작이 필요하다고 판단할 수 있으며, 607동작과 같이 제 1 전자 장치로 업데이트를 요청할 수 있다. 일 실시예에 따르면, 상기 제 2 전자 장치는 저장 데이터에 대한 업데이트가 필요한 경우에는 자동으로 업데이트 데이터를 요청하거나 또는 사용자 입력을 감지한 후 업데이트 데이터를 요청할 수 있다.
상기 제 2 전자 장치는 동작 609와 같이 저장 데이터를 업데이트(기 설치된 어플리케이션 기능을 보완)하기 위하여 상기 제 1 전자 장치로부터 업데이트 데이터를 수신한 후, 동작 611과 같이 수신한 업데이트 데이터를 이용하여 기 저장된 데이터를 업데이트하는 동작을 수행할 수 있다.
도 7은 본 발명의 다양한 실시예에 따른 제 2 전자 장치의 동작을 도시한 흐름도이다.
다양한 실시예에 따르면, 상기 제 2 전자 장치는 제 1 전자 장치(예를 들어, 어플리케이션 서버)로부터 데이터(예를 들어, 설치형 어플리케이션)를 다운로드한 전자 장치(예를 들어, 스마트 폰)가 될 수 있다. 일 실시예에 따르면, 상기 제 2 전자 장치는 기 저장된 데이터(설치된 어플리케이션)의 버전 정보를 서버로 전송하여 업데이트 가능한 어플리케이션이 존재하는지 확인할 수 있다.
상기 제 2 전자 장치는 동작 701과 같이 기 저장된 데이터의 정보를 제 1 전자 장치로 전송할 수 있다.
상기 제 2 전자 장치는 동작 703과 같이 제 1 전자 장치로부터 기 저장 데이터에 대한 업데이트 요청을 수신하는지 확인할 수 있다.
상기 제 2 전자 장치는 동작 705와 같이 업데이트 요청을 수신한 후, 제 1 전자 장치로 업데이트를 요청할 수 있다. 상기 제 2 전자 장치는 기 저장된 데이터 가운데 업데이트가 필요한 데이터(예를 들어, 업데이트가 필요한 어플리케이션)에 대하여 업데이트 데이터를 요청할 수 있다.
상기 제 2 전자 장치는 동작 707과 같이 업데이트 데이터를 수신한 후, 동작 709와 같이 수신한 업데이트 데이터를 이용하여 저장 데이터에 대한 업데이트 동작을 수행할 수 있다.
도 8은 본 발명의 다양한 실시예에 따른 제 1 전자 장치의 동작을 도시한 흐름도이다.
다양한 실시예에 따르면, 상기 제 1 전자 장치는 제 2 전자 장치(예를 들어, 스마트 폰)로 데이터(예를 들어, 설치형 어플리케이션)를 제공한 전자 장치가 될 수 있으며, 일 실시예에 따라 어플리케이션 서버를 포함할 수 있다.
상기 제 1 전자 장치는 동작 801과 같이 제 2 전자 장치로부터 저장된 데이터(업데이트 대상 데이터)의 정보를 수신할 수 있다.
상기 제 1 전자 장치는 동작 803과 같이 수신한 데이터의 정보가 업데이트 타겟 정보에 포함되어 있는지 확인할 수 있다. 여기에서, 상기 업데이트 타겟 정보는 상기 제 1 전자 장치의 데이터 가운데 업데이트된 데이터에 대한 정보가 될 수 있다. 일 실시예에 따르면, 상기 업데이트 타겟 정보는 상기 제 2 전자 장치로 제공된 어플리케이션 가운데 업데이트가 필요한 어플리케이션에 대한 리스트가 될 수 있다. 일 실시예에 따르면, 상기 제 1 전자 장치는 상기 제 2 전자 장치로부터 수신한 어플리케이션의 버전 정보가 기 저장된 업데이트 타겟 정보에 포함되어 있는지 확인할 수 있다.
상기 제 1 전자 장치는 동작 811과 같이 수신한 데이터의 정보가 업데이트 타겟 정보에 포함되지 않음을 확인할 경우, 제 2 전자 장치로 업데이트가 불필요함을 통보할 수 있다.
상기 제 1 전자 장치는 동작 805와 같이 수신한 데이터의 정보가 업데이트 타겟 정보에 포함되어 있음을 확인할 경우, 제 2 전자 장치로 업데이트를 요청할 수 있다.
상기 제 1 전자 장치는 동작 807과 같이 업데이트 요청에 대한 응답을 수신할 수 있으며, 동작 809와 같이 응답에 대응하여 업데이트 데이터를 제 2 전자 장치로 전송할 수 있다.
도 9는 본 발명의 다양한 실시예에 따른 업데이트 통지의 구성을 도시한다.
상기 도 9를 참조하면, 상기 업데이트 통지(900)는 업데이트 버전 정보(910) 및 업데이트 대상을 나타내는 정보인 타겟 데이터 정보(예를 들어, 타겟 정보)(920)를 포함할 수 있다. 상기 업데이트 버전 정보(910)는 업데이트가 수행된 후의 어플리케이션 버전이며, 상기 타겟 업데이트 버전(920)은 업데이트를 수행할 대상에 해당하는 버전이 될 수 있으며, 예를 들어, 업데이트 동작이 필요한 어플리케이션의 버전 정보가 될 수 있다.
상기 업데이트 통지(900)는 적어도 하나 이상의 타겟 데이터에 대하여 업데이트를 요청할 수 있다. 일 실시예에 따르면, 상기 업데이트 통지(900)는 제 1 전자 장치로 제공된 모든 어플리케이션의 버전(930)에 대하여 업데이트를 요청하거나 적어도 하나 이상의 특정 어플리케이션의 버전(940)에 대하여 업데이트를 요청할 수 있다.
도 10은 본 발명의 다양한 실시예에 따른 어플리케이션 업데이트 동작을 도시한 도면이다.
일 실시예에 따르면, 상기 제 1 전자 장치(1001)는 관리하고 있는 어플리케이션 가운데 적어도 하나 이상의 어플리케이션에 대한 업데이트를 감지(1010)할 수 있다. 일 실시예에 따르면, 상기 제 1 전자 장치(1001)는 어플리케이션을 제공하는 어플리케이션 서버가 될 수 있다.
상기 제 1 전자 장치(1001)는 업데이트된 어플리케이션에 대한 타겟 정보를 확인하고 타겟 정보가 포함된 업데이트 통지를 생성(1012)하여 제 2 전자 장치(1003)로 전송(1014)할 수 있다. 상기 타겟 정보는 업데이트되기 전의 어플리케이션 버전일 수 있으며, 상기 제 2 전자 장치(1003)는 어플리케이션을 수신하여 설치한 스마트 폰이 될 수 있다.
상기 제 2 전자 장치(1003)는 상기 제 1 전자 장치(1001)로부터 수신한 업데이트 통지에서 타겟 정보를 획득(1016)하고, 기 설치된 어플리케이션의 버전 정보를 획득(1018)할 수 있다.
상기 제 2 전자 장치(1003)는 타겟 정보와 어플리케이션의 버전 정보를 기반으로 업데이트가 필요한 어플리케이션을 확인(1020)하고, 상기 제 1 전자 장치(1001)로 업데이트가 필요한 어플리케이션에 대한 업데이트 데이터를 요청(1022)할 수 있다. 일 실시예에 따르면, 상기 제 2 전자 장치(1003)는 타겟 정보와 관련된 버전 정보를 가지는 어플리케이션에 대하여 업데이트가 필요하다고 판단할 수 있다.
상기 제 1 전자 장치(1001)는 상기 제 2 전자 장치(1003)의 요청에 상응하는 업데이트 데이터를 상기 제 2 전자 장치(1003)로 전송(1024)할 수 있다.
상기 제 2 전자 장치(1003)는 상기 제 1 전자 장치(1001)로부터 수신한 업데이트 데이터를 이용하여 기 설치된 어플리케이션에 대한 업데이트 동작을 수행(1026)할 수 있다.
도 11은 본 발명의 다양한 실시예에 따른 어플리케이션 업데이트 동작을 도시한 도면이다.
일 실시예에 따르면, 상기 제 2 전자 장치(1103)는 기 설치된 어플리케이션에 대한 버전 정보를 획득(1110)하고, 이를 제 1 전자 장치(1101)로 전송(1112)할 수 있다. 상기 제 1 전자 장치(1101)는 어플리케이션을 제공하는 어플리케이션 서버가 될 수 있으며, 상기 제 2 전자 장치(1103)는 어플리케이션을 수신하여 설치한 스마트 폰이 될 수 있다.
상기 제 1 전자 장치(1101)는 관리하는 어플리케이션 가운데 업데이트 된 어플리케이션에 대한 타겟 정보를 획득(1114)할 수 있다. 여기에서, 상기 타겟 정보는 업데이트되기 전의 버전일 수 있다.
상기 제 1 전자 장치(1101)는 타겟 정보와 수신한 어플리케이션의 버전 정보를 기반으로 상기 제 2 전자 장치의 어플리케이션 가운데 업데이트가 필요한 어플리케이션을 확인(1116)하고, 확인된 정보를 제 2 전자 장치(1103)로 전송(1118)할 수 있다.
상기 제 2 전자 장치(1103)는 제 1 전자 장치(1101)로부터 수신한 어플리케이션의 정보 가운데 업데이트할 어플리케이션을 확인(1120)한 후, 제 1 전자 장치(1101)로 확인한 어플리케이션에 대한 업데이트 데이터를 요청(1122)할 수 있다. 일 실시예에 따르면, 상기 제 1 전자 장치(1101)는 업데이트가 필요한 어플리케이션에 대한 리스트를 전송할 수 있으며, 상기 제 2 전자 장치(1103)는 수신한 리스트 가운데 사용자로부터 선택된 어플리케이션에 대한 업데이트 데이터를 요청할 수 있다.
상기 제 1 전자 장치(1101)는 상기 제 2 전자 장치(1103)의 요청에 상응하는 업데이트 데이터를 상기 제 2 전자 장치(1103)로 전송(1124)할 수 있다.
상기 제 2 전자 장치(1103)는 상기 제 1 전자 장치(1101)로부터 수신한 업데이트 데이터를 이용하여 기 설치된 어플리케이션에 대한 업데이트 동작을 수행(1126)할 수 있다.
다양한 실시예에 따르면, 제 1 전자 장치의 동작 방법은 제 2 전자 장치들로 제공된 어플리케이션에 대하여 업데이트가 감지되면, 업데이트될 어플리케이션에 대한 타겟 정보를 포함하는 업데이트 통지를 생성하는 동작, 상기 생성된 업데이트 통지를 제 2 전자 장치로 전송하는 동작 및 상기 업데이트 통지에 대하여 응답한 제 2 전자 장치로 어플리케이션에 대한 업데이트 데이터를 전송하는 동작을 포함할 수 있다.
다양한 실시예에 따르면, 상기 타겟 정보는 업데이트 동작이 필요한 버전 정보를 포함할 수 있다.
다양한 실시예에 따르면, 상기 제 1 전자 장치의 동작 방법은 상기 제 2 전자 장치로부터 기 설치된 어플리케이션에 대한 정보를 수신하는 동작, 수신한 정보를 기반으로 제 2 전자 장치에 설치된 어플리케이션 가운데 업데이트 동작이 필요한 어플리케이션을 확인하는 동작, 상기 확인된 어플리케이션 대한 정보를 포함하는 업데이트 통지를 생성하는 동작을 포함할 수 있다.
다양한 실시예에 따르면, 제 2 전자 장치의 동작 방법은 제 1 전자 장치로부터 업데이트 대상을 나타내는 타겟 정보가 포함되어 있는 업데이트 통지를 수신하는 동작, 수신된 업데이트 통지의 타겟 정보를 기반으로, 기 설치된 어플리케이션 가운데 업데이트 동작이 필요한 어플리케이션을 확인하는 동작 및 상기 확인된 어플리케이션이 업데이트 될 수 있도록 제 1 전자 장치로부터 업데이트 데이터를 수신하는 동작을 포함할 수 있다.
다양한 실시예에 따르면, 상기 업데이트 동작이 필요한 어플리케이션을 확인하는 동작은 기 설치된 어플리케이션에 대한 버전 정보를 획득하는 동작, 상기 수신된 업데이트 통지의 타겟 정보와 상기 획득된 어플리케이션의 버전 정보를 비교하는 동작을 포함할 수 있다.
다양한 실시예에 따르면, 상기 업데이트 데이터를 수신하는 동작은 업데이트가 필요한 어플리케이션에 대한 리스트를 확인하는 동작, 확인된 리스트 가운데 업데이트 동작을 수행할 적어도 하나 이상의 어플리케이션을 확인하는 동작 및 상기 확인된 어플리케이션에 대한 업데이트 데이터를 요청하는 동작을 포함할 수 있다.
다양한 실시예에 따르면, 상기 업데이트 통지는 적어도 하나 이상의 타겟 정보를 포함할 수 있다.
다양한 실시예에 따르면, 상기 제 2 전자 장치의 동작 방법은 기 설치된 어플리케이션에 대한 버전 정보를 제 1 전자 장치로 전송하는 동작 및 상기 제 1 전자 장치로부터 기 설치된 어플리케이션 가운데 업데이트가 필요한 어플리케이션의 정보를 수신하는 동작을 포함할 수 있다.
다양한 실시예에 따르면, 상기 제 1 전자 장치의 동작 방법은 어플리케이션 서버의 동작 방법일 수 있다.
다양한 실시예에 따르면, 상기 제 2 전자 장치의 동작 방법은 이동통신 단말기, 예를 들어, 스마트 폰의 동작일 수 있다.
본 발명의 청구항 및/또는 명세서에 기재된 실시 예들에 따른 방법들은 하드웨어, 소프트웨어, 또는 하드웨어와 소프트웨어의 조합의 형태로 구현될(implemented) 수 있다.
소프트웨어로 구현하는 경우, 하나 이상의 프로그램(소프트웨어 모듈)을 저장하는 컴퓨터 판독 가능 저장 매체가 제공될 수 있다. 컴퓨터 판독 가능 저장 매체에 저장되는 하나 이상의 프로그램은, 전자 장치(device) 내의 하나 이상의 프로세서에 의해 실행 가능하도록 구성된다(configured for execution). 하나 이상의 프로그램은, 전자 장치로 하여금, 본 발명의 청구항 및/또는 명세서에 기재된 실시 예들에 따른 방법들을 실행하게 하는 명령어(instructions)를 포함한다.
이러한 프로그램(소프트웨어 모듈, 소프트웨어)은 랜덤 액세스 메모리 (random access memory), 플래시(flash) 메모리를 포함하는 불휘발성(non-volatile) 메모리, 롬(ROM, Read Only Memory), 전기적 삭제가능 프로그램가능 롬(EEPROM, Electrically Erasable Programmable Read Only Memory), 자기 디스크 저장 장치(magnetic disc storage device), 컴팩트 디스크 롬(CD-ROM, Compact Disc-ROM), 디지털 다목적 디스크(DVDs, Digital Versatile Discs) 또는 다른 형태의 광학 저장 장치, 마그네틱 카세트(magnetic cassette)에 저장될 수 있다. 또는, 이들의 일부 또는 전부의 조합으로 구성된 메모리에 저장될 수 있다. 또한, 각각의 구성 메모리는 다수 개 포함될 수도 있다.
또한, 전자 장치에 인터넷(Internet), 인트라넷(Intranet), LAN(Local Area Network), WLAN(Wide LAN), 또는 SAN(Storage Area Network)과 같은 통신 네트워크, 또는 이들의 조합으로 구성된 통신 네트워크를 통하여 접근(access)할 수 있는 부착 가능한(attachable) 저장 장치(storage device)에 저장될 수 있다. 이러한 저장 장치는 외부 포트를 통하여 전자 장치에 접속할 수 있다.
또한, 통신 네트워크상의 별도의 저장장치가 휴대용 전자 장치에 접속할 수도 있다.
다양한 실시예에 따르면, 컴퓨터 판독 가능한 기록 매체는 제 1 전자 장치로부터 업데이트 대상을 나타내는 타겟 정보가 포함되어 있는 업데이트 통지를 수신하는 동작, 수신된 업데이트 통지의 타겟 정보를 기반으로, 기 설치된 어플리케이션 가운데 업데이트 동작이 필요한 어플리케이션을 확인하는 동작 및 상기 확인된 어플리케이션이 업데이트 될 수 있도록 제 1 전자 장치로부터 업데이트 데이터를 수신하는 동작을 실행시키기 위한 프로그램을 기록할 수 있다.
다양한 실시예에 따르면, 상기 컴퓨터 판독 가능한 기록 매체는 기 설치된 어플리케이션에 대한 버전 정보를 제 1 전자 장치로 전송하는 동작, 상기 제 1 전자 장치로부터 기 설치된 어플리케이션 가운데 업데이트가 필요한 어플리케이션의 정보를 수신하는 동작을 실행시키기 위한 프로그램을 기록할 수 있다.
한편 본 발명의 상세한 설명에서는 구체적인 실시 예에 관해 설명하였으나, 본 발명의 범위에서 벗어나지 않는 한도 내에서 전자 장치의 동작 순서가 변경 또는 병합되거나 재사용 가능하며 생략 등과 같이 여러 가지 변형이 가능하다. 그러므로 본 발명의 범위는 설명된 실시 예에 국한되어 정해져서는 아니 되며 후술하는 특허청구의 범위뿐만 아니라 이 특허청구의 범위와 균등한 것들에 의해 정해져야 한다.

Claims (17)

  1. 제 1 전자 장치의 동작 방법에 있어서,
    제 2 전자 장치들로 제공된 어플리케이션에 대하여 업데이트가 감지되면, 업데이트될 어플리케이션에 대한 타겟 정보를 포함하는 업데이트 통지를 생성하는 동작;
    상기 생성된 업데이트 통지를 제 2 전자 장치로 전송하는 동작; 및
    상기 업데이트 통지에 대하여 응답한 제 2 전자 장치로 어플리케이션에 대한 업데이트 데이터를 전송하는 동작을 포함하되,
    상기 타겟 정보는 업데이트 동작이 필요한 버전 정보를 포함하는 방법.
  2. 제 1항에 있어서,
    상기 제 1 전자 장치의 동작 방법은,
    상기 제 2 전자 장치로부터 기 설치된 어플리케이션에 대한 정보를 수신하는 동작;
    수신한 정보를 기반으로 제 2 전자 장치에 설치된 어플리케이션 가운데 업데이트 동작이 필요한 어플리케이션을 확인하는 동작;
    상기 확인된 어플리케이션 대한 정보를 포함하는 업데이트 통지를 생성하는 동작을 포함하는 방법.
  3. 제 2 전자 장치의 동작 방법에 있어서,
    제 1 전자 장치로부터 업데이트 대상을 나타내는 타겟 정보가 포함되어 있는 업데이트 통지를 수신하는 동작;
    수신된 업데이트 통지의 타겟 정보를 기반으로, 기 설치된 어플리케이션 가운데 업데이트 동작이 필요한 어플리케이션을 확인하는 동작; 및
    상기 확인된 어플리케이션이 업데이트 될 수 있도록 제 1 전자 장치로부터 업데이트 데이터를 수신하는 동작을 포함하는 방법.
  4. 제 3항에 있어서,
    상기 업데이트 동작이 필요한 어플리케이션을 확인하는 동작은,
    기 설치된 어플리케이션에 대한 버전 정보를 획득하는 동작;
    상기 수신된 업데이트 통지의 타겟 정보와 상기 획득된 어플리케이션의 버전 정보를 비교하는 동작을 포함하는 방법.
  5. 제 3항에 있어서,
    상기 업데이트 데이터를 수신하는 동작은,
    업데이트가 필요한 어플리케이션에 대한 리스트를 확인하는 동작;
    확인된 리스트 가운데 업데이트 동작을 수행할 적어도 하나 이상의 어플리케이션을 확인하는 동작; 및
    상기 확인된 어플리케이션에 대한 업데이트 데이터를 요청하는 동작을 포함하는 방법.
  6. 제 3항에 있어서,
    상기 업데이트 통지는,
    적어도 하나 이상의 타겟 정보를 포함하는 방법.
  7. 제 3항에 있어서,
    상기 제 2 전자 장치의 동작 방법은,
    기 설치된 어플리케이션에 대한 버전 정보를 제 1 전자 장치로 전송하는 동작; 및
    상기 제 1 전자 장치로부터 기 설치된 어플리케이션 가운데 업데이트가 필요한 어플리케이션의 정보를 수신하는 동작을 포함하는 방법.
  8. 제 1 전자 장치에 있어서,
    제 2 전자 장치들로 기 제공된 어플리케이션에 대하여 업데이트가 감지되면, 업데이트될 어플리케이션에 대한 타겟 정보를 포함하는 업데이트 통지를 생성하는 업데이트 판단 모듈;
    상기 생성된 업데이트 통지를 제 2 전자 장치로 전송하고, 상기 업데이트 통지에 대하여 응답한 제 2 전자 장치로 업데이트 데이터를 전송하도록 구성된 제 1 전자 장치.
  9. 제 8항에 있어서,
    상기 제 1 전자 장치는,
    상기 제 2 전자 장치로부터 기 설치된 어플리케이션에 대한 정보를 수신하고, 수신한 정보를 기반으로 제 2 전자 장치에 설치된 어플리케이션 가운데 업데이트 동작이 필요한 어플리케이션을 확인하고, 상기 확인된 어플리케이션 대한 정보를 포함하는 업데이트 통지를 생성하는 업데이트 판단 모듈을 포함하는 제 1 전자 장치.
  10. 제 8항에 있어서,
    상기 제 1 전자 장치는 어플리케이션 서버를 포함하는 제 1 전자 장치.
  11. 제 2 전자 장치에 있어서,
    기 설치된 어플리케이션의 업데이트 정보를 관리하는 데이터 관리 모듈;
    제 1 전자 장치로부터 업데이트 대상을 나타내는 타겟 정보가 포함되어 있는 업데이트 통지를 수신하는 통신 모듈; 및
    상기 데이터 관리 모듈에 의해 관리되는 업데이트 정보와 상기 통신 모듈을 통해 수신되는 타겟 정보를 기반으로 기 설치된 어플리케이션에 대한 업데이트 필요성을 판단하는 업데이트 판단 모듈을 포함하는 제 2 전자 장치.
  12. 제 11항에 있어서,
    상기 데이터 관리부는,
    기 설치된 어플리케이션에 대한 최종 업데이트 날짜, 최종 업데이트 파일의 버전 정보, 어플리케이션에 대한 업데이트 히스토리 가운데 적어도 하나를 업데이트 정보로 관리하도록 구성된 제 2 전자 장치.
  13. 제 11항에 있어서,
    상기 통신 모듈은,
    상기 업데이트 판단 모듈에 의해 타겟 정보에 해당하는 업데이트 정보가 확인되면, 상기 제 1 전자 장치로 업데이트 정보에 대응되는 어플리케이션에 대한 업데이트 데이터를 요청하도록 구성된 제 2 전자 장치.
  14. 제 11항에 있어서,
    상기 제 2 전자 장치는,
    이동통신 단말기를 포함하는 제 2 전자 장치.
  15. 제 11항에 있어서,
    상기 제 2 전자 장치는,
    기 설치된 어플리케이션의 업데이트 정보를 제 1 전자 장치로 전송하여 상기 제 1 전자 장치로부터 업데이트가 필요한 어플리케이션의 정보를 수신하고, 상기 수신한 정보를 기반으로 기 설치된 어플리케이션에 대한 업데이트 데이터를 요청하도록 구성된 통신 모듈 포함하도록 구성된 제 2 전자 장치.
  16. 제 1 전자 장치로부터 업데이트 대상을 나타내는 타겟 정보가 포함되어 있는 업데이트 통지를 수신하는 동작, 수신된 업데이트 통지의 타겟 정보를 기반으로, 기 설치된 어플리케이션 가운데 업데이트 동작이 필요한 어플리케이션을 확인하는 동작 및 상기 확인된 어플리케이션이 업데이트 될 수 있도록 제 1 전자 장치로부터 업데이트 데이터를 수신하는 동작을 실행시키기 위한 프로그램을 기록한 컴퓨터 판독 가능한 기록 매체.
  17. 제 16항에 있어서,
    상기 컴퓨터 판독 가능한 기록 매체는,
    기 설치된 어플리케이션에 대한 버전 정보를 제 1 전자 장치로 전송하는 동작, 상기 제 1 전자 장치로부터 기 설치된 어플리케이션 가운데 업데이트가 필요한 어플리케이션의 정보를 수신하는 동작을 실행시키기 위한 프로그램을 기록한 컴퓨터 판독 가능한 기록 매체.
KR1020140008422A 2014-01-23 2014-01-23 어플리케이션 관리 방법 및 그 방법을 처리하는 전자 장치 KR20150088059A (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020140008422A KR20150088059A (ko) 2014-01-23 2014-01-23 어플리케이션 관리 방법 및 그 방법을 처리하는 전자 장치
US14/603,719 US20150205598A1 (en) 2014-01-23 2015-01-23 Method for managing application and electronic device for processing method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020140008422A KR20150088059A (ko) 2014-01-23 2014-01-23 어플리케이션 관리 방법 및 그 방법을 처리하는 전자 장치

Publications (1)

Publication Number Publication Date
KR20150088059A true KR20150088059A (ko) 2015-07-31

Family

ID=53544879

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020140008422A KR20150088059A (ko) 2014-01-23 2014-01-23 어플리케이션 관리 방법 및 그 방법을 처리하는 전자 장치

Country Status (2)

Country Link
US (1) US20150205598A1 (ko)
KR (1) KR20150088059A (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2018136613A1 (en) * 2017-01-23 2018-07-26 Bandwidthx Inc. Application management for a mobile device

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105653325A (zh) * 2015-12-29 2016-06-08 北京金山安全软件有限公司 一种测试环境中数据包的更新方法、装置及电子设备
CN112905209A (zh) * 2021-03-23 2021-06-04 维沃移动通信(深圳)有限公司 应用程序更新方法及装置
US11782701B2 (en) * 2021-06-01 2023-10-10 Stephen Davidson Software updater
CN113434211B (zh) * 2021-06-24 2023-02-07 平安国际智慧城市科技股份有限公司 应用程序功能动态化配置方法、装置、设备及存储介质

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050223373A1 (en) * 2004-04-05 2005-10-06 Dell Products L.P. Method for updating the firmware of a device
US7676804B2 (en) * 2004-05-20 2010-03-09 Caterpillar Inc. Systems and method for remotely modifying software on a work machine
US10104432B2 (en) * 2006-12-01 2018-10-16 Time Warner Cable Enterprises Llc Methods and apparatus for software provisioning of a network device
US8245217B2 (en) * 2007-10-12 2012-08-14 Microsoft Corporation Management of software and operating system updates required for the process of creating a virtual machine facsimile of an existing physical or virtual machine
US20110088026A1 (en) * 2009-10-09 2011-04-14 Brendon Swann Mobile device application update management
JP5392203B2 (ja) * 2010-08-19 2014-01-22 株式会社リコー 情報処理装置、情報処理システム、インストール支援方法、及びインストール支援プログラム
JP5527146B2 (ja) * 2010-09-30 2014-06-18 ブラザー工業株式会社 端末装置及びプログラム
US8910142B2 (en) * 2011-04-13 2014-12-09 Xerox Corporation Method and system to regulate the electronic availability of application software updates based on information collected regarding installation, usage and support for these updates
KR20130028478A (ko) * 2011-09-09 2013-03-19 삼성전자주식회사 관리 서버, 호스트 장치, 및 어플리케이션 관리 방법
KR101357951B1 (ko) * 2012-03-02 2014-02-04 엘에스산전 주식회사 디지털 보호 계전기의 펌웨어 유지보수방법 또는 이를 수행하는 디지털 보호 계전기
US20140215450A1 (en) * 2013-01-31 2014-07-31 Trane International Inc. System and method for updating software

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2018136613A1 (en) * 2017-01-23 2018-07-26 Bandwidthx Inc. Application management for a mobile device

Also Published As

Publication number Publication date
US20150205598A1 (en) 2015-07-23

Similar Documents

Publication Publication Date Title
CN106664544B (zh) 用于嵌入式sim供应的方法和设备
CN106538042B (zh) 订户标识模块管理方法和支持该方法的电子设备
US10678527B2 (en) Apparatus and method for managing application
EP3108398B1 (en) Method and apparatus to sandbox run-time android applications with lightweight container
KR102082347B1 (ko) 통지 정보를 전송하기 위한 전자 장치 및 방법
KR20180102823A (ko) IoT 장치의 무선 라우터 연결을 지원하는 무선 라우터, 전자 장치 및 시스템
KR20160097511A (ko) 권한 제어 방법 및 이를 운용하는 전자 장치
KR20160100760A (ko) 어플리케이션을 설치하는 전자 장치 및 그 제어 방법
CN105809028B (zh) 在移动设备中运行相同应用的多个实例的装置和方法
KR20160145419A (ko) 전자 장치 및 전자 장치에서 기능 제공 방법
KR20170109433A (ko) 보안 결제를 수행하는 전자 장치 및 방법
KR20150116228A (ko) 연락처를 관리하는 방법 및 이를 구현하는 전자장치
KR20150088059A (ko) 어플리케이션 관리 방법 및 그 방법을 처리하는 전자 장치
KR102152671B1 (ko) 전자 장치 및 이의 착신 전환 제어 방법
EP2770712B1 (en) Method and electronic device for synchronizing of user interfaces between two terminals
US10887383B2 (en) Electronic device and application sharing method thereof
KR20150099440A (ko) 런타임 시의 안드로이드 애플리케이션들을 경량 컨테이너로 샌드박싱하는 방법 및 장치
KR20160035470A (ko) 전자 장치에서 일정 정보를 이용한 기능 제공 방법 및 장치
EP3131031A1 (en) Content security processing method and electronic device supporting the same
KR20160016405A (ko) 데이터 처리 방법 및 그 전자 장치
US9734344B2 (en) Providing control in a multi user environment
KR102114201B1 (ko) 전자장치 및 전자장치의 메시지처리 방법
KR20170120333A (ko) 보안 로그인 서비스를 수행하는 전자 장치 및 방법
KR20170050170A (ko) 연락처 정보 제공 방법 및 장치
KR102495924B1 (ko) 어플리케이션의 보안 처리 방법 및 이를 지원하는 전자 장치

Legal Events

Date Code Title Description
WITN Withdrawal due to no request for examination