KR20150075617A - 푸시 메시지를 이용한 소프트웨어 업그레이드 방법 및 장치 - Google Patents

푸시 메시지를 이용한 소프트웨어 업그레이드 방법 및 장치 Download PDF

Info

Publication number
KR20150075617A
KR20150075617A KR1020130163752A KR20130163752A KR20150075617A KR 20150075617 A KR20150075617 A KR 20150075617A KR 1020130163752 A KR1020130163752 A KR 1020130163752A KR 20130163752 A KR20130163752 A KR 20130163752A KR 20150075617 A KR20150075617 A KR 20150075617A
Authority
KR
South Korea
Prior art keywords
software
mobile device
server
push message
downloaded
Prior art date
Application number
KR1020130163752A
Other languages
English (en)
Other versions
KR101651854B1 (ko
Inventor
김범석
김혁규
Original Assignee
주식회사 엘지유플러스
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 주식회사 엘지유플러스 filed Critical 주식회사 엘지유플러스
Priority to KR1020130163752A priority Critical patent/KR101651854B1/ko
Publication of KR20150075617A publication Critical patent/KR20150075617A/ko
Application granted granted Critical
Publication of KR101651854B1 publication Critical patent/KR101651854B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/12Messaging; Mailboxes; Announcements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W8/00Network data management
    • H04W8/22Processing or transfer of terminal data, e.g. status or physical capabilities
    • H04W8/24Transfer of terminal data
    • H04W8/245Transfer of terminal data from a network towards a terminal

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • Stored Programmes (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

본 발명의 일 실시예에 따른 서버와 연동되는 모바일 기기에서 소프트웨어를 업그레이드 방법은 상기 서버에 의해 생성된 푸시 메시지(Push Message)를 수신하는 수신 단계와 상기 푸시 메시지가 상기 모바일 기기에 다운로드된 소프트웨어의 자동 업그레이드를 지시하는 메시지인지 여부를 판단하는 판단 단계와 상기 판단 결과, 상기 자동 업그레이드를 지시하는 메시지인 경우, 상기 다운로드된 소프트웨어를 상기 모바일 기기에 설치하는 설치 단계를 포함할 수 있다. 따라서, 본 발명에 의한 푸시 메시지를 이용한 소프트웨어 갱신 방법 및 그 장치는 보다 효과적으로 모바일 기기의 소프트웨어를 갱신할 수 있다.

Description

푸시 메시지를 이용한 소프트웨어 업그레이드 방법 및 장치 {Method and apparatus for providing software upgrade using push message}
본 발명은 푸시 메시지를 이용한 소프트웨어 업그레이드 방법 및 그 장치에 관한 것으로서, 보다 상세하게, FOTA 서버에 의해 전송되는 푸시 메시지를 통해 모바일 기기에 다운로드된 소프트웨어를 자동으로 업그레이드하는 것이 가능한 푸시 메시지를 이용한 소프트웨어 업그레이드 방법 및 그 장치에 관한 것이다.
정보 통신 기술의 발달에 따라, 현재 출시되는 모바일 기기는 단순한 통화 기능뿐만 아니라 다양한 기능을 수행할 수 있도록 구성되고 있다. 그러한 다양한 기능들의 예로 웹 브라우징, 채팅, TV 시청, 네비게이션, 게임, 카메라를 통해 사진이나 동영상을 촬영하는 기능, 음성 저장 기능, 스피커 시스템을 통한 음악 파일의 재생 기능, 이미지나 비디오의 디스플레이 기능 등이 있다.
모바일 기기의 기능이 복잡해짐에 따라 모바일 기기에 탑재되는 소프트웨어 또한 많은 버그(bug)를 가지고 있고, 모바일 기기가 출시된 이후에도 기능 추가 및 업그레이드에 대한 요구가 갈수록 더해지고 있다. 이에 따라 모바일 기기의 소프트웨어의 패치 및 기능 업그레이드를 무선상으로 해결하기 위해 나온 것이 FOTA(Firmware Over The Air)이다.
종래 기술에 따른 FOTA 서비스 방법을 살펴보면, 각 FOTA 솔루션 업체에서 FOTA를 실행하기 위한 소프트웨어를 각기 개발하여 공급하고, 이동통신망을 이용하여 모바일 기기로 해당 소프트웨어를 다운받아 실행함으로써 모바일 기기의 펌웨어(Firmware) 업데이트를 수행하게 된다.
특히, FOTA를 통해 다운로드되는 펌웨어는 음성 데이터 패킷이나 SMS 메시지 등의 데이터 패킷등에 비해 정보의 양이 훨씬 크므로 다운로드에 많은 시간이 소요될 수 있다. 이로 인해 모바일 기기 사용자는 해당 펌웨어를 다운받는 동안에는 전화를 받지 못하거나, 전화가 걸려오면 다운로드를 중단해야 하는 문제점이 발생한다.
또한, 일반적으로 펌웨어의 다운로드 용량이 큰 편이므로, 다운로드 중에는 특정 단말이 무선 자원(Radio Resource)을 많이 소모하게 된다. 이로 인해, 특정 셀(cell) 내에 있는 한 사용자에게 무선 자원이 집중되어 동일 셀 내의 다른 사용자가 무선 통신 서비스를 이용함에 있어 악영향을 미칠 수 있다는 문제점을 남기게 된다. 이러한 문제점은 단말 사용자에게 불편을 초래하는 것 이외에, 각 이통통신 서비스 사용자에게 최상을 통신 환경을 제공하려는 이통통신 사업자에게도 효율적인 무선 자원 분배에 어려움을 가중시킨다.
또한, 새로운 펌웨어 버전이 다운로드되어 설치된 경우, 모바일 기기는 전원이 오프(Off)되었다가 다시 켜지는 재부팅 절차를 반드시 수행하게 된다. 일부 모바일 기기 사용자는 상기한 재부팅 절차를 피하기 위해 다운로드된 펌웨어의 설치를 회피하는 경우가 많이 발생하고 있다.
만약, 해당 펌웨어가 모바일 기기에 치명적인 버그가 수정된 버전인 경우, 서비스 사업자는 문제 해결된 펌웨어를 사용자에게 적시에 제공했음에도 불구하고, 해당 펌웨어에 대한 설치 지연 또는 회피로 인해 모바일 기기 사용자로부터 불필요한 많은 민원을 받을 수 있다.
이는 고객 만족도에 악영향을 끼칠 뿐만 아니라 이동 통신 서비스 사업자의 매출에도 악영향을 미칠 수 있다.
또한, FOTA 기능이 탑재된 모바일 기기가 점점 더 많아짐에 따라, FOTA 기능을 응용하여 펌웨어 업그레이드용 소프트웨어뿐만 아니라 다른 종류의 응용 소프트웨어를 다운받아 사용하는 서비스가 이루어질 수도 있다. 이 경우, FOTA를 이용한 소프트웨어 업그레이드 절차가 보다 빈번하게 발생될 수 있으며, 이로 인해, 무선 자원 소모 및 사용자 불편이 많이 초래될 수 있다.
본 발명은 상술한 종래 기술의 문제점을 해결하기 위해 고안된 것으로, 본 발명의 목적은 푸시 메시지를 이용한 소프트웨어 업그레이드 방법을 제공하는 것이다.
본 발명의 다른 목적은 푸시 메시지를 통해 다운로드된 펌웨어를 자동 업그레이드하는 것이 가능한 푸시 메시지를 이용한 소프트웨어 업그레이드 방법을 제공하는 것이다.
본 발명의 또 다른 목적은 무선 자원 사용률이 적은 시간대에 다운로드된 펌웨어를 설치하는 것이 가능한 푸시 메시지를 이용한 소프트웨어 업그레이드 방법을 제공하는 것이다.
본 발명의 또 다른 목적은 다운로드된 펌웨어 설치 이전에 모바일 기기의 예외 처리 상황을 식별함으로써, 보다 안전하고 편리하게 펌웨어를 설치하는 것이 가능한 푸시 메시지를 이용한 소프트웨어 업그레이드 방법을 제공하는 것이다.
본 발명의 또 다른 목적은 사용자에 투명하게 펌웨어 업그레이드를 제공하는 것이 가능한 푸시 메시지를 이용한 소프트웨어 업그레이드 방법을 제공하는 것이다.
본 발명의 또 다른 목적은 상기 방법들을 지원하는 장치, 시스템 및 기록 매체를 제공하는 것이다.
본 발명에서 이루고자 하는 기술적 과제들은 이상에서 언급한 기술적 과제들로 제한되지 않으며, 언급하지 않은 또 다른 기술적 과제들은 아래의 기재로부터 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.
본 발명은 푸시 메시지를 이용한 소프트웨어 업그레이드 방법들을 제공한다.
본 발명의 일 실시예에 따른 서버와 연동되는 모바일 기기에서 소프트웨어를 업그레이드 방법은 상기 서버에 의해 생성된 푸시 메시지(Push Message)를 수신하는 수신 단계와 상기 푸시 메시지가 상기 모바일 기기에 다운로드된 소프트웨어의 자동 업그레이드를 지시하는 메시지인지 여부를 판단하는 판단 단계와 상기 판단 결과, 상기 자동 업그레이드를 지시하는 메시지인 경우, 상기 다운로드된 소프트웨어를 상기 모바일 기기에 설치하는 설치 단계를 포함할 수 있다.
여기서, 상기 서버는 FOTA(Firmware Over The Air) 서버일 수 있다.
또한, 상기 다운로드된 소프트웨어가 소정 시간 동안 업그레이드되지 않은 경우, 상기 자동 업그레이드를 지시하는 메시지가 상기 서버로부터 수신될 수 있다.
또한, 상기 방법은 상기 모바일 기기에 설치된 소프트웨어 버전 정보를 소정 주기로 상기 서버로 전송하는 단계를 더 포함하되, 상기 서버에 저장된 최신 소프트웨어 버전 정보와 상기 설치된 소프트웨어 버전 정보가 상이한 경우 상기 자동 업그레이드를 지시하는 메시지가 수신될 수 있다.
만약, 상기 판단 단계에서 상기 자동 업그레이드를 지시하는 메시지인 경우, 상기 설치 단계 이전에, 상기 다운로드된 소프트웨어의 업그레이드 가능 여부를 판단하기 위한 소정 예외 처리 항목을 확인하는 단계를 더 포함하되, 상기 예외 처리 항목의 확인 결과, 상기 다운로드된 소프트웨어의 업그레이드가 가능한 것으로 확인되면, 상기 설치 단계가 수행될 수 있다.
이때, 상기 예외 처리 항목을 확인하는 단계는 현재 시간이 미리 설정된 자동 설치 시간대에 해당되는지를 확인하는 제1단계와 운용 소프트웨어의 업그레이드가 진행되고 있는지 여부를 확인하는 제2단계와 해외 로밍 상태인지 여부를 확인하는 제3단계와 가입자 인식 모듈이 잠금 설정되었는지 여부를 확인하는 제4단계와 배터리 잔여 용량이 소정 기준치 이하인지 여부를 확인하는 제5단계와 통화중 여부를 확인하는 제6단계 중 적어도 하나를 포함할 수 있다.
이때, 상기 모바일 기기의 사용이 적은 시간대가 상기 자동 설치 시간대의 디폴트 값으로 설정되되, 소정의 메뉴 설정을 통해 상기 자동 설치 시간대가 변경 가능할 수 있다.
또한, 만약, 상기 제1 단계 내지 제6단계 중 어느 하나에 의해 상기 다운로드된 소프트웨어의 업그레이드가 불가능한 것으로 확인되면, 소정 시간 경과 후 상기 예외 처리 항목을 확인하는 단계가 다시 수행될 수 있다.
또한, 상기 판단 단계에서 상기 푸시 메시지가 상기 자동 업그레이드를 지시하는 메시지인 경우, 상기 푸시 메시지의 수신 알림이 상기 모바일 기기의 화면상에 표시되지 않고 백그라운드로 상기 다운로드된 소프트웨어가 설치될 수 있다.
또한, 상기 판단 단계에서 상기 푸시 메시지가 상기 자동 설치를 지시하는 메시지인 경우, 상기 푸시 메시지가 상기 모바일 기기의 메모리에 저장되지 않을 수 있다.
또한, 상기 푸시 메시지가 소정의 원시 키를 포함하되, 상기 원시 키를 통해 상기 푸시 메시지가 상기 자동 업그레이드를 지시하는 메시지인지 식별될 수 있다.
또한, 상기 푸시 메시지가 소정의 응용 소프트웨어 등록 식별자를 포함하되, 상기 응용 소프트웨어 등록 식별자를 통해 상기 푸시 메시지를 처리할 응용 소프트웨어가 상기 모바일 기기상에서 식별될 수 있다.
또한, 상기 모바일 기기에 대응하는 IMEI(International Mobile Equipment Identity)와 상기 응용 소프트웨어 등록 식별자가 매핑되어 상기 서버에 유지될 수 있다.
본 발명의 다른 일 실시예에 따른 FOTA(Firmware Over The Air) 서버에서 모바일 기기의 소프트웨어 업그레이드 방법은 상기 모바일 기기에 설치된 소프트웨어 버전 정보를 포함하는 소정의 제어 메시지를 상기 모바일 기기로부터 수신하는 제1단계와 상기 수신된 소프트웨어 버전 정보와 상기 FOTA 서버에 유지된 최신 소프트웨어 버전 정보가 동일한지 여부를 비교하는 제2단계와 상기 모바일 기기에 상기 최신 소프트웨어 버전이 다운로드되었는지 확인하는 제3단계와 상기 제2단계에서 동일하지 않고, 상기 제3단계에서 다운로드된 경우, 상기 다운로드된 소프트웨어의 자동 업그레이드를 지시하는 소정의 푸시 메시지를 상기 모바일 기기에 전송하는 제4단계를 포함할 수 있다.
여기서, 상기 FOTA 서버가 상기 최신 소프트웨어가 상기 모바일 기기에 다운로드된 시간 정보를 유지하되, 상기 다운로드된 시간으로부터 소정 시간이 경과한 이후에 상기 푸시 메시지를 전송할 수 있다.
여기서, 상기 소정 시간은 상기 FOTA 서버에 의해 제공되는 소정의 사용자 인터페이스 화면을 통해 변경 가능할 수 있다.
본 발명의 다른 일 실시예에 따른 서버와 연동하여 소프트웨어를 업그레이드 장치는 상기 서버에 의해 생성된 푸시 메시지(Push Message)를 수신하는 수단과 상기 푸시 메시지가 상기 장치에 다운로드된 소프트웨어의 자동 업그레이드를 지시하는 메시지인지 판단하는 수단과 상기 판단 결과, 상기 자동 업그레이드를 지시하는 메시지인 경우, 상기 다운로드된 소프트웨어를 상기 장치에 설치하는 수단을 포함할 수 있다.
본 발명의 다른 일 실시예에 따른 모바일 기기를 위한 소프트웨어를 업그레이드 하는 장치는 상기 모바일 기기에 설치된 소프트웨어 버전 정보를 포함하는 소정의 제어 메시지를 상기 모바일 기기로부터 수신하는 수단과 상기 수신된 소프트웨어 버전 정보와 상기 장치에 유지된 최신 소프트웨어 버전 정보가 동일한지 여부를 비교하는 수단과 상기 모바일 기기에 상기 최신 소프트웨어 버전이 다운로드되었는지 확인하는 수단과 상기 수신된 소프트웨어 버전 정보와 상기 장치에 유지된 최신 소프트웨어 버전 정보가 동일하지 않고, 상기 최신 소프트웨어 버전이 다운로드된 경우, 상기 다운로드된 소프트웨어의 자동 업그레이드를 지시하는 소정의 푸시 메시지를 상기 모바일 기기에 전송하는 수단을 포함할 수 있다.
상기 본 발명의 양태들은 본 발명의 바람직한 실시예들 중 일부에 불과하며, 본원 발명의 기술적 특징들이 반영된 다양한 실시예들이 당해 기술분야의 통상적인 지식을 가진 자에 의해 이하 상술할 본 발명의 상세한 설명을 기반으로 도출되고 이해될 수 있다.
본 발명에 따른 푸시 메시지를 이용한 소프트웨어 업그레이드 방법에 대한 효과에 대해 설명하면 다음과 같다.
첫째, 본 발명은 푸시 메시지를 통해 모바일 기기에 다운로드된 소프트웨어를 자동 업그레이드 함으로써 사용자의 불편을 최소화하는 장점이 있다.
둘째, 본 발명은 무선 자원 사용이 적은 시간대에 소프트웨어 자동 업그레이드를 위한 푸시 메시지를 전송함으로써, 사용자의 불편을 최소화시키는 장점이 있다.
셋째, 본 발명은 다운로드된 소프트웨어 설치 이전에 모바일 기기의 예외 처리 상황을 식별함으로써, 보다 안전하고 편리하게 소프트웨어를 설치할 수 있는 장점이 있다.
넷째, 본 발명은 다운로드된 소프트웨어가 해당 모바일 기기에 설치되지 않고 방치되는 것을 미연에 방지함으로써, 사용자로부터의 불만 및 민원을 최소화시키는 효과를 기대할 수 있다.
다섯째, 본 발명은 사용자에 투명하게 소프트웨어를 자동 업그레이드하는 기능을 제공함으로써, 사용자의 불편을 최소화시키는 장점이 있다.
본 발명에서 얻을 수 있는 효과 및 장점은 이상에서 언급한 효과 및 장점들로 제한되지 않으며, 언급하지 않은 또 다른 효과 및 장점들은 아래의 기재로부터 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.
이하에 첨부되는 도면들은 본 발명에 관한 이해를 돕기 위한 것으로, 상세한 설명과 함께 본 발명에 대한 실시예들을 제공한다. 다만, 본 발명의 기술적 특징이 특정 도면에 한정되는 것은 아니며, 각 도면에서 개시하는 특징들은 서로 조합되어 새로운 실시예로 구성될 수 있다.
도 1은 본 발명의 일 실시예에 따른 소프트웨어 업그레이드를 위한 시스템 구성도이다.
도 2는 본 발명의 일 실시예에 따른 모바일 단말기의 구성도이다.
도 3은 본 발명의 일 실시예에 따른 FOTA 서버의 내부 구성도이다.
도 4는 모바일 기기에서 FOTA 서비스를 등록하는 절차를 설명하기 위한 순서도이다.
도 5는 본 발명의 일 실시예에 따른 푸시 메시지의 데이터 구조이다.
도 6은 FOTA 서버를 통한 일반적인 소프트웨어 다운로드 절차를 설명하기 위한 모바일 기기에서의 사용자 인터페이스 화면이다.
도 7은 본 발명의 일 실시예에 따른 푸시 메시지를 이용한 소프트에어 자동 갱신 방법을 설명하기 위한 도면이다.
도 8은 본 발명의 일 실시예에 따른 모바일 기기에서의 소프트웨어 자동 업그레이드 절차를 설명하기 위한 순서도이다.
도 9는 본 발명의 일 실시예에 따른 푸시 메시지를 이용한 소프트웨어 다운로드 절차를 설명하기 위한 순서도이다.
도 10은 본 발명의 일 실시예에 따른 소프트웨어 자동 업그레이드 시간대 변경 방법을 설명하기 위한 순서도이다.
도 11은 본 발명의 일 실시예에 따른 FOTA 서버에 의한 소프트웨어 자동 다운로드 주기를 설명하기 위한 도면이다.
이하, 본 발명의 실시예들이 적용되는 장치 및 다양한 방법들에 대하여 도면을 참조하여 보다 상세하게 설명한다. 이하의 설명에서 사용되는 구성요소에 대한 접미사 "모듈" 및 "부"는 명세서 작성의 용이함만이 고려되어 부여되거나 혼용되는 것으로서, 그 자체로 서로 구별되는 의미 또는 역할을 갖는 것은 아니다.
본 명세서에서 설명되는 모바일 기기(mobile device)로 휴대폰(mobile phone), 스마트폰(smart phone), 노트북 컴퓨터(laptop computer), 디지털방송용 단말기, PDA(Personal Digital Assistants), PMP(Portable Multimedia Player), 네비게이션 등이 사용될 수 있다. 그러나, 본 명세서에 기재된 실시예에 따른 구성은 이동 가능한 단말기에만 적용 가능한 경우를 제외하면, 디지털 TV, 데스크탑 컴퓨터 등과 같은 고정 단말기에도 적용될 수 있음을 주의해야 한다.
본 명세서에서 설명되는 소프트웨어는 모바일 기기 동작에 기본적 또는 필수적으로 요구되는 펌웨어(Firmware) 뿐만 아니라 다양한 응용 소프트웨어를 포함할 수 있다. 여기서, 응용 소프트웨어는 게임, 금융, 채팅, 일정 관리 등을 포함하는 다양한 소프트웨어를 포함할 수 있다.
이하에서는, 설명의 편의를 위해 푸시 메시지를 통한 자동 업그레이드 대상이 되는 소프트웨어를 펌웨어를 일 예로 설명하고 있으나, 이에 국한되는 것은 아니며, 다양한 응용 소프트웨어에도 적용될 수 있음을 주의해야 한다.
이하에서는 설명의 편의를 위해, 소프트웨어에 대한 "자동 업그레이드"와 "자동 설치"를 혼용하여 사용하기로 한다.
도 1은 본 발명의 일 실시예에 따른 소프트웨어 업그레이드를 위한 시스템 구성도이다.
도 1을 참조하면, 본 발명에 따른 소프트웨어 업그레이드 시스템은 FOTA 서버(10), 푸시 서버(20) 및 모바일 기기(30)를 포함하여 구성될 수 있다. 도 1에는 도시되어 있지 않으나, 푸시 서버(20)는 무선 통신망-예를 들면, GSM 망, CDMA 망, WCDMA 망, HSPA 망, LTE 망, Wi-Fi 망 등을 포함함-을 통해 모바일 기기(30)에 푸시 메시지를 전송할 수 있다.
FOTA 서버(10)는 모바일 기기(30)로 펌 웨어를 다운로드해주거나, 모바일 기기(30)에 이미 다운로드된 펌 웨어가 사용자에 의해 설치되지 않은 경우, 상기 다운로드된 펌 웨어를 자동 업그레이드하도록 지시하는 소정의 푸시 메시지를 모바일 기기(30)에 전송하는 기능을 수행할 수 있다.
푸시 서버(20)는 FOTA 서버(10)로부터 수신된 푸시 메시지를 무선 통신망을 통해 해당 모바일 기기(30)로 전달하는 기능을 수행한다. 또한, 푸시 서버(20)는 소정의 푸시 응용 소프트웨어 등록 절차를 통해 모바일 기기(30)에 탑재된 특정 푸시 응용 소프트웨어에 대응하는 소정의 응용 소프트웨어 등록 식별자(Application Registration Identifier)를 생성하여 해당 모바일 기기(30)에 전송할 수 있다. 이때, 모바일 기기(30)는 수신된 응용 소프트웨어 등록 식별자를 내부 메모리에 저장한 후 FOTA 서버(10)에 상기 수신된 응용 소프트웨어 등록 식별자를 전달한다. 이후, FOTA 서버(10)는 모바일 기기(30)에 대응하는 IMEI(International Mobile Equipment Identity)와 수신된 응용 소프트웨어 등록 식별자가 일대일 대응되도록 내부 구비된 데이터베이스에 저장할 수 있다. 여기서, IMEI(International Mobile Station Equipment Identity)는 위성 통신뿐만 아니라 3GPP 통신망-예를 들면, GSM 망, UMTS 망 및 LTE 망 등을 포함함- 등의 무선 통신망에서 사용되는 모바일 기기를 고유하게 식별할 수 있는 국제 모바일 기기 식별 코드이다. IMEI 번호는 형식 승인 코드, 최종 조합 코드 및 일련 번호를 포함하여 15자리로 구성된다. IMEI 번호는 모바일 기기 내부 메모리의 일측에 저장되며, 서비스 가입 시 서비스 사업자의 소정 데이터베이스에 등록되어 유지될 수 있다.
이후, FOTA 서버(10)는 응용 소프트웨어 등록 식별자를 이용하여 푸시 메시지를 모바일 기기(30)에 탑재된 해당 푸시 응용 소프트웨어에 전달할 수 있다.
예를 들면, 본 발명이 Google 안드로이드 시스템에 적용되는 경우, 상기 응용 소프트웨어 등록 식별자는 GCM(Google Cloud Messaging)에 의해 발급되는 등록 식별자(Registration ID)일 수 있다. 여기서, 등록 식별자는 특정 메시지를 수신할 수 있도록 허용된 안드로이드 앱을 식별하기 위한 정보로서 사용된다. 즉, 등록 식별자는 특정 디바이스에서 실행중인 특정 안드로이드 앱을 식별하기 위한 정보일 수 있다.
모바일 기기(30)는 푸시 서버(20)로부터 수신된 푸시 메시지를 분석하여 기 다운로드된 펌 웨어를 사용자에 인식되지 않도록 투명하게 설치할 수 있다. 이때, 모바일 기기(30)는 미리 정의된 예외 조건 항목들을 체크하여 기 다운로드된 펌 웨어의 자동 업그레이드가 가능한지 여부를 판단할 수 있다. 상기 예외 조건 항목에 대한 자세한 설명은 후술할 도면들의 설명을 통해 보다 명확해질 것이다.
모바일 기기(30)는 푸시 메시지를 수신하면, 수신된 푸시 메시지를 해당 응용 소프트웨어에 전달한다. 만약, 푸시 메시지가 기 다운로드된 펌 웨어의 자동 업그레이드를 지시하는 메시지인 경우, 모바일 기기(30)는 자동 설치 응용 소프트웨어(40)에 수신된 푸시 메시지를 전달할 수 있다. 이때, 모바일 기기(30)에 탑재된 응용 소프트웨어들은 항상 활성화된 상태가 아닐 수 있다.
이를 위해, 모바일 기기(30)는 푸시 메시지가 수신되었음을 탑재된 응용 소프트웨어에 방송하는 푸시 메시지 방송 모듈이 구비될 수 있다. 즉, 응용 소프트웨어가 비활성화된 상태에서, 푸시 메시지 방송 모듈은 푸시 메시지가 수신되면, 해당 푸시 메시지를 수신하는 것이 가능한 모든 응용 소프트웨어-이하, “푸시 응용 소프트웨어”라 명함-에 푸시 메시지의 수신을 방송할 수 있다. 이후, 푸시 응용 소프트웨어는 방송된 푸시 메시지가 자신을 위한 메시지인지 여부를 판단한다. 판단 결과, 자신을 위한 푸시 메시지인 경우, 해당 푸시 응용 소프트웨어는 해당 푸시 메시지를 수신하여 처리할 수 있다. 이를 위해, 푸시 메시지는 모바일 기기(30)에 탑재된 푸시 응용 소프트웨어를 식별할 수 있는 소정의 식별 정보-예를 들면, 상기한 응용 소프트웨어 등록 식별자일 수 있음-를 포함할 수 있다.
본 발명에 따른 모바일 기기(30)는 현재 모바일 기기(30)에 설치되어 있는 펌 웨어 버전 정보-이하, “설치 펌 웨어 버전 정보”이라 명함-를 무선 통신망을 통해 일정 주기-예를 들면, 하루에 한번-로 FOTA 서버(10)에 제공할 수 있다.
FOTA 서버(10)는 해당 모바일 기기(30)를 위한 가장 최근에 갱신된 펌 웨어 버전 정보-이하, “최신 펌 웨어 버전 정보”라 명함-를 내부 데이터베이스에 유지하며, 최신 펌 웨어 버전 정보와 설치 펌 웨어 버전 정보를 비교하여 기 다운로드된 최신 펌 웨어가 모바일 기기(100)에 설치되었는지 여부를 확인할 수 있다. 만약, 상기 두 버전이 일치하지 않는 경우, FOTA 서버(10)는 기 다운로드된 최신 펌 웨어가 자동 설치되도록 제어하는 소정의 푸시 메시지-이하, “자동 설치 푸시 메시지”이라 명함-를 모바일 기기(30)에 전송할 수 있다.
모바일 기기(30)는 자동 설치 푸시 메시지를 수신하면, 기 다운로드된 최신 펌 웨어를 구비된 메모리로부터 독출하여 설치할 수 있다. 이후, 모바일 기기(30)는 재부팅 과정을 통해 설치된 펌 웨어를 사용할 수 있다.
이때, 자동 설치 푸시 메시지는 자동 설치 대상인 펌 웨어의 버전 정보-이하, “자동 설치 펌 웨어 버전 정보”라 명함-를 더 포함할 수 있다. 모바일 기기(30)는 자동 설치 펌 웨어 버전 정보를 이용하여 어떤 펌 웨어를 설치해야 하는지를 식별할 수 있다.
도 2는 본 발명의 일 실시예에 따른 모바일 단말기의 구성도이다.
도 2에 도시된 구성 요소들은 본 발명의 실시를 위해 필요한 구성 요소를 도시한 것일뿐 실제 상용화된 모바일 기기의 일반적인 구성 요소가 모두 도시된 것이 아님을 주의해야 한다. 또한, 도 2에 도시된 구성요소들이 필수적인 것은 아니어서, 그보다 많은 구성요소들을 갖거나 그보다 적은 구성 요소들을 갖는 모바일 기기가 구현될 수도 있다.
본 발명의 일 실시예에 따른 모바일 기기(30)는 제어부(200), 출력부(201), 메모리(203), 무선통신부(205), 타이머(207), 예외 처리부(209), 푸시 메시지 분석부(211), 소프트웨어 설치 모듈(213), 소스트웨어 다운로드 모듈(215), 전원 공급부(220), 가입자 식별 모듈(Subscriber Identification Module, 230) 중 적어도 하나를 포함하여 구성될 수 있다.
이하, 상기 구성 요소들에 대해 상세히 살펴보기로 한다.
제어부(200)는 후술할 모바일 기기(30)의 하부 구성 요소의 동작 제어 기능 및 장치 내부 및 외부에서 송수신되는 메시지의 흐름을 제어하는 기능을 수행할 수 있다.
출력부(201)는 시각, 청각 또는 촉각 등과 관련된 출력을 발생시키기 위한 것으로서, 디스플레이 수단, 음향 출력 수단, 알람 수단 및 햅틱 모듈 등이 포함될 수 있다.
메모리부(203)는 제어부(200)의 동작을 위한 프로그램을 저장할 수 있고, 입/출력되는 데이터들(예를 들어, 폰북, 메시지, 정지영상, 동영상, 응용 소프트웨어, 펌 웨어, 응용 소프트웨어 등록 식별자 등)을 임시 저장할 수도 있다. 여기서, 응용 소프트웨어는 지도, 게임, 채팅, 웹 서핑 일정관리, 금융, 사전 등의 일반적인 상용 앱들뿐만 아니라 본 발명에 따른 자동 설치 응용 소프트웨어도 포함할 수 있다. 일반적으로, 스마트 폰 등에서 사용되는 응용 소프트웨어를 “앱”이라 명한다. 이하에서는, 설명의 편의를 위해 응용 소프트웨어와 “앱”을 혼용해서 사용하기로 한다.
또한, 메모리부(203)는 터치스크린 상의 터치 입력시 출력되는 다양한 패턴의 진동 및 음향에 관한 데이터를 저장할 수도 있다.
메모리부(203)는 플래시 메모리 타입(flash memory type), 하드디스크 타입(hard disk type), 멀티미디어 카드 마이크로 타입(multimedia card micro type), 카드 타입의 메모리(예를 들어 SD 또는 XD 메모리 등), 램(Random Access Memory, RAM), SRAM(Static Random Access Memory), 롬(Read-Only Memory, ROM), EEPROM(Electrically Erasable Programmable Read-Only Memory), PROM(Programmable Read-Only Memory) 자기 메모리, 자기 디스크, 광디스크 중 적어도 하나의 타입의 저장 매체를 포함할 수 있다.
무선 통신부(205)는 모바일 기기(30)와 무선 통신 시스템 사이 또는 모바일 기기(30)와 모바일 기기(30)가 위치한 네트워크 사이의 무선 통신을 가능하게 하는 하나 이상의 모듈을 포함할 수 있다. 예를 들어, 무선 통신부(205)는 방송 수신 모듈, 이동통신 모듈, 무선 인터넷 모듈, 근거리 통신 모듈 및 GPS(Global Positioning System) 수신 모듈 중 적어도 하나를 포함할 수 있다.
상기 방송 수신 모듈은 방송 채널을 통하여 외부의 방송 관리 서버로부터 방송 신호 및/또는 방송 관련된 정보를 수신한다. 여기서, 방송 채널은 위성 채널, 지상파 채널을 포함할 수 있다. 상기 방송 관리 서버는, 방송 신호 및/또는 방송 관련 정보를 생성하여 송신하는 서버 또는 기 생성된 방송 신호 및/또는 방송 관련 정보를 제공받아 모바일 기기(30)에 송신하는 서버를 의미할 수 있다. 방송 신호는 TV 방송 신호, 라디오 방송 신호, 데이터 방송 신호 등을 포함할 뿐만 아니라, TV 방송 신호 또는 라디오 방송 신호에 데이터 방송 신호가 결합한 형태의 방송 신호도 포함할 수 있다.
이동 통신 모듈은 이동 통신망의 무선 인터페이스를 통해 기지국, 중계기, 리피터, 펨토셀 등과 무선 신호를 송/수신하는 기능을 수행한다. 여기서, 무선 신호는 음성 및 화상 통화 신호 또는 문자/멀티미디어 메시지 송수신에 따른 다양한 형태의 데이터 신호를 포함할 수 있다.
무선 인터넷 모듈은 무선 인터넷 접속을 위한 송/수신 모듈을 의미하며, 무선 인터넷 모듈은 모바일 기기(30)에 내장되거나 소정의 인터페이스 단자를 통해 외장될 수 있다. 무선 인터넷 기술로는 WLAN(Wireless LAN)(Wi-Fi), Wibro(Wirelessbroadband), Wimax(World Interoperability for Microwave Access) 등이 이용될 수 있다.
근거리 통신 모듈은 근거리 통신을 위한 모듈을 말한다. 근거리 통신 기술로 블루투스(Bluetooth),RFID(Radio Frequency Identification), 적외선 통신(IrDA, infrared Data Association), UWB(UltraWideband), ZigBee 등이 이용될 수 있다.
GPS 수신 모듈은 측위 위성을 통해 수신된 신호를 이용하여 모바일 기기의 위치 정보를 확인하거나, 획득하기 위한 모듈이다.
타이머(207)는 제어부(200)의 제어 신호에 따라 현재 시간 정보 및 타이머 구동에 따른 만료 이벤트 등을 제공할 수 있다. 예를 들면, 본 발명의 일 실시예에 따른 타이머(207)는 기 다운로드된 펌 웨어에 대한 자동 설치 시간대가 도래하였음을 알리는 소정의 이벤트 신호를 제어부(200)에 전달할 수 있다. 예를 들면, 자동 설치 시간대가 새벽 3시부터 새벽 5시까지로 설정된 경우, 타이머(207)는 새벽 3시가 되면, 자동 설치 시간대가 시작되었음을 알리는 소정의 제1이벤트를 생성하여 제어부(200)에 전달할 수 있다. 또한, 타이머(207)는 새벽 5시가 되면, 자동 설치 시간대가 만료되었음을 지시하는 소정의 제2이벤트를 생성하여 제어부(200)에 전달할 수 있다. 이때, 제어부(200)는 타이머(200)로부터 수신된 이벤트 정보를 예외 처리부(209)에 전달할 수 있다. 이후, 이벤트 처리부(209)는 수신된 이벤트 정보를 이용하여 펌 웨어 자동 설치 가능 여부를 판단할 수 있다.
예외 처리부(209)는 자동 설치 요청된 펌 웨어가 현재 상황에서 설치 가능한지 여부를 판단하는 기능을 수행한다. 일 예로, 예외 처리부(209)에 의해 체크되는 예외 처리 항목은 자동 설치가 가능한 시간대인지 여부를 확인하는 항목, 자동 설치 설정 조건을 만족하는지를 확인하는 항목, 해외 로밍 상태인지 여부를 확인하는 항목, 잔여 배터리 용량이 기준치 이상인지 여부를 확인하는 항목, 가입자 식별 모듈(230)이 잠금 상태인지 여부를 확인하는 항목, 통화중인지 여부를 확인하는 항목, 운영 체제가 다시 설치되고 있는지 여부를 확인하는 항목 중 적어도 하나가 포함될 수 있다.
상기한 예외 처리 항목 중 어느 하나의 항목이라도 자동 설치 조건에 부합되지 않는 경우, 예외 처리부(209)는 펌 웨어 자동 업그레이드가 불가함을 알리는 소정의 제어 신호를 제어부(200)에 전달할 수 있다. 이때, 해당 펌웨어에 대한 자동 업그레이드는 소정 시간 동안 연기될 수도 있다.
여기서, 자동 설치 설정 조건의 예로는 모바일 기기(30)의 재부팅을 포함할 수 있다. 일 예로, 모바일 기기(30)가 재부팅되는 경우, 미리 다운로드된 펌 웨어에 대한 자동 설치가 수행될 수 있다.
푸시 메시지 분석부(211)는 외부로부터 수신된 푸시 메시지의 내부 필드를 분석하고, 해당 푸시 메시지가 어떤 푸시 응용 소프트웨어를 위한 메시지인지 식별하고, 해당 푸시 응용 소프트웨어에 해당 푸시 메시지를 전달하는 기능을 수행한다.
소프트웨어 설치 모듈(213)은 제어부(200)의 제어 신호에 따라 해당 소프트웨어를 메모리부(203)로부터 독출하여 설치하는 기능을 수행한다.
소프트웨어 설치 모듈(213)은 해당 소프트웨어의 설치가 완료되면, 소정의 설치 완료 제어 신호를 제어부(200)에 전달한다. 만약, 설치된 소프트웨어가 펌 웨어인 경우, 제어부(200)는 재부팅 절차를 개시할 수 있다.
소프트웨어 다운로드 모듈(215)은 제어부(200)의 제어 신호에 따라, 해당 서버에 접속하여 소프트웨어를 다운로드하고 다운로드된 소프트웨어를 메모리부(203)의 일측에 저장하는 기능을 수행한다.
전원 공급부(220)는 모바일 기기(30)의 동작에 필요한 전원을 공급하는 기능을 제공한다. 또한, 전원 공급부(220)는 제어부(200)의 요청에 따라 잔여 배터리 용량을 측정하여 예외 처리부(209)에 제공할 수 있다. 예외 처리부(209)는 잔여 배터리 용량이 기준치 이하인 경우, 펌 웨어 자동 설치가 불가함을 알리는 소정의 제어 신호를 제어부(200)에 전달할 수 있다. 만약, 잔여 배터리 용량이 기준치 이상으로 변경된 경우, 제어부(200)는 잔여 배터리 용량이 변경되었음을 알리는 소정의 제어 신호를 예외 처리부(209)에 전송할 수도 있다.
가입자 식별 모듈(230)은 가입자를 식별하기 위한 고유 정보가 기록되는 모듈로서, 예를 들면, IMSI(International Mobile Subscriber Identity), IMEI 등이 기록될 수 있다. 본 발명에 따른 예외 처리부(209)는 가입자 식별 모듈이 잠금 설정되었는지 여부를 확인하여 펌 웨어 자동 설치가 가능한지 판단할 수 있다.
특히, 본 발명의 일 실시예에 따른 제어부(200)는 수신된 푸시 메시지가 기 다운로드된 펌 웨어를 자동 업그레이드하도록 지시하는 메시지인 경우, 해당 푸시 메시지를 디스플레이 화면상에 표시되지 않도록 제어할 수 있다. 일 예로, 제어부(200)는 다운로드된 펌 웨어에 대한 자동 업그레이드를 지시하는 푸시 메시지가 수신되면, 이를 알림바 또는(및) 해당 응용 소프트웨어에 대응하는 타일에 푸시 메시지 수신 알림이 표시되지 않도록 제어할 수 있다. 즉, 제어부(200)는 사용자에 투명하게 펌 웨어 업그레이드가 백그라운드로 실행될 수 있도록 제어할 수 있다. 또한, 제어부(200)는 메시지 수신함에 해당 푸시 메시지가 표시(저장)되지 않도록 제어할 수도 있다.
도 3은 본 발명의 일 실시예에 따른 FOTA 서버의 내부 구성도이다.
도 3을 참조하면, FOTA 서버(10)는 제어부(300), 통신부(301), 자동 설치 판단부(303), 타이머(305), 디바이스 정보 데이터베이스(307), 소프트웨어 패키지 데이터베이스(309), 자동 설치 시간대 분석부(311), 운용자 콘솔(313) 중 적어도 하나를 포함하여 구성될 수 있다.
제어부(300)는 FOTA 서버(10)의 하부 구성 요소에 대한 전체적인 제어 기능을 수행하고, 외부 장치와 송수신되는 메시지의 처리 기능을 제공한다. 또한, 제어부(300)는 운용자 콘솔(313)에 소정의 사용자 인터페이스 화면을 제공할 수 있으며, 운용자는 사용자 인터페이스 화면을 통해 각종 설정 정보를 조회하거나 갱신할 수 있다. 예를 들면, 운용자는 다운로드된 펌 웨어의 자동 설치 시간대를 소정 사용자 인터페이스 화면을 통해 변경할 수 있다.
통신부(301)는 외부 장치와의 통신 수단을 제공하며, 특히, 제어부(300)에 의해 전달된 푸시 메시지를 푸시 서버(20)에 전송하거나, 모바일 기기(30)로부터 응용 소프트웨어 등록 식별자를 수신하기 위한 통신 수단을 제공할 수 있다.
자동 설치 판단부(303)는 디비아스 정보 데이터베이스(307)에 저장된 정보를 참조하여, 소프트웨어 자동 설치가 요구되는 모바일 기기를 식별하고, 이를 제어부(300)에 통보할 수 있다.
상세하게, 자동 설치 판단부(303)는 IMEI 별 현재 설치된 소프트웨어 버전(424)과 다운로드된 소프트웨어 버전(326)이 서로 동일한지 여부를 비교하여 해당 IMEI에 대응되는 디바이스에 소프트웨어 자동 설치를 위한 푸시 메시지를 전송하도록 소정의 제어 신호를 제어부(300)에 전송할 수 있다.
이때, 제어부(300)는 해당 IMEI에 대응하는 다운로드 일시(328)를 참조하여 자동 설치 푸시 메시지를 전송할 시점을 산출하고, 산출된 전송 시점에 기반하여 타이머(305)를 구동시킬 수 있다.
예를 들어, 자동 설치 푸시 메시지를 전송하는 시점은 모바일 기기(30)에 펌 웨어가 다운로드된 후 7일 이내에 발송되어야 하는 것으로 설정될 수 있다. 만약, 현재 일시가 2013년 10월 2일 오전 10시이고, 다운로드 일시(328)가 2013년 10월 1일 오전 10시인 경우, FOTA 서버(10)는 2013년 10월 8일 오전 10시 이전에 자동 설치 푸시 메시지를 전송해야 한다. 이를 위해, 제어부(300)는 2013년 10월 8일 오전 10시 이전을 만기로 타이머(305)를 설정할 수 있다. 만약, 타이머(305)가 만료되면 제어부(300)는 해당 자동 설치 푸시 메시지를 해당 모바일 기기(30)에 전송한다.
디바이스 정보 데이터베이스(307)는 IMEI(320) 필드, 응용 소프트웨어 등록 식별자(322) 필드, 현재 설치된 소프트웨어 버전(324) 필드, 다운로드된 소프트웨어 버전(326) 필드, 다운로드 일시(328) 필드 중 적어도 하나를 포함하여 구성될 수 있다.
소프트웨어 패키지 데이터베이스(309)는 디바이스 및 버전 별 소프트웨어 패키지가 저장된다. 도 3에는 소프트웨어 패키지 데이터베이스(309)가 FOTA 서버(10)에 구비되는 것으로 도시되어 있으나, 본 발명의 다른 일 실시예에 따른 소프트웨어 패키지 데이터베이스는 별도의 소프트웨어 패키지 제공 서버에 구비될 수도 있다. 이 경우, 모바일 기기(30)는 소프트웨어 패키지 제공 서버에 접속하여 소프트웨어 다운로드를 수행할 수 있다.
자동 설치 시간대 분석부(311)는 무선 통신망의 현재 트래픽 상태 또는 기 수집된 시간대별 트래픽 통계 정보 등에 기반하여 최적의 자동 설치 시간대를 분석하는 기능을 수행할 수 있다. 예를 들면, 최적의 자동 설정 시간대는 트래픽 사용량이 가장 적은 새벽 시간대로 결정될 수 있다. 본 발명의 자동 설치 시간대 분석부(311)는 특정 모바일 기기(30)에 대한 시간대 별 사용 통계 정보를 수집하고 이를 이용하여 해당 모바일 기기(30)에 최적화된 자동 설치 시간대를 산출할 수도 있다.
도 4는 모바일 기기에서 FOTA 서비스를 등록하는 절차를 설명하기 위한 순서도이다.
도 4를 참조하면, 모바일 기기(30)는 송신자 식별자(Sender ID), 응용 소프트웨어 식별자(Application ID)를 포함하는 푸시 서비스 등록 요청 메시지를 푸시 서버(20)에 전송한다(S401).
여기서, 송신자 식별자는 API(Application Program Interface) 콘솔로부터 획득되는 프로젝트 식별자로서, 모바일 기기로의 푸시 메시지 전송이 허용된 응용 소프트웨어를 식별하기 위해 등록 처리 절차에서 사용되는 정보이다.
응용 소프트웨어 식별자는 푸시 메시지를 수신하기 위해 푸시 서버(20)에 등록할 응용 소프트웨어 식별 정보이다. 일 예로, 구글 안드로이드의 경우, 안드로이드 앱은 구글에서 제공하는 안드로이드 운영 체제에서 제공하는 어셈블리 전체에 관한 요약 정보를 담고 있는 manifest에 정의된 패키지 이름으로 식별될 수 있다. 이를 통해, 특정 메시지가 원하는 안드로이드 앱에 정확히 전달될 수 있다.
푸시 서버(20)는 수신된 송신자 식별자 및 응용 소프트웨어 식별자에 대응하는 응용 소프트웨어 등록 식별자를 생성한다(S403).
연이어, 푸시 서버(20)는 응용 소프트웨어 등록 식별자를 포함하는 소정의 푸시 서비스 등록 응답 메시지를 모바일 기기(30)에 전송한다(S405).
모바일 기기(30)는 수신된 응용 소프트웨어 등록 식별자를 내부 메모리에 저장한 후(S407), 수신된 응용 소프트웨어 등록 식별자를 포함하는 소정의 FOTA 서비스 등록 요청 메시지를 FOTA 서버(10)에 전송한다(S409).
FOTA 서버(10)는 수신된 응용 소프트웨어 등록 식별자를 IMEI에 매핑하여 저장한다(S411).
이 후, FOTA 서버(10)는 응용 소프트웨어 등록 식별자를 이용하여 모바일 기기에 탑재된 특정 응용 소프트웨어로 푸시 메시지를 전송할 수 있다.
도 5는 본 발명의 일 실시예에 따른 푸시 메시지의 데이터 구조이다.
도 5를 참조하면, 본 발명에 일 실시예에 따른 푸시 메시지는 크게 고정 길이(fixed length)를 갖는 헤더(header)와 가변 길이(variable length)를 갖는 페이로드(Payload)로 구성될 수 있다.
여기서, 헤더는 응용 소프트웨어 등록 식별자(322) 필드, 서버 등록 식별자(503) 필드, 알림 타입(505) 필드, 프레임 길이(507) 필드를 포함하여 구성될 수 있다.
응용 소프트웨어 등록 식별자(322)는 푸시 메시지가 모바일 기기(30)에 탑재된 어느 응용 소프트웨어에 전달되어야 하는지를 식별하기 위한 정보이다.
서버 등록 식별자(503)는 푸시 메시지가 어느 서버로부터 전송되었는지를 식별하기 위한 정보이다.
알림 타입(505)은 해당 푸시 메시지 수신 시 모바일 기기(30)에서 어떠한 유형으로 해당 푸시 메시지에 대한 알림을 처리해야 하는지를 지시하는 식별 정보이다. 예를 들면, 알림 유형은 원시 알림, 타일 알림, 배지 알림 등이 있을 수 있다. 여기서, 원시 알림은 앱 개발자에 의해 자체적으로 정의될 수 있으며, 별도의 사용자 인터페이스 정보를 포함하지 않는다. 타일 알림은 타일 앞 또는 뒤에 있는 그래픽이나 제목 텍스트 및 앱의 상태를 업데이트하는데 이용될 수 있다. 예를 들면, 타일 알림은 수신된 이메일 메시지의 개수, 게임에서 자기 차례인지 여부 또는 현재 날씨 등을 표시하는데 사용될 수 있다.
본 발명의 일 실시예에 따른 자동 설치 푸시 메시지는 알림 타입(505)이 원시 알림으로 설정되는 것이 바람직하다.
프레임 길이(507)는 푸시 메시지의 전체 크기를 지시하는 정보이다. 즉, 프레임 길이(507)은 헤더와 페이로드의 크기를 합한 값일 수 있다.
페이로드는 원시 키(509) 필드, 원시 키 밸류 길이(511) 필드, 밸류(Value, 513) 필드를 포함하여 구성될 수 있다.
페이로드는 적어도 하나의 원시 키(509)/밸류(513) 쌍으로 구성될 수 있으며, 원시 키(509)는 해당 밸류(513)가 무엇을 의미하는지를 식별하기 위한 식별 정보일 수 있다. 일 예로, 도 5를 참조하면, 원시 키 값이 1이면 소프트웨어 갱신 요구, 원시 키 값이 2이면 다운로드된 소프트웨어의 자동 설치 요구, 원시 키 값이 3이면 자동 설치 시간대 변경 요구를 각각 의미할 수 있다.
따라서, 각각의 원시 키(509) 값에 대응되는 밸류(513)는 그 내용이 상이할 수 있다. 예를 들면, 상기 예에서, 원시 키 값이 1인 경우에 대응되는 밸류(513) 필드에는 소프트웨어 다운로드를 위한 서버 URL 정보가 포함될 수 있다. 반면, 원시 키 값이 2인 경우에 대응되는 밸류(513) 필드에는 자동 설치할 소프트웨어의 버전 정보가 포함될 수 있다. 또한, 원시 키 값이 3인 경우에는 자동 설치가 가능한 시간대 정보가 포함될 수 있다.
일 예로, 상기 자동 설치 시간대는 소정의 자동 설치 시간대 테이블(520)로 구성될 수 있으며, FOTA 서버(10) 및 모바일 기기(30)는 상기 자동 설치 시간대 테이블(520)을 내부 메모리에 유지하고 이를 참조하여, 밸류(513) 값에 대응되는 시간대를 식별할 수 있다. 도면 번호 520을 참조하면, 일 예로 Value 값이 1인 경우, 모바일 기기(30)에서의 자동 설치 가능한 시간대는 오전 01:00부터 오전 03:00까지로 설정될 수 있다.
도 6은 FOTA 서버를 통한 일반적인 소프트웨어 다운로드 절차를 설명하기 위한 모바일 기기에서의 사용자 인터페이스 화면이다.
도 6을 참조하면, FOTA 서버는 새롭게 갱신되어야 할 소프트웨어가 존재하면, 해당 모바일 기기에 신규 소프트웨어를 자동 다운로드한다. 모바일 기기는 알림 바(601) 또는 타일 및 배지 알림(603)을 통해 새롭게 다운로드된 소프트웨어 파일이 존재함을 알린다. 이때, 모바일 기기 사용자가 알림 바 또는 해당 타일을 선택하면, 다운로드된 소프트웨어에 대한 간단한 설명(605)이 화면상에 표시된다. 사용자가 간단한 설명(605)를 선택하면, 다운로드된 소프트웨어에 대한 상세한 설명이 포함된 소프트웨어 업데이트 상세 화면(607)이 표시된다. 여기서, 소프트웨어 업데이트 상세 화면(607)의 일측에는 다운로드된 소프트웨어의 예약 설치를 위한 예약 설치 버튼(609) 및 바로 설치를 위한 지금 설치 버튼(611)이 포함될 수 있다.
하지만, 일부 모바일 기기 사용자의 경우, 신규 소프트웨어가 다운로드되었음이 모바일 기기 화면상에 명시적으로 표시되었음에도 불구하고 해당 소프트웨어를 예약 설치하거나 바로 설치하지 않고 이를 무시하는 경향이 있다. 또한, 모바일 기시 사용자는 다운로드된 소프트웨어의 상세 내역을 살피지 않고 소프트웨어 업데이트를 위한 알림 메시지를 지우기 버튼(604)을 이용하여 바로 삭제하는 경향이 있다.
도 7은 본 발명의 일 실시예에 따른 푸시 메시지를 이용한 소프트에어 자동 갱신 방법을 설명하기 위한 도면이다.
도 7에 도시된 바와 같이, FOTA 서버(10)는 펌 웨어 다운로드가 모바일 기기에서 수행된 후 소정 기간-예를 들면, 1주일-동안 해당 펌 웨어의 설치가 이루어지지 않은 경우, 해당 펌 웨어의 자동 설치를 지시하는 소정의 푸시 메시지를 푸시 서버(20)에 전송한다. 푸시 서버(20)는 수신된 푸시 메시지를 해당 모바일 기기(30)에 전달한다. 모바일 기기(30)는 펌 웨어 자동 설치를 지시하는 푸시 메시지를 수신하면, 미리 정의된 예외 처리 항목들을 체크하여 자동 설치 가능한지를 판단한다. 판단 결과, 자동 설치가 가능하면, 해당 펌 웨어에 대한 자동 설치를 진행한다. 이때, 모바일 기기(30)는 수신된 푸시 메시지에 대한 알림을 화면상에 어떠한 방식으로도 표시하지 않으며, 수신된 푸시 메시지를 메시지함에도 저장하지 않는다.
본 발명의 일 실시예에 따른 예외 처리 항목은 도 7에 도시된 바와 같이 자동 설치 설정 조건 체크, 운영 체제 업그레이드 진행 여부 체크, 해외 로밍 상태 여부 체크, 가입자 식별 모듈의 핀 잠금 설정 여부 체크, 배터리의 잔량이 기준치 이하인지 여부 체크, 통화 상태인 지 여부 체크 등을 포함할 수 있다.
이때, 상기 예외 처리 항목 중 어느 하나라도 자동 설치 조건에 부합되지 않는 경우, 모바일 기기(30)는 자동 설치를 소정 시간 동안 연기할 수 있다.
일반적으로, 모바일 기기(30)는 주기적인 위치 등록 및 갱신 절차를 통해 자신이 어떠한 무선 네트워크 망에 접속하고 있는지 확인할 수 있다. 즉, 모바일 기기(30)는 자신이 해외 로밍 상태인지 여부를 무선 네트워크 망 식별 정보를 통해 확인할 수 있다.
또한, 모바일 기기(30)는 부팅할 때마다 가입자 식별 모듈로부터 고객 정보를 읽어와 확인할 수 있을 뿐만 아니라 소정의 메뉴 설정을 통해 가입자 인증 모듈에 대한 잠금 핀을 설정할 수 있으므로, 가입자 식별 모듈의 핀 잠금 설정 여부는 쉽게 확인될 수 있다.
도 8은 본 발명의 일 실시예에 따른 모바일 기기에서의 소프트웨어 자동 설치 절차를 설명하기 위한 순서도이다. 좀 더 상세하게, 도 8은 모바일 기기(30)에 소프트웨어 다운로드가 수행된 후 사용자에 의해 다운로드된 소프트웨어가 설치되지 않은 상태에서 자동 설치를 위한 푸시 메시지가 수신된 경우, 이를 처리하는 절차를 설명하기 위한 순서도이다.
도 8을 참조하면, 모바일 기기(30)는 푸시 서버(20)로부터 푸시 메시지를 수신한다(S801). 이때, 모바일 기기(30)는 푸시 메시지에 포함된 응용 소프트웨어 등록 식별자(322)를 이용하여 해당 푸시 메시지를 수신할 응용 소프트웨어를 식별할 수 있다. 이하에서는 푸시 메시지 수신에 따른 소프트웨어 자동 설치 단계가 모바일 기기(30)에 의해 수행되는 것으로 설명되고 있으나 이는 설명의 편의를 위함일 뿐 실제적인 실행 주체는 해당 푸시 메시지를 처리할 수 있는 미리 설치된 응용 소프트웨어-이하, "소프트웨어 자동 설치 응용 소프트웨어"라 명함-일 수 있음을 주의해야 한다.
모바일 기기(30)는 푸시 메시지의 페이로드에서 원시 키(509)를 추출하고(S803), 추출된 원시 키(509) 값이 기 다운로드된 소프트웨어의 자동 설치 요구를 지시하는 값인지 확인한다(S805).
확인 결과, 소프트웨어 자동 설치 요구인 경우, 현재 시간이 자동 설치 가능 시간대인지 확인한다(S807). 여기서, 자동 설치 가능 시간대는 소정의 제어 메시지- 예를 들면, 푸시 메시지일 수 있음-를 통해 FOTA 서버(10)가 모바일 기기(30)에 제공할 수 있다. 본 발명의 다른 일 실시예에 따른 자동 설치 가능 시간대는 고정된 값으로 모바일 기기(30)에 구비된 메모리부(203)의 일측에 미리 저장될 수도 있다.
확인 결과, 자동 설치 시간대에 해당되는 경우, 모바일 기기(30)는 미리 정의된 예외 처리 항목을 확인한다(S809).
확인 결과, 예외 처리 상황인 아닌 경우-즉, 소프트웨어 자동 설치가 가능한 경우-, 모바일 기기(30)는 푸시 메시지로부터 소프트웨어 버전 정보를 추출한다(S813). 여기서, 소프트웨어 버전 정보는 상기 추출된 원시 키(509)에 상응하는 밸류(513) 필드로부터 추출될 수 있다.
이후, 모바일 기기(30)는 상기 추출된 소프트웨어 버전 정보에 대응하는 기 다운로드된 소프트웨어 파일을 메모리부(203)로부터 독출한다(S815).
모바일 기기(30)는 독출된 소프트웨어 파일을 설치한 후 시스템 자동 재부팅 절차를 수행한다(S817). 이때, 설치된 소프트웨어 파일은 메모리부(203)에서 삭제될 수 있다.
만약, 상기한 807 단계에서, 자동 설치 시간대가 아닌 경우, 모바일 기기(30)는 미리 설정된 자동 설치 가능 시간대로 자동 설치를 예약할 수 있다(S819). 여기서, 자동 설치 예약은 모바일 기기(30)에 구비된 타이머(207)를 이용하여 설정될 수 있다. 이후, 자동 설치 예약 시간이 도래하였음을 알리는 소정의 이벤트가 내부 타이머(207)로부터 수신되면(S821), 모바일 기기(30)는 상기한 809 단계를 수행한다.
만약, 상기한 811 단계에서, 예외 처리 상황이 발생된 경우, 예외 상황 별 정의된 소정 시간 동안 자동 설치를 연기한 후(S823), 상기한 809 단계로 회귀한다.
일 예로, 예외 처리 상황이 통화중에 해당되는 경우, 모바일 기기(30)는 10분 타이머를 설정한 후, 10분이 경과하면 상기한 809 단계로 회귀하여 예외 처리 항목을 다시 확인할 수 있다.
또 다른 예로, 예외 처리 상황이 운영 체제 업그레이드인 경우, 모바일 기기(30)는 1시간 타이머를 설정한 후, 1시간이 경과 하면 상기한 809 단계로 회귀하여 예외 처리 항목을 다시 확인할 수 있다.
이상에서는 타이머를 이용한 자동 설치 연기를 일 예로 들었으나, 본 발명의 다른 일 실시예에 따른 모바일 기기(30)는 예외 처리 상황이 발생된 경우, 해당 예외 상황이 종료되는 시점까지 자동 설치를 연기할 수 있다. 일 예로, 잔여 배터리 용량이 기준치 이하인 예외 상황이 발생된 경우, 모바일 기기(30)는 잔여 배터리 용량이 기준치 이상으로 변경된 경우, 해당 예외 상황이 종결되었음을 알리는 소정의 내부 인터럽트 신호가 발생되도록 설계될 수 있으며, 해당 인터럽트 신호 발생에 따라 자동 설치 절차를 재개시킬 수 있다. 이와 마찬가지로, 해외 로밍 상태, 가입자 식별 모듈 잠금 설정 상태, 운영 체제 업그레이드 상태, 통화중 상태 등의 예외 상황도 각각에 대응되는 인터럽트 신호를 통해 해당 예외 상황이 종결되었음을 모바일 기기(30)에 알릴 수 있다. 이를 위해, 본 발명의 일 실시예에 따른 모바일 기기(30)는 상기 예외 상황의 발생을 감지하고, 그에 따른 예외 상황 별 인터럽트 신호를 모니터링하여 해당 예외 상황의 종결 여부를 확인하는 기능을 수행하는 소정의 하부 모듈이 구비될 수 있다. 일 예로, 여기서 하부 모듈은 상기한 도 2의 예외 처리부(209)일 수 있다.
이하에서는 하기의 도 9를 참조하여, 원시 키(509) 값이 소프트웨어 자동 설치 요구에 해당되지 않는 경우-상기 도 8의 도면 부호 "A" 해당됨-에 모바일 기기(30)가 푸시 메시지를 처리하는 절차를 상세히 설명하기로 한다.
도 9는 본 발명의 일 실시예에 따른 푸시 메시지를 이용한 소프트웨어 다운로드 절차를 설명하기 위한 순서도이다.
도 9를 참조하면, 모바일 기기(30)는 원시 키(509) 값이 소프트웨어 갱신 요구에 해당되는지 확인한다(S901).
확인 결과, 소프트웨어 갱신 요구인 경우, 모바일 기기(30)는 원시 키(509)에 대응하는 밸류(513) 필드로부터 소프트웨어 다운로드를 위해 접속할 서버의 URL 정보를 독출한다(S903).
이 후, 모바일 기기(30)는 상기 URL로 접속하여 소프트웨어를 다운로드한 후 메모리부(203)의 일측에 저장한다(S905).
연이어, 모바일 기기(30)는 다운로드된 소프트웨어 파일이 존재함을 소정의 다운로드 알림 바를 통해 화면상에 표시할 수 있다(S907). 본 발명의 다른 일 실시예에 따른 모바일 기기(30)는 상기 다운로드 알림 바뿐만 아니라 타일 또는 배지 형태로 업데이트할 소프트웨어 파일이 존재함을 알리는 소정의 알림 지시자-여기서, 알림 지시자는 숫자, 문자, 기호 등으로 표시될 수 있음-를 화면상에 표시할 수도 있다.
모바일 기기(30) 사용자에 의해 다운로드 알림 바가 선택되면, 기 다운로드된 소프트웨어 파일에 대한 설치 안내 팝업 메시지를 화면상에 표시한다(S909). 여기서, 설치 안내 팝업 메시지는 수동 설치 버튼 및 예약 설치 버튼을 포함할 수 있다.
만약, 사용자에 의해 수동 설치 버튼이 클릭되면, 모바일 기기(30)는 메모리부(203)에 저장된 해당 소프트웨어 파일을 독출하여 설치한 후 시스템 자동 재부팅 절차를 수행한다(S913).
만약, 상기한 예약 설치 버튼이 선택된 경우(S915), 수동 설치 예약 설정을 위한 소정의 예약 설정 사용자 인터페이스 화면이 화면상에 표시되며, 모바일 기기(30)는 상기 예약 설정 사용자 인터페이스 화면을 통해 사용자로부터 입력 받은 시간대로 수동 설치 예약을 설정할 수 있다(S917).
도 10은 본 발명의 일 실시예에 따른 소프트웨어 자동 설치 시간대 변경 방법을 설명하기 위한 순서도이다.
상세하게, 도 10은 상기한 도 9의 도면 부호 "B", 즉 원시 키(509) 값이 소프트웨어 갱신 요구가 아닌 경우에 모바일 기기가 푸시 메시지를 처리하는 절차를 설명하기 위한 순서도이다.
도 10을 참조하면, 모바일 기기(30)는 원시 키(509) 값이 자동 설치 시간대 변경 요구인지 확인한다(S1001).
확인 결과, 자동 설치 시간대 변경 요구인 경우, 모바일 기기(30)는 해당 원시 키(509)에 대응하는 밸류(513) 값을 수신된 푸시 메시지로부터 독출한다(S1003).
이후, 모바일 기기(30)는 자동 설치 시간대 테이블(520)을 참조하여, 독출된 밸류(513) 값에 대응하는 시간대 정보를 획득한다(S1005).
연이어, 모바일 기기(30)는 획득된 시간대 정보를 이용하여 자동 설치 시간대를 설정한다(S1007).
상기한, 1001 단계에서, 원시 키(509) 값이 자동 설치 시간대 변경 요구가 아니 경우, 모바일 기기(30)는 수신된 푸시 메시지를 오류 메시지로 판단하고 해당 절차를 종료할 수 있다.
도 11은 본 발명의 일 실시예에 따른 FOTA 서버에 의한 소프트웨어 자동 다운로드 주기를 설명하기 위한 도면이다.
도 11을 참조하면, 모바일 기기(30)는 최초 개통과 동시에 FOTA 서버(10)에 접속하여 소프트웨어 버전을 체크한 후 16시간 경과 후 다시 버전 체크를 수행할 수 있다. 이후, 모바일 기기(30)는 개통 후 3개월 동안은 일주일에 1회(총 12회), 이후 3개월 동안은 2주일에 1회, 이후 6개월 동안은 6주일에 1회와 같이 점증적으로 소프트웨어 버전 체크를 하는 주기가 길어지도록 제어될 수 있다. 즉, 개통 시점을 기준으로 FOTA 서버(10)의 접속 주기가 점점 증가됨으로써 FOTA 서버(10)의 부하를 분산시키는 효과를 기대할 수 있다.
본 발명은 본 발명의 정신 및 필수적 특징을 벗어나지 않는 범위에서 다른 특정한 형태로 구체화될 수 있음은 당업자에게 자명하다.
따라서, 상기의 상세한 설명은 모든 면에서 제한적으로 해석되어서는 아니되고 예시적인 것으로 고려되어야 한다. 본 발명의 범위는 첨부된 청구항의 합리적 해석에 의해 결정되어야 하고, 본 발명의 등가적 범위 내에서의 모든 변경은 본 발명의 범위에 포함된다.
10 : FOTA 서버 20 : 푸시 서버
30 : 모바일 기기 40 : 자동 설치 응용 소프트웨어
209 : 예외 처리부 211 : 푸시 메시지 분석부
303 : 자동 설치 판단부 307 : 디바이스 정보 데이터베이스

Claims (18)

  1. 서버와 연동되는 모바일 기기에서 소프트웨어를 업그레이드 방법에 있어서,
    상기 서버에 의해 생성된 푸시 메시지(Push Message)를 수신하는 수신 단계;
    상기 푸시 메시지가 상기 모바일 기기에 다운로드된 소프트웨어의 자동 업그레이드를 지시하는 메시지인지 여부를 판단하는 판단 단계; 및
    상기 판단 결과, 상기 자동 업그레이드를 지시하는 메시지인 경우, 상기 다운로드된 소프트웨어를 상기 모바일 기기에 설치하는 설치 단계
    를 포함하는 소프트웨어 업그레이드 방법.
  2. 제1항에 있어서,
    상기 서버는 FOTA(Firmware Over The Air) 서버인 것을 특징으로 하는 소프트웨어 업그레이드 방법.
  3. 제1항에 있어서,
    상기 다운로드된 소프트웨어가 소정 시간 동안 업그레이드되지 않은 경우, 상기 자동 업그레이드를 지시하는 메시지가 상기 서버로부터 수신되는 소프트웨어 업그레이드 방법.
  4. 제1항에 있어서,
    상기 모바일 기기에 설치된 소프트웨어 버전 정보를 소정 주기로 상기 서버로 전송하는 단계를 더 포함하되, 상기 서버에 저장된 최신 소프트웨어 버전 정보와 상기 설치된 소프트웨어 버전 정보가 상이한 경우 상기 자동 업그레이드를 지시하는 메시지가 수신되는 소프트웨어 업그레이드 방법.
  5. 제1항에 있어서,
    상기 자동 업그레이드를 지시하는 메시지인 경우, 상기 설치 단계 이전에, 상기 다운로드된 소프트웨어의 업그레이드 가능 여부를 판단하기 위한 소정 예외 처리 항목을 확인하는 단계를 더 포함하되,
    상기 예외 처리 항목의 확인 결과, 상기 다운로드된 소프트웨어의 업그레이드가 가능한 것으로 확인되면, 상기 설치 단계가 수행되는 소프트웨어 업그레이드 방법.
  6. 제5항에 있어서,
    상기 예외 처리 항목을 확인하는 단계는
    현재 시간이 미리 설정된 자동 설치 시간대에 해당되는지를 확인하는 제1단계;
    운용 소프트웨어의 업그레이드가 진행되고 있는지 여부를 확인하는 제2단계;
    해외 로밍 상태인지 여부를 확인하는 제3단계;
    가입자 인식 모듈이 잠금 설정되었는지 여부를 확인하는 제4단계;
    배터리 잔여 용량이 소정 기준치 이하인지 여부를 확인하는 제5단계; 및
    통화중 여부를 확인하는 제6단계
    중 적어도 하나를 포함하는 소프트웨어 업그레이드 방법.
  7. 제6항에 있어서,
    상기 모바일 기기의 사용이 적은 시간대가 상기 자동 설치 시간대의 디폴트 값으로 설정되되, 소정의 메뉴 설정을 통해 상기 자동 설치 시간대가 변경 가능한 소프트웨어 업그레이드 방법.
  8. 제6항에 있어서,
    상기 제1 단계 내지 제6단계 중 어느 하나에 의해 상기 다운로드된 소프트웨어의 업그레이드가 불가능한 것으로 확인되면, 소정 시간 경과 후 상기 예외 처리 항목을 확인하는 단계가 다시 수행되는 소프트웨어 업그레이드 방법.
  9. 제1항에 있어서,
    상기 자동 업그레이드를 지시하는 메시지인 경우, 상기 푸시 메시지의 수신 알림이 상기 모바일 기기의 화면상에 표시되지 않고 백그라운드로 상기 다운로드된 소프트웨어가 설치되는 소프트웨어 업그레이드 방법.
  10. 제1항에 있어서,
    상기 자동 업그레이드를 지시하는 메시지인 경우, 상기 푸시 메시지가 상기 모바일 기기의 메시지 수신함에 저장되지 않는 소프트웨어 업그레이드 방법.
  11. 제1항에 있어서,
    상기 푸시 메시지가 소정의 원시 키를 포함하되, 상기 원시 키를 통해 상기 푸시 메시지가 상기 자동 업그레이드를 지시하는 메시지인지 식별되는 소프트웨어 업그레이드 방법.
  12. 제1항에 있어서,
    상기 푸시 메시지가 소정의 응용 소프트웨어 등록 식별자를 포함하되, 상기 응용 소프트웨어 등록 식별자를 통해 상기 푸시 메시지를 처리할 응용 소프트웨어가 상기 모바일 기기상에서 식별되는 소프트웨어 업그레이드 방법.
  13. 제12항에 있어서,
    상기 모바일 기기에 대응하는 IMEI(International Mobile Equipment Identity)와 상기 응용 소프트웨어 등록 식별자가 매핑되어 상기 서버에 유지되는 소프트웨어 업그레이드 방법.
  14. FOTA(Firmware Over The Air) 서버에서 모바일 기기의 소프트웨어 업그레이드 방법에 있어서,
    상기 모바일 기기에 설치된 소프트웨어 버전 정보를 포함하는 소정의 제어 메시지를 상기 모바일 기기로부터 수신하는 제1단계;
    상기 수신된 소프트웨어 버전 정보와 상기 FOTA 서버에 유지된 최신 소프트웨어 버전 정보가 동일한지 여부를 비교하는 제2단계;
    상기 모바일 기기에 상기 최신 소프트웨어 버전이 다운로드되었는지 확인하는 제3단계; 및
    상기 제2단계에서 동일하지 않고, 상기 제3단계에서 다운로드된 경우, 상기 다운로드된 소프트웨어의 자동 업그레이드를 지시하는 소정의 푸시 메시지를 상기 모바일 기기에 전송하는 제4단계
    를 포함하는 소프트웨어 업그레이드 방법.
  15. 제14항에 있어서,
    상기 FOTA 서버가 상기 최신 소프트웨어가 상기 모바일 기기에 다운로드된 시간 정보를 유지하되, 상기 다운로드된 시간으로부터 소정 시간이 경과한 이후에 상기 푸시 메시지를 전송하는 것을 특징으로 하는 소프트웨어 업그레이드 방법.
  16. 제14항에 있어서,
    상기 소정 시간은 상기 FOTA 서버에 의해 제공되는 소정의 사용자 인터페이스 화면을 통해 변경 가능한 것을 특징으로 하는 소프트웨어 업그레이드 방법.
  17. 서버와 연동하여 소프트웨어를 업그레이드 장치에 있어서,
    상기 서버에 의해 생성된 푸시 메시지(Push Message)를 수신하는 수단;
    상기 푸시 메시지가 상기 장치에 다운로드된 소프트웨어의 자동 업그레이드를 지시하는 메시지인지 판단하는 수단; 및
    상기 판단 결과, 상기 자동 업그레이드를 지시하는 메시지인 경우, 상기 다운로드된 소프트웨어를 상기 장치에 설치하는 수단
    을 포함하는 소프트웨어 업그레이드 장치.
  18. 모바일 기기를 위한 소프트웨어를 업그레이드 하는 장치에 있어서,
    상기 모바일 기기에 설치된 소프트웨어 버전 정보를 포함하는 소정의 제어 메시지를 상기 모바일 기기로부터 수신하는 수단;
    상기 수신된 소프트웨어 버전 정보와 상기 장치에 유지된 최신 소프트웨어 버전 정보가 동일한지 여부를 비교하는 수단;
    상기 모바일 기기에 상기 최신 소프트웨어 버전이 다운로드되었는지 확인하는 수단; 및
    상기 수신된 소프트웨어 버전 정보와 상기 장치에 유지된 최신 소프트웨어 버전 정보가 동일하지 않고, 상기 최신 소프트웨어 버전이 다운로드된 경우, 상기 다운로드된 소프트웨어의 자동 업그레이드를 지시하는 소정의 푸시 메시지를 상기 모바일 기기에 전송하는 수단
    을 포함하는 소프트웨어 업그레이드 장치.
KR1020130163752A 2013-12-26 2013-12-26 푸시 메시지를 이용한 소프트웨어 업그레이드 방법 및 장치 KR101651854B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020130163752A KR101651854B1 (ko) 2013-12-26 2013-12-26 푸시 메시지를 이용한 소프트웨어 업그레이드 방법 및 장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020130163752A KR101651854B1 (ko) 2013-12-26 2013-12-26 푸시 메시지를 이용한 소프트웨어 업그레이드 방법 및 장치

Publications (2)

Publication Number Publication Date
KR20150075617A true KR20150075617A (ko) 2015-07-06
KR101651854B1 KR101651854B1 (ko) 2016-08-30

Family

ID=53788699

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020130163752A KR101651854B1 (ko) 2013-12-26 2013-12-26 푸시 메시지를 이용한 소프트웨어 업그레이드 방법 및 장치

Country Status (1)

Country Link
KR (1) KR101651854B1 (ko)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20170046409A (ko) * 2015-10-21 2017-05-02 삼성전자주식회사 어플리케이션을 관리하는 방법 및 그 장치
US10203949B2 (en) 2016-05-11 2019-02-12 Hyundai Motor Company System and method for providing software updates
CN116232841A (zh) * 2023-05-09 2023-06-06 国网信息通信产业集团有限公司 一种远程升级电力5g cpe通信模组的方法及装置

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20000040557A (ko) * 1998-12-18 2000-07-05 윤종용 이동국의 소프트웨어 자동 업그레이드 방법
KR20050073552A (ko) * 2004-01-09 2005-07-14 마이크로소프트 코포레이션 관리 서버들에 의해 갱신된 온-디바이스 애플리케이션카탈로그
KR20090047616A (ko) * 2007-11-08 2009-05-13 삼성전자주식회사 소프트웨어 업그레이드 수행을 위한 시스템 및 방법
KR20130085052A (ko) * 2010-12-01 2013-07-26 애플 인크. 프리-히팅된 소프트웨어 설치

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20000040557A (ko) * 1998-12-18 2000-07-05 윤종용 이동국의 소프트웨어 자동 업그레이드 방법
KR20050073552A (ko) * 2004-01-09 2005-07-14 마이크로소프트 코포레이션 관리 서버들에 의해 갱신된 온-디바이스 애플리케이션카탈로그
KR20090047616A (ko) * 2007-11-08 2009-05-13 삼성전자주식회사 소프트웨어 업그레이드 수행을 위한 시스템 및 방법
KR20130085052A (ko) * 2010-12-01 2013-07-26 애플 인크. 프리-히팅된 소프트웨어 설치

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20170046409A (ko) * 2015-10-21 2017-05-02 삼성전자주식회사 어플리케이션을 관리하는 방법 및 그 장치
US11256496B2 (en) 2015-10-21 2022-02-22 Samsung Electronics Co., Ltd. Apparatus and method for managing application
US10203949B2 (en) 2016-05-11 2019-02-12 Hyundai Motor Company System and method for providing software updates
CN116232841A (zh) * 2023-05-09 2023-06-06 国网信息通信产业集团有限公司 一种远程升级电力5g cpe通信模组的方法及装置
CN116232841B (zh) * 2023-05-09 2023-08-01 国网信息通信产业集团有限公司 一种远程升级电力5g cpe通信模组的方法及装置

Also Published As

Publication number Publication date
KR101651854B1 (ko) 2016-08-30

Similar Documents

Publication Publication Date Title
CN106897086B (zh) 用于升级机器人操作系统的方法、装置及系统
US8571540B2 (en) Systems, methods, and computer program products for providing device updates to a mobile device operating in a wireless telecommunications network
WO2017088388A1 (zh) 应用的sdk的升级方法及系统
JP6289764B2 (ja) 機器制御方法、装置、プログラムおよび記録媒体
US9363622B1 (en) Separation of client identification composition from customization payload to original equipment manufacturer layer
US9325830B2 (en) Method and apparatus for providing idle mode service
EP2919440A1 (en) Advertisement processing method and device
US20170330248A1 (en) Portable Electronic Device and Method for Displaying Data Thereon
KR20110118975A (ko) 휴대용 단말기에서 펌웨어 업데이트를 수행하기 위한 장치 및 방법
CN103209407A (zh) 移动终端中应用程序的下载管理方法、系统和移动终端
CN112187531B (zh) 模块的升级方法及系统、存储介质、电子装置
CN105517015A (zh) 一种wifi产品空中下载OTA升级方法、装置及终端
WO2010029362A2 (en) Embedded background lifecycle manager
WO2012006853A1 (zh) 移动终端的Java应用的更新方法、服务器和移动终端
KR101651854B1 (ko) 푸시 메시지를 이용한 소프트웨어 업그레이드 방법 및 장치
CN103916846A (zh) 一种终端应用的更新方法、系统及设备
KR101950351B1 (ko) 어플리케이션 기반 모바일 컨텐츠 제공 시스템 및 그 방법
US8812293B2 (en) Apparatus and method for changing language in mobile communication terminal
CN111198706A (zh) 更新系统功能的方法、更新系统功能的装置及存储介质
CN104184754A (zh) 进行应用及内容自动更新的方法、终端、平台及系统
KR20090037642A (ko) Fota 수행 방법 및 그 방법에 따른 단말기
CN105100205A (zh) 一种系统更新方法、服务器及电子设备
CN114115943A (zh) 一种支持断点续传的版本更新方法、系统、介质及设备
CN108089868B (zh) 对智能设备上的项目进行升级的方法以及相关设备
CN113946354A (zh) 软件升级方法及装置、存储介质、电子装置

Legal Events

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