KR100897234B1 - 무선 네트워크를 통한 애플리케이션 프로그램의 네트워크 개시 설치해제를 위한 방법 및 장치 - Google Patents

무선 네트워크를 통한 애플리케이션 프로그램의 네트워크 개시 설치해제를 위한 방법 및 장치 Download PDF

Info

Publication number
KR100897234B1
KR100897234B1 KR1020037002132A KR20037002132A KR100897234B1 KR 100897234 B1 KR100897234 B1 KR 100897234B1 KR 1020037002132 A KR1020037002132 A KR 1020037002132A KR 20037002132 A KR20037002132 A KR 20037002132A KR 100897234 B1 KR100897234 B1 KR 100897234B1
Authority
KR
South Korea
Prior art keywords
recall
program
wireless telephone
application program
recall command
Prior art date
Application number
KR1020037002132A
Other languages
English (en)
Other versions
KR20040023562A (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
Family has litigation
First worldwide family litigation filed litigation Critical https://patents.darts-ip.com/?family=25244389&utm_source=google_patent&utm_medium=platform_link&utm_campaign=public_patent_search&patent=KR100897234(B1) "Global patent litigation dataset” by Darts-ip is licensed under a Creative Commons Attribution 4.0 International License.
Application filed by 콸콤 인코포레이티드 filed Critical 콸콤 인코포레이티드
Publication of KR20040023562A publication Critical patent/KR20040023562A/ko
Application granted granted Critical
Publication of KR100897234B1 publication Critical patent/KR100897234B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M1/00Substation equipment, e.g. for use by subscribers
    • H04M1/72Mobile telephones; Cordless telephones, i.e. devices for establishing wireless links to base stations without route selection
    • H04M1/724User interfaces specially adapted for cordless or mobile telephones
    • H04M1/72403User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality
    • H04M1/72406User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality by software upgrading or downloading
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/40Transformation of program code
    • G06F8/54Link editing before load time
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/61Installation
    • G06F8/62Uninstallation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/34Network arrangements or protocols for supporting network services or applications involving the movement of software or configuration parameters 
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/30Definitions, standards or architectural aspects of layered protocol stacks
    • H04L69/32Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
    • H04L69/322Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
    • H04L69/329Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions in the application layer [OSI layer 7]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/06Selective distribution of broadcast services, e.g. multimedia broadcast multicast service [MBMS]; Services to user groups; One-way selective calling services
    • 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

Abstract

무선 전화기와 같은 원격 모듈에 있는 프로그램에 대한 네트워크 개시된 설치해제는 무선 네트워크를 통해 무선 전화기, 무선 네트워크, 또는 무선 전화기의 사용자에게 불완전하다거나 유해한 무선 전화기에 저장된 프로그램을 리콜하기 위해 무선 네트워크를 통해 수행된다. 만약 하나 또는 그이상의 리콜 기준이 목적 애플리케이션 프로그램의 설치해제에 대하여 만족된다면, 리콜 명령 소스는 리콜 명령을 구성한다. 네트워크에서 각각의 무선 전화기에 다운로딩된 각 프로그램에 관한 정보를 포함하는 데이터베이스를 사용하는 프로그램 관리자는 리콜 명령 소스에 대하여 어떤 무선 전화기가 목적 애플리케이션 프로그램을 전송하는지를 식별한다. 리콜 명령은 목적 애플리케이션 프로그램에 대한 동일한 애플리케이션 식별과 목적 애플리케이션 프로그램을 설치하기 위한 무선 전화기에 대한 명령을 포함한다. 리콜 명령은 무선 네트워크를 통해 무선 전화기에 제공된다. 리콜 명령에 따라, 무선 전화기는 그의 리콜 프로그램을 실행함으로써 목적 애플리케이션 프로그램을 자동으로 설치해제한다.

Description

무선 네트워크를 통한 애플리케이션 프로그램의 네트워크 개시 설치해제를 위한 방법 및 장치{METHOD AND APPARATUS FOR NETWORK INITIATED UNINSTALLATION OF APPLICATION PROGRAM OVER WIRELESS NETWORK}
본 발명은 무선 네트워크를 사용하는 프로그램의 원격 유지 및 삭제에 관한 것이다. 특히, 본 발명은 무선 전화기와 같은 원격 모듈의 목적 애플리케이션 프로그램의 네트워크 개시된 "리콜" 및 설치해제에 관한 것이다.
무선 네트워크를 통해 공통으로 통신하도록 사용되는 무선 전화기는 사용자에게 개인 컴퓨터 및 휴대용 개인 디지털 보조장치("PDA")와 동일한 혜택을 제공하는 장치로 발전하고 있다. 상기 전화기에서 컴퓨터로의 전환은 무선 전화기상에 애플리케이션 프로그래밍 인터페이스("API")를 제작자가 설치함에 따라 성립된다. 소프트웨어 개발자는 특정 소프트웨어 개발자 킷트를 사용하여 API를 갖는 무선 전화기에 적합하도록 특정 설계된 프로그램을 기록한다.
API는 무선 전화기의 사용자가 무선 전화기를 사용하여 다양한 프로그램을 다운로딩하고 동작시키도록 한다. 결과적으로 무선 전화기의 사용자는 그가 사용할 수 있고 즐길 수 있는 프로그램을 가지는 무선 전화기를 커스터마이징할 것으로 예상된다. 예를 들어 사용자는 게임을 하거나, 책을 읽거나, 주식 업데이팅 및 다른 뉴스 정보, 또는 무선 전화기 사용자가 원하는 임의의 다른 형태의 정보 또는 프로그램을 얻기 위해 무선 전화기를 사용할 수 있다.
무선 전화기가 구매된 시점에서 프로그램이 미리 로딩되어있거나, 이후에 사용자가 무선을 통해 추가의 프로그램이 다운로딩되도록 요구할 수 있음이 예상된다. 무선 전화기의 사용자는 또한 필요하거나 원하는 때에 무선 전화기로부터 프로그램을 삭제할 수 있다.
그러나, 이전의 개인 컴퓨터와는 다르게, 무선 전화기는 많은 다른 사람이 통신하기 위해 사용되는 무선 네트워크를 통해 통신하고 동작한다. 만약, 무선 네트워크가 고장나거나 포화상태가 된다면, 사람들은 이전의 중요한 기본 기능인 통신을 위해 무선 전화기를 사용할 수 없을 것이다.
무선 전화기에 다운로딩된 부적절한 프로그램은 무선 네트워크를 포화상태로 만들며, 네트워크가 고장나게 하거나, 심지어 무선 전화기의 사용자에게 안전에 대한 위험을 일으킬 수 있다. 예를 들어, 부적절한 프로그램은 무선 전화기에 메시지를 동보(broadcast)하는 기지국을 포함하는 무선 네트워크 전체의 성능에 간섭을 일으키거나, 심지어 정지시킬 수 있다. 불완전한 프로그램은 또한 무선 전화기가 네트워크를 포화상태로 만들고 911 호출과 같은 우선 순위 호출의 라우팅을 방해하도록 할 수 있다. 또한 만약 부적절한 프로그램이 무선 전화기로 하여금 정규의 안전한 범위 밖의 무선 주파수를 방출하게 하였다면 안전성 문제가 있을 수 있다.
광범위하게, 본 발명은 무선 전화기와 같은 원격 모듈에서 하나 또는 그이상의 프로그램의 네트워크-개시(network-initiated) 설치해제(uninstall)(즉 "리콜")에 관한 것이다. 리콜은 무선 네트워크를 통해 수행된다.
무선 전화기상에 다운로딩된 하나 또는 그이상의 프로그램을 리콜하도록 명령하는 상황이 발생할 것이다. 리콜은 특정 프로그램의 수행에 대한 고객 불만족에 따라, 프로그램에 링크된 무선 네트워크에 작용하는 문제의 패턴 검출 및/또는 무선 전화기가 정상적으로 움직이지 않거나 동작을 중지한 프로그램에 따라 필요할 수 있다.
이러한 환경들에 대응하여, 프로그램의 개발 및/또는 배포에 관련된 하나 또는 그이상의 사람 또는 객체, 무선 전화기의 제작자, 및/또는 무선 네트워크의 기능에 관련된 사람 또는 객체(무선 전화기 네트워크 제공자 또는 "캐리어")(종합적으로 또는 단일하게 "리콜 명령 소스"라 지칭됨)는 리콜이 필요한지를 결정한다. 각각의 프로그램이("목적 애플리케이션 프로그램"으로)리콜되기 위하여, 리콜 명령 소스는 리콜 명령을 구성한다.
리콜 명령은 목적 애플리케이션 프로그램에 대한 유일한 애플리케이션 식별 및 목적 애플리케이션 프로그램을 설치해제하기 위한 무선 전화기에 대한 명령을 포함한다. 프로그램 관리자에 의해 유지되는 데이터베이스는 무선 전화기에 다운로딩된 각각의 프로그램에 대한 애플리케이션 식별(identification)들을 추적하며 또한 어떤 무선 전화기가 그에 다운로딩된 목적 애플리케이션을 갖는지를 추적한다.
리콜 명령 소스는 리콜 명령을 구성하여 무선 네트워크에 전송한다. 무선 네트워크의 기지국은 리콜 명령을 무선 전화기에 동보한다. 리콜 명령을 수신하면, 무선 전화기는 목적 애플리케이션 프로그램을 설치해제하기 위한 과정을 자동으로 시작한다.
대안적으로, 리콜 명령 소스는 더 제한된 리콜 메시지를 무선 전화기에 전송할 수 있다. 리콜 메시지는 무선 전화기가 리콜 명령 소스 또는 목적 애플리케이션 프로그램을 설치해제 하는데 필요한 정보를 획득하기 위한 무선 네트워크의 또다른 요소에 메시지를 전송하도록 명령한다.
본 발명의 또다른 특징은 무선 전화기에 의해 개시되는 리콜 과정에 관한 것이다. 이 실시예에서, 무선 전화기는 무선 네트워크를 통해 리콜 명령 소스에 메시지를 주기적으로 전송하도록 프로그래밍된다. 무선 전화기에 의해 교신될 때, 리콜 명령 소스는 설치해제되어야하는 임의의 애플리케이션에 대한 무선 전화기에 리콜 명령을 전송한다. 대안적으로, 리콜 명령은 무선 전화기가 목적 애플리케이션 프로그램을 설치해제하는데 필요한 정보를 획득하기 위해 무선 네트워크의 또다른 구성요소와 접촉하도록 명령한다.
따라서, 본 발명의 한 실시예는 무선 전화기에서 상주하는 하나 또는 그이상의 목적 애플리케이션 프로그램을 설치해제하기 위한 상이한 방법에 관한 것이다. 리콜 명령 소스는 어떤 무선 전화기가 목적 애플리케이션프로그램을 자동으로 설치해제하는지에 따라 리콜 명령을 발생시킨다. 대안적으로, 무선 전화기는 어떤 무선 전화기가 목적 애플리케이션 프로그램을 설치해제하는지에 따라 임의의 리콜 명령에 대한 리콜 명령 소스에 메시지를 주기적으로 전송한다.
또다른 실시예에서, 본 발명은 네트워크 개시된 리콜 명령에 상응하여 목적 애플리케이션 프로그램을 자동적으로 설치해제하도록 구성되고 프로그래밍된 무선 전화기와 같은 장치에 관한 것이다. 대안적으로, 무선 전화기는 어떤 무선 전화기가 또한 목적 애플리케이션 프로그램을 자동적으로 설치해제하도록 구성되고 프로그래밍되는지에 따라 임의의 리콜 명령을 획득하기 위해 메시지를 주기적으로 전송하도록 구성되고 프로그래밍 된다.
본 발명은 다수의 개별적인 장점을 제공한다. 특히, 본발명은 무선 전화기에 다운로딩된 불완전하거나 유해한 애플리케이션 프로그램을 네트워크 개시된 설치해제를 통해 제어하기 위한 메커니즘을 제공한다. 특히, 상기 과정은 무선 전화기의 사용자가 아닌 무선 네트워크 또는 무선 전화기를 동작시키는 사람 또는 객체에 의해 개시되고 제어된다. 프로그램 관리자는 어떤 무선 전화기가 목적 애플리케이션 프로그램을 가지는 지를 식별하고, 리콜 과정은 특히 무선 전화기를 목적으로 한다. 이러한 양상은 리콜 과정에서 높은 동일성, 속도, 및 정확성을 보장한다. 본 발명은 또한 본 발명의 다음 설명으로부터 제공되는 다수의 다른 장점 및 혜택을 제공한다.
도 1은 본 발명에 따른 무선 전화기의 하드웨어 요소 및 상호 접속과 그에 상주하는 리콜 프로그램을 포함하는 무선 전화기의 블록 다이어그램이다.
도 2는 본 발명에 따른 프로그램 관리자 및 무선 전화기를 포함하는 상이한 요소간에 통신을 제공하는 예시적인 무선 네트워크의 하드웨어 요소의 블록 다이어그램이다.
도 3a는 본 발명에 따른 프로그램 관리자 데이터베이스에서 프로그램 관리자에 의해 유지되는 데이터의 테이블을 도시한다.
도 3b는 본 발명에 따른 애플리케이션 프로그램의 로컬 데이터베이스에서 무선 전화기에 의해 유지되는 데이터의 테이블을 도시한다.
도 4는 본 발명에 따른 무선 전화기에 상주하는 리콜 프로그램을 사용하는 무선 전화기의 구조에 대한 동작 시퀀스의 흐름도이다.
도 5는 본 발명에 따른 무선 네트워크를 통해 네트워크 개시된 리콜 명령을 전송하기 위한 동작 시퀀스의 흐름도이다.
도 6은 본 발명에 따른 무선 전화기의 목적 애플리케이션 프로그램을 설치해제하기 위해 무선 전화기에 의해 수행되는 동작 시퀀스의 흐름도이다.
본 발명의 특징, 목적 및 장점은 첨부된 도면을 참조하여 다음의 상세한 설명을 이해한 후에 당업자에게 더 명백해질 것이다. 전술된 바와 같이, 본 발명은 무선 전화기와 같은 무선 모듈에서 하나 또는 그이상의 목적 애플리케이션 프로그램의 네트워크 개시 설치 해제에 관한 것이다.
하드웨어 요소 및 상호 접속
무선 전화기
도 1을 참조로 하여, 본 발명은 무선 전화기(100)에 관련하여 설명된다. 무선 전화기(100)는 임의의 의도된 제한 없이 예로서 사용된다. 본 발명은 개인 디지털 보조장치("PDA"), 무선 모뎀, PCMCIA 카드, 액세스 터미널, 개인 컴퓨터, 디스플레이 또는 키패드가 없는 전화기, 또는 그들의 임의의 조합 또는 부분조합을 제한없이 포함하며, 무선 네트워크를 통해 통신할 수 있는 원격 모듈의 임의의 형태에서 선택적으로 수행될 수 있다. 원격 모듈의 상기 예는 또한 키패드, 광학 디스플레이, 또는 사운드 디스플레이와 같은 사용자 인터페이스를 가질 수 있다.
도 1에 도시된 예시적인 무선 전화기(100)는 마이크로 프로세서, 로직회로, 이산회로 엘리먼트들의 어셈블리, 주문형 집적회로(ASIC), 또는 다른 데이터 처리 객체를 포함한다. 도 1의 예에서, 상기 처리 객체는 무선 전화기(100)가 제작된 시점에 설치된 ASIC(102)로서 실행된다. ASIC은 그에 포함된 소프트웨어에 의해 구동되는 하드웨어 요소이다. 상기 처리 회로는 또한 API(104)에 의해 도시된 바와 같이 제작 시점에서 무선 전화기(100)에 설치된 API를 포함할 수 있다. API(104)는 ASIC에 상호작용하고 ASIC 하드웨어를 작동시키도록 구성된 소프트웨어 계층이다. API(104)는 무선 전화기(100)에 설치된 ASIC(102) 하드웨어 및 애플리케이션 프로그램(108)(하기에서 설명되는) 간에 인터페이스를 제공한다. 선택적으로, 무선 전화기(100)는 프로그램이 무선 전화기(100)의 하드웨어 구성에 적합할 수 있는 방식에서 동작될 수 있도록 하는 임의의 다른 형태의 회로를 포함할 수 있다. 무선 전화기(100)는 또한 스토리지(106)를 포함한다. 스토리지(106)는 RAM 및 ROM을 포함하지만, 대안적으로 EPROM, EEPROM, 및 플래쉬 카드 입력과 같은 임의의 형태의 메모리가 될 수 있다.
도 1을 참조하여, 무선 전화기(100)의 제작자(도시되지 않은)는 무선 전화기(100)가 제작되는 시점에서 무선 전화기(100)의 스토리지(106)에 애플리케이션 프로그램(108)을 다운로딩한다. 상기 애플리케이션 프로그램(108)은 게임, 책, 또는 임의의 다른 형태의 데이터 또는 소프트웨어 프로그램을 포함한다. 애플리케이션 프로그램(108)은 또한 무선 전화기(100)가 제작된 이후에 무선을 통해 무선 전화기(100)에 다운로딩될 수 있다.
제작자는 또한 무선 전화기(100)가 제작되는 시점에서 무선 전화기(100)의 스토리지에 리콜 프로그램(110)을 다운로딩한다. 리콜 프로그램(110)은 무선 전화기(100)가 제작된 이후에 무선을 통해 설치될 수 있다.
하기에서 더 상세히 논의되는 바와 같이, 리콜 프로그램(110)은 무선 전화기(100)에 의해 설치될 때, 무선 전화기(100)에 저장된 하나 또는 그이상의 목적 애플리케이션 프로그램(109)을 설치해제한다. 목적 애플리케이션 프로그램(109)은 하기에서 설명되는 다양한 이유 때문에 무선 전화기(100)로부터 설치해제되어야만 하는 애플리케이션 프로그램(108)이다. 리콜 프로그램(110)은 추가적으로 또는 선택적으로 목적 애플리케이션 프로그램(109)을 디스에이블링시키거나 프로그램(109)이 다르게 동작하도록 재프로그래밍시키기 위해 프로그래밍될 수 있다.
하기에서 논의되는 선택적인 실시예에서, 무선 전화기(100)는 목적 애플리케이션 프로그램(109)을 리콜하기 위한 임의의 명령을 위해 리콜 명령 소스(222: 도 2에 관련하여 설명된)를 주기적으로 폴링(polling)하도록 프로그래밍된다. 상기 실시예에서, 리콜 폴링 프로그램(111)은 무선 전화기(100)가 제작된 시점에 무선 전화기(100)의 저장장치(106)에 다운로딩된다. 리콜 폴링 프로그램(111)은 서로 다른 간격으로 자가실행되는 소프트웨어이다. 리콜 폴링 프로그램(111)은 무선 전화기(100)가 사용자에 의해 전원이 켜지는 매시간 마다, 및/또는 프로그램(소정의 날짜 또는 시간과 같은)에 의해 미리 결정되는 시간에 자동적으로 실행할 수 있다.
무선 전화기(100)는 또한 제작자에 의해 설치된 로컬 데이터베이스(112)를 포함한다. 로컬 데이터(112)의 샘플 컨텐츠는 도 3b에서 설명된다. 로컬 데이터베이스(112)는 최소한 무선 전화기(100)에 저장된 각각의 애플리케이션 프로그램(108)에 대해 고유한 애플리케이션 식별(identification)(302)의 레코드를 포함한다. 또한, 로컬 데이터베이스(112)는 무선 전화기(100)의 저장장치(106)내의 애플리케이션 프로그램(108)의 위치(314)의 레코드 및 어떤 애플리케이션 프로그램(108)이 무선 전화기에 다운로딩되었는지와 어디에 위치하는지를 추적하기 위해 사용할 수 있는 임의의 다른 정보를 포함할 수 있다.
로컬 데이터베이스(112)에서 유지되는 애플리케이션 프로그램(108)에 대한 애플리케이션 식별(302)은 프로그램 관리자 데이터베이스(204; 하기의 도 2에서 설명되는)에서 유지되는 애플리케이션 프로그램(108)에 대한 동일한 애플리케이션 프로그램 식별(302)과 일치한다. 예를 들어, "Race car 104Z"에 대하여 프로그램 관리자 데이터베이스(204)에서 유지되는 애플리케이션 프로그램(108)의 애플리케이션 식별(302)은 무선 전화기(100)의 로컬 데이터베이스(112)의 애플리케이션 프로그램(108)에 대한 애플리케이션 식별(302)과 일치한다.
무선 전화기(100)는 또한 다운로드 클라이언트(114)를 포함한다. 다운로드 클라이언트(114)는 각각의 애플리케이션 프로그램(108)이 무선 전화기(100)상에서 무선을 통해 다운로딩되자마자 저장되는 위치를 명령하는 API(104)내의 소프트웨어 프로그램이다. 다운로드 클라이언트(114)는 또한 각각의 애플리케이션 프로그램(108)이 무선 전화기(100)의 스토리지(106) 내에 저장된 위치의 기록을 유지한다.
네트워크
도 2는 네트워크-개시된 리콜 명령(216)이 목적 애플리케이션 프로그램(109)을 전달하는 무선 전화기(100)에 제공되는 네트워크(200)의 예를 설명한다. 네트워크(200)는 다양한 방식으로 링크된 다양한 요소를 포함한다. 하기에서 논의된 네트워크(200)는 단지 예시일뿐이다. 본 발명의 목적을 위해, 네트워크(200)는 서로간에, 및/또는 무선 네트워크 캐리어 및/또는 서버를 제한 없이 포함하는 무선 네트워크의 요소간에 무선을 통해 통신하는 무선 전화기(100)와 같은 원격 모듈에 의한 임의의 시스템을 포함한다.
도 2를 참조하면, 네트워크(200)는 한쪽 단에서 프로그램 관리자(202)를 포함한다. 프로그램 관리자(202)는 무선 전화기(203)에서의 설치를 위해 무선 전화기(203) 제작자에게 API(104)를 개발하고 제공한 임의의 객체(회사)이다. 프로그램 관리자(202)는 또한 애플리케이션 프로그램(108)이 무선 전화기(203)상에 설치된 API(104)에 적합함을 증명하는 객체이다.
프로그램 관리자(202)는 프로그램 관리자 데이터베이스(204)를 유지한다. 프로그램 관리자 데이터베이스(204)의 샘플 컨텐츠는 도 3a에서 설명된다. 프로그램 관리자 데이터베이스(204)는 네트워크(200), 애플리케이션 프로그램(108)을 다운로딩한 개인을 나타내는 전자 서비스 번호("ESN")(304) 및 애플리케이션 프로그램(108)을 전달하는 무선 전화기(203)에 대해 유일한 이동 식별 번호("MIN")(306)에서 임의의 시간에 각각의 무선 전화기(203)에 다운로딩되는 각각의 애플리케이션 프로그램을 나타내는 애플리케이션 식별(302)의 기록을 포함한다. 선택적으로, 프로그램 관리자 데이터베이스(204)는 무선 전화기 모델(308), 무선 네트워크 캐리어(310), 무선 전화기가 사용되는 지역(312) 및 무선 전화기(203)가 어떤 애플리케이션 프로그램(108)을 전달하는지를 식별하기 위해 사용할 수 있는 임의의 다른 정보의 기록을 포함한다.
프로그램 관리자(202)는 또한 리콜 명령 소스(222)를 포함한다. 리콜 명령 소스(222)는 하나 또는 그이상의 목적 애플리케이션 프로그램(109)을 리콜하도록 결정하는 사람 또는 객체이다. 리콜 명령 소스(222)는 또한 목적 애플리케이션 프로그램(109)을 전달하는 식별된 무선 전화기(100)에 동보되는 리콜 명령(216)(하기에 도시된)을 구성하는 객체이다. 대안적이며, 제한 없이, 리콜 명령 소스(222)는 목적 애플리케이션 프로그램(109)의 개발 및 배포에 관계된 하나 또는 그이상의 사람 또는 객체, 무선 전화기(203)의 제작에 관련된 사람 또는 객체, 네트워크(200)의 임의의 부분의 기능에 관련된 사람 또는 객체, 및/또는 네트워크(200)의 임의의 요소가 될 수 있다.
프로그램 관리자(202)는 인터넷(208)(바람직하게 보안되는)을 통해 네트워크를 경유하여 하나 또는 그이상의 컴퓨터 서버(206)와 통신한다. 서버(206)는 또한 인터넷(208)을 통해 네트워크를 경유하여 캐리어 네트워크(210)와 통신한다. 캐리어 네트워크(210)는 메시징 서비스 제어기("MSC")(212)에 전송된 메시지를 제어한다. 캐리어 네트워크(210)는 인터넷 및 POTS(기존의 전화 시스템)(도 2의 (211) 종합적으로 확인되는) 모두에 의해 MSC(212)와 통신한다. 캐리어 네트워크(210) 및 MSC(212)사이의 인터넷 접속(211)은 데이터를 전송하며, POTS(211)는 음성 정보를 전송한다. MSC(212)는 차례로 다수의 기지국("BTS")(214)에 접속된다. MSC(212)는 인터넷(211)(데이터 전송을 위한) 및 POTS(211)(음성 정보를 위한) 모두에 의해 BTS에 접속된다. BTS(214)는 단문 메시지 서비스("SMS") 또는 임의의 다른 무선을 통한 방법에 의해 무선 전화기(203)에 메시지를 무선으로 동보한다.
본 발명에서 BTS(214)에 의해 동보되는 메시지의 일례는 리콜 명령(216)이다. 여기에서 추가로 논의되는 것과 같이, 리콜 명령(216)을 수신하는 것에 상응하여 목적 애플리케이션 프로그램(109)을 전달하는 무선 전화기(100)는 무선 전화기(100)에 저장된 프로그램(109)을 설치해제함으로써 응답한다. 리콜 명령(216)은 (목적 애플리케이션 프로그램(109)의 리콜을 개시하도록 결정하는 동일한 사람 또는 객체이거나 동일한 사람 또는 개체가 아닐 수 있는) 리콜 명령 소스(222)에 의해 구성된다. 리콜 명령(216)은 네트워크(200)를 통해 목적 애플리케이션 프로그램(109)을 전달하는 무선 전화기(100)에 동보되도록 리콜 명령 소스(222)에 의해 전송된다.
BTS(214)에 의해 동보되는 메시지의 또다른 예는 리콜 메시지(218)이다. 여기에서 설명된 바와 같이, 리콜 메시지(218)는 네트워크(200)를 통해 리콜 명령 소스(222)에 의해 목적 애플리케이션 프로그램(109)을 전달하는 무선 전화기(100)에 전송된 메시지이다. 리콜 메시지(218)에 응답하여, 무선 전화기(100)는 리콜 명령 소스(222)와 자동으로 통신한다. 리콜 명령 소스(222)는 무선 전화기(100)에 목적 애플리케이션 프로그램(109)을 설치해제하기 위한 명령 및 목적 애플리케이션 프로그램(109)의 식별자를 전송한다. 상기 정보를 수신함에 따라, 무선 전화기(100)는 목적 애플리케이션 프로그램(109)을 설치해제한다. 선택적으로, 리콜 명령 소스(222)는 제한없이 서버(206)를 포함하는 네트워크(200)의 또다른 요소로부터 목적 애플리케이션 프로그램(109)의 식별을 검색(retrieve)하라는 명령을 무선 전화기(100)에 전송한다.
도 2에 도시된 바와 같이, 네트워크(200)는 BTS(214)를 통해 다양한 다른 네트워크 요소(200)를 사용하여 각각 무선으로 통신할 수 있는 다수의 무선 전화기(203)를 포함한다. 본 발명에서, 식별된 무선 전화기(100)는 무선 전화기(203) 자신 이외의 네트워크(200)의 부분에 의해 개시된 리콜 명령(216) 또는 리콜 메시지(218)의 사용을 통해 리콜되는 목적 애플리케이션 프로그램(109)을 포함한다. 그러나, 또다른 실시예에서, 리콜 과정은 리콜 폴링 프로그램(111)을 전달하는 무선 전화기(224)에 의해 개시된다. 리콜을 수행하기 위한 본 대안적인 방법은 이하에서 논의된다.
동작
전술된 다양한 하드웨어 실시예에 추가로, 본 발명의 다른 특징은 무선 전화기(100)에 상주하는 리콜 프로그램(110)을 포함하는 무선 전화기(100)를 구성하기 위한 방법 및 무선 전화기(100)에 상주하는 하나 또는 그이상의 목적 애플리케이션 프로그램(109)의 리콜을 원격으로 개시하는 방법에 관한 것이다.
무선 전화기의 구성, 설정 및 사용
도 4는 무선 전화기에 상주하는 리콜 프로그램(110)을 사용하는 무선 전화기(100)의 구성, 설정 및 사용의 일례를 설명하기 위한 시퀀스(400)를 도시한다. 의도된 임의의 제한 없이 각각의 설명을 위해, 도 4의 예는 전술된 하드웨어 환경에 대해 기재된다.
단계(402)에서, 무선 전화기(100)가 제작자에 의해 구성된다. 단계(404)에서, 제작자는 리콜 프로그램(110)을 무선 전화기(100)상의 스토리지(106)로 다운로딩한다. 단계(404)에서, 제작자는 또한 무선 전화기(100)에 하나 또는 그이상의 애플리케이션 프로그램(108)을 다운로딩한다.
단계(406)에서, 프로그램 관리자(202)는 프로그램 관리자 데이터베이스(204)가 각각의 제작된 무선 전화기(100)에 다운로딩된 각각의 애플리케이션 프로그램(108)을 나타내는 애플리케이션 식별(302)의 기록을 포함하도록 업데이팅한다. 상기 정보는 제작자로부터 직접 생성될 수 있다.
단계(408)에서, 무선 전화기(100)는 무선을 통해 하나 또는 그이상의 애플리케이션 프로그램(108)의 다운로드를 수신한다. 애플리케이션(108)이 프로그램 관리자(202)에 의해 인증되는 동안, 실제 프로그램은 캐리어 네트워크(210)에서 유지된다(그러나 애플리케이션 프로그램(108)이 무선 전화기(100)에 동보되도록 BTS(214)에 전송할 수 있는 네트워크(200)의 임의의 지점에서 유지될 수 있다). 무선 전화기(100)의 사용자는 무선 전화기(100)가 원하는 애플리케이션 프로그램(108)을 선택하기 위해 서버(206)를 사용하여 네트워크(200)를 통해 통신하도록 동작시킨다. 그에 응답하여, 캐리어 네트워크(210)는 애플리케이션 프로그램(108)이 무선 전화기(100)에 애플리케이션 프로그램(108)을 동보하는 BTS(214)에 전송되도록 MSC(212)에 전송한다.
애플리케이션 프로그램(108)을 수신하는 무선 전화기(100)에 응답하여, 무선 전화기(100)의 다운로드 클라이언트(114)는 무선 전화기(100)의 스토리지(106)내의 특정 위치, 즉 애플리케이션 프로그램(108)이 저장된 위치에서 애플리케이션 프로그램(108)을 관리한다.
또한 단계(408)에서, 서버(206) 또는 캐리어 네트워크(210) 중 하나는 무선 전화기(100)에 다운로딩된 애플리케이션 프로그램(108)과 동일한 애플리케이션 식별(302)을 프로그램 관리자(202)에게 통신한다. 프로그램 관리자(202)는 무선 전화기(100)에서 다운로딩된(단계 406) 추가의 애플리케이션 프로그램(108)을 나타내는 애플리케이션 식별(302)의 기록을 사용하여 프로그램 관리자 데이터베이스(204)를 업데이팅한다.
단계(409)에서, 무선 전화기(100)는 자신의 로컬 데이터베이스(112)가 무선 전화기(100)에 다운로딩된 애플리케이션 프로그램(108)과 동일한 애플리케이션 식별(302)의 기록을 포함하도록 업데이팅 한다. 따라서, 로컬 데이터베이스(112) 내의 무선 전화기(100)에서 유지되는 애플리케이션 식별(302)의 기록은 프로그램 관리자 데이터베이스(204) 내의 무선 전화기(100)에서 유지되는 애플리케이션 식별(302)의 기록과 동일하다.
단계(410)에서, 무선 전화기(100)는 무선 전화기(100)에 저장된 애플리케이션 프로그램(108)과 통신하도록/또는 애플리케이션 프로그램(108)을 구동시키도록 동작된다. 예를 들면, 무선 전화기(100)는 전화 호출의 개시에 의해 뒤따르는 테트리스 게임을 구동시키도록 동작될 수 있다.
단계(412)에서, 무선 전화기(100)는 추가 또는 몇개의 애플리케이션 프로그램(108)을 저장하도록 재구성될 수 있다. 만약 무선 전화기(100)가 애플리케이션 프로그램(108)을 추가하도록 동작된다면, 단계(408) 및 단계(406)에서의 애플리케이션 식별(302)의 업데이트가 반복된다.
그 반대로, 단계(414)에서, 만약 무선 전화기(100)가 하나 또는 그이상의 애플리케이션 프로그램(108)을 삭제하도록 동작된다면, 무선 전화기(100)는 다운로드 클라이언트(114)에게 삭제될 애플리케이션 프로그램(108)의 위치를 결정하여 애플리케이션 프로그램(108)을 설치해제하도록 명령한다. 애플리케이션 프로그램(108)이 삭제된 후에, 무선 전화기(100)는 삭제된 애플리케이션 프로그램(108)을 나타내는 애플리케이션 식별(302)의 기록을 삭제하도록 로컬 데이터베이스(112)를 자동으로 업데이팅한다. 무선 전화기(100)는 또한 삭제된 애플리케이션 프로그램(108)의 프로그램 관리자(202)에게 알리도록 네트워크(200)를 통해 프로그램 관리자(202)에 메시지를 전송한다. 그에 따라, 프로그램 관리자(202)는 프로그램 관리자 데이터베이스(204)에서 유지되는 무선 전화기(100)와 일치하는 애플리케이션의 기록을 업데이팅(단계 406)한다.
단계(416)에서, 무선 전화기(100)로부터 애플리케이션 프로그램(108)을 삭제하기 위한 무선 전화기(100)의 사용자 동작과는 반대로, 리콜 명령 소스(222)는 하나 또는 그이상의 애플리케이션 프로그램(108)을 리콜하도록 결정한다. 단계(418)에서, 리콜 명령 소스(222)는 하기에서 논의되는 바와 같이 리콜 과정을 개시하며, 시퀀스(400)는 종료한다.
리콜 명령
도 5는 리콜 명령(216)을 구성하고 네트워크(200)를 통해 설치해제되거나 작동 정지되어야 하는 목적 애플리케이션 프로그램(109)을 전달함으로써 식별되는 무선 전화기(100)에 동보되도록 리콜 명령(216)을 전송하는 리콜 명령 소스(222)의 예를 설명하는 시퀀스(500)를 도시한다. 용이한 설명을 위해, 그러나 그에의해 의도되는 제한 없이, 도 5의 예는 도 1-3의 하드웨어 환경의 내용에서 설명된다.
단계(502)에서, 리콜 명령 소스(222)는 하나 또는 그 이상의 목적 애플리케이션 프로그램(109)의 리콜에 대해 기준이 만족되는지를 결정한다. 리콜 명령 소스(222)는 사용자가 목적 애플리케이션(109)을 동작시킬 때 네트워크(200)의 무선 전화기(100)가 정확히 동작하지 않고/또는 충돌하는 네트워크(200)의 임의의 부분으로부터의 통보; 목적 애플리케이션 프로그램(109)의 개발자들이 목적 애플리케이션 프로그램(109)에서 에러를 통지하기 위한 네트워크(200)의 임의의 부분과 접촉하는 경우 ; 무선 전화기의 사용자들이 목적 애플리케이션 프로그램(109)에 관한 불만들로 네트워크(200)의 임의의 부분과 접촉하는 경우; 네트워크(200)의 임의의 부분이 목적 애플리케이션 프로그램(109) 및 무선 전화의 다른 애플리케이션 프로그램(108) 간에 상호작용하는 문제들의 통계적인 피드백을 수신하는 경우; 목적 애플리케이션 프로그램(109)에서 소프트웨어 바이러스를 발견하는 것; 및/또는 목적 애플리케이션 프로그램(109)의 사용자 동작이 안전에 대한 위험을 일으킬 정도로 무선 전화기(100)로부터 방출된 무선 주파수의 양을 증가시키는 것을 발견하는 것과 같은 다수의 상황하에서 리콜을 시작할 수 있다.
단계(502)에서, 리콜 명령 소스(222)에 의해 실행된 리콜에 대한 실제 결정은 개인, 위원회에 의해 도달될 수 있거나, 예를 들면, 무선 전화기(100) 또는 네트워크(200)의 다른 부분으로부터의 통계적인 피드백으로부터 전자적으로 결정될 수 있다. 리콜의 범위는 문제의 본질 및 문제에 의해 영향을 받는 무선 전화기(100)의 개수에 따를 것이다. 예를 들면, 리콜은 네트워크(200) 내의 모든 무선 전화기(203), 특정 지역 내의 모든 무선 전화기(100), 특정 무선 전화기(100) 모델, ESN(304)의 범위, 또는 단일 무선 전화기(100)로 확장될 수 있다.
단계(504)에서, 리콜 명령 소스(222)는 목적 애플리케이션 프로그램(109)을 나타내는 동일한 애플리케이션 식별(302)을 획득하기 위해(상기 정보를 추측하는 것은 리콜 명령 소스(222)에서 이미 사용할 수 없다) 프로그램 관리자(202)와 접촉한다. 단계(506)에서, 프로그램 관리자(202)는 네트워크(200)에서 각 무선 전화기(100)에 저장된 각각의 애플리케이션 프로그램(108)을 나타내는 애플리케이션 식별(302)을 유지하는 프로그램 관리 데이터베이스(204)를 재검색한다. 목적 애플리케이션 프로그램(109)의 애플리케이션 식별(302)에 대한 프로그램 관리자 데이터베이스(204)를 검색함에 따라, 프로그램관리자(202)는 네트워크(200)에서 어떤 무선 전화기(100)가 목적 애플리케이션 프로그램(109)을 포함하는지, 상기 정보가 리콜 명령 소스(222)에서 프로그램 관리자(202)에 의해 통신되는지를 정확히 결정한다.
단계(508)에서, 리콜 명령 소스(222)는 리콜 명령(216)을 구성한다. 리콜 명령(216)은 목적 애플리케이션 프로그램(109)을 나타내는 애플리케이션 식별(302) 및 무선 전화기(100)에게 목적 애플리케이션 프로그램(109)을 설치해제하라는 명령을 포함한다. 리콜 명령(216)은 SMS로서 기록되지만, 프로그램 관리자(202)로부터 BTS(214)로 전송될 수 있으며, 무선을 통해 무선 전화기(100)에 동보될 수 있는 임의의 포맷일 수 있다. 대안적으로, 리콜 명령 소스(222)는 네트워크(200)를 통해 리콜 명령(216)을 구성하는 데 필요한 정보를 리콜 명령(216)을 구성할 수 있는 BTS(214)에 전송할 수 있다.
단계(510)에서, 리콜 명령(216)이 구성되고 BTS(214)에서 있게된 이후에, BTS(214)는 식별된 무선 전화기(100)에 리콜 명령(216)을 동보한다. 상기 동보에 대한 명령은 리콜 명령(216)의 부분으로서 포함되거나 BTS(214)에서 개별적으로 프로그래밍될 수 있다. BTS는 AMPS, PCS, GSM, 또는 CDMA를 포함하는 임의의 셀룰러 인터페이스에서 리콜 명령(216)을 동보할 수 있다.
단계(512)에서, 무선 전화기(100)는 리콜 명령(216)을 수신하며, 아래에서 논의되는 바와 같이 이에 응답하여 무선 전화기(100)가 목적 애플리케이션 프로그램(109)을 자동적으로 설치해제한다.
리콜 메시지
목적 애플리케이션 프로그램(109)을 설치해제하기 위해 무선 전화기(100)에 의해 요구되는 모든 정보를 포함하는 리콜 명령(216)을 구성하는 리콜 명령 소스(222) 대신에, 대안적으로, 리콜 명령 소스(222)는 더 제한된 리콜 메시지(218)를 구성하고 동보되도록 할 수 있다. 리콜 메시지(218)는 무선 전화기(100)가 리콜 명령 소스(222)와의 통신을 자동적으로 개시할 것을 명령하는 무선 전화기(100)에 대한 메시지이다. 상기 통신은 무선 전화기(100)의 사용자에게 투명하다. 리콜 명령 소스(222)는 무선 전화기(100)에 설치해제되기 위한 목적 애플리케이션 프로그램(109)을 식별하기에 충분한 정보 및 목적 애플리케이션 프로그램(109)을 설치해제하기 위한 명령을 차례로 제공한다. 리콜 명령 소스(222)는 또한 무선 전화기(100)에 목적 애플리케이션 프로그램(109)을 설치해제하는데 필요한 리콜 프로그램(110)을 제공할 수 있다. 목적 애플리케이션 프로그램(109)(및, 선택적으로, 리콜 프로그램(110))의 식별을 수신함에 따라, 무선 전화기(100)는 하기에서 설명된 방식으로 목적 애플리케이션 프로그램(109)을 설치해제한다.
대안적으로, 리콜 명령 소스(222)는 제한 없이 서버(206)를 포함하는 네트워크(200)의 또다른 요소로부터 목적 애플리케이션 프로그램(109)을 설치해제하는데 필요한 정보를 회수하기 위한 명령을 포함하는 리콜 메시지(218)를 무선 전화기(100)에 전송할 수 있다. 상기 리콜 메시지(218)에 응답하여 무선 전화기(100)의 사용자에게 투명한 경우 무선 전화기(100)는 네트워크(200)의 또다른 요소로부터 목적 애플리케이션 프로그램(109)의 식별, 목적 애플리케이션 프로그램(109)을 설치해제하기 위한 명령, 및 선택적으로, 리콜 프로그램(110)을 획득한다.
리콜 명령에 대한 폴링
또다른 실시예에서, 리콜 명령 소스(222)에 의해 개시되는 리콜 과정의 선택으로서, 리콜 과정은 무선 전화기(224)들에 의해 개시된다. 상기 실시예에서, 무선 전화기(224)는 전화기(224)에 다운로딩된 리콜 폴링 프로그램(111)을 갖는다. 무선 전화기(224)는 서로 다른 간격으로 리콜 폴링 프로그램(111)을 자동적으로 실행하기 때문에 무선 전화기(224)는 목적 애플리케이션 프로그램(109)을 설치해제하기 위한 임의의 명령을 검사한다.
실행시, 리콜 폴링 프로그램(111)은 무선 전화기(224)가 임의의 무선을 통한 수단에 의해 메시지를 리콜 명령 소스(222)에 전송하도록 한다. 리콜 명령 소스(222)는 하나 또는 그 이상의 목적 애플리케이션프로그램(109)을 리콜할 것을 결정하는 사람, 객체 또는 네트워크(200)요소이다. 대안적이며, 제약 없이, 리콜 명령 소스(222)는 목적 애플리케이션 프로그램(109)의 개발 및 배포에 관련된 하나 또는 그 이상의 사람 또는 객체, 무선 전화기(203)의 제작에 관련된 사람 또는 객체 및/또는 네트워크(200)의 임의의 요소의 기능 및/또는 네트워크(200)의 임의의 요소에 관련된 사람 또는 객체이다.
무선 전화기(224)에 의해 리콜 명령 소스(222)에 전송된 폴링 메시지는 리콜 명령 소스(222)가 임의의 목적 애플리케이션 프로그램(109)을 설치하기 위한 리콜 명령(216)을 무선 전화기(224)에 전송할 것을 요구한다. 리콜 명령(216)을 위한 상기 "폴링"은 다양한 방식으로 실행될 수 있다. 예를 들어, 무선 전화기(224)에 의해 전송된 폴링 메시지는 특정 무선 전화기(224)에 어떤 애플리케이션 프로그램(108)이 다운로딩되었는지를 결정하기 위해 리콜 명령 소스(222)에 충분한 무선 전화기(224)에 관한 정보를 식별하는 것을 포함할 수 있다. 리콜 명령 소스(222)는 네트워크(200)에서 각각의 무선 전화기(203)에 다운로딩된 각각의 애플리케이션 프로그램(108)에 관한 정보를 포함하는 프로그램 관리자 데이터베이스(204)를 참조함으로써 상기 결정을 내릴 수 있다. 만약 리콜 명령 소스(222)가 특정 무선 전화기(224) 및 목적 애플리케이션 프로그램(109)에 다운로딩된 애플리케이션 프로그램들(108) 사이에 매칭이 존재한다고 결정한다면, 리콜 명령 소스(222)는 리콜 명령(216)의 전송을 진행할 수 있다. 매칭이 존재하지 않는다면, 리콜 명령 소스(222)는 리콜 명령(216)을 전송하지 않는다.
반대로, 리콜 명령 소스(222)는 무선 전화기(224)로부터의 폴링 메시지를 수신함에 따라 임의의 현존하는 리콜 명령(216)을 무선 전화기(224)에 전송할 수 있다. 리콜 명령(216)을 수신하면, 무선 전화기(224)는 목적 애플리케이션 프로그램(109)이 무선 전화기(224)에 상주하는지를 결정한다. 만약 그렇다면, 무선 전화기(224)는 목적 애플리케이션 프로그램(109)의 설치해제를 진행한다.
이전의 실시예들에서, 폴링 메시지에 응답하여 전송된 리콜 명령(216)은 목적 애플리케이션 프로그램(109)을 나타내는 애플리케이션 식별(302) 및 상기 프로그램을 설치해제하기 위한 무선 전화기(224)에 대한 명령을 포함한다. 대안적으로, 리콜 명령(216)은 무선 전화기(224)가 리콜을 종료하는데 필요한 정보를 획득하기 위해 네트워크(200)의 또다른 요소(서버(206)와 같은)에 메시지를 전송하도록 명령할 수 있다. 또다른 대안으로서, 리콜 명령(216)의 단축된 버전이 구현될 수 있으며, 여기서 리콜 명령(216)은 설치해제될 필요가 있는 임의의 애플리케이션 프로그램들(108)의 식별을 나타내는 정보를 포함하며, 리콜 명령 소스(222)에 있는 리콜 명령의 단순한 존재는 전화기가 상기 명령을 실행하도록 하는 함축된 명령으로서 기능한다.
목적 애플리케이션 프로그램의 설치 해제
도 6은 무선 전화기(100)가 리콜 명령(216)을 수신하거나 목적 애플리케이션 프로그램(109)의 식별 및 상기 프로그램을 설치해제 하기 위한 명령을 수신한 이후에 무선 전화기(100)에 저장된 목적 애플리케이션 프로그램(109)의 설치해제의 일례를 설명하기 위한 시퀀스(600)를 도시한다.
용이한 설명을 위해, 그러나 그에 따라 의도되는 임의의 제한 없이, 도 6의 예는 도 1-3에서 설명된 하드웨어 환경의 내용에서 설명된다. 단계(602)에서, 무선 전화기(100)는 네트워크(200)에서 BTS(214)로부터 동보된 리콜 명령(216)을 수신한다.
단계(604)에서, 리콜 명령(216)(또는 목적 애플리케이션 프로그램(109) 및 상기 프로그램을 설치해제하기 위한 명령)를 수신함에 따라, 무선 전화기(100)의 다운로드 클라이언트(114)는 리콜 명령(216)이 목적 애플리케이션 프로그램(109)을 나타내는 애플리케이션 식별(302)을 결정한다고 해석한다. 다운로드 클라이언트(114)는 그후에 리콜 명령(216)을 무선 전화기(100)에 설치된 리콜 프로그램(110)에 전송한다. 다운로드 클라이언트(114)는 또한 스토리지(106)에서 목적 애플리케이션 프로그램(109)의 위치를 나타내는 정보를 리콜 프로그램(110)에 통신한다.
단계(606)에서, 리콜 명령(216)은 리콜 프로그램(110)에 도달하며, 리콜 명령(216)은 리콜 프로그램이 목적 애플리케이션 프로그램(109)을 실행하고 자동적으로 설치해제하도록 한다. 대안적으로, 리콜 프로그램(110)은 목적 애플리케이션 프로그램(109)을 디스에이블링하거나, 또는 목적 애플리케이션 프로그램(109)이 더이상 기능할 수 없도록 임의의 다른 작업을 행할 수 있다. 리콜 프로그램(110)은 또한 설치 해제가 수행된 이후에 리콜 명령(216)을 삭제하도록 프로그래밍 될 수 있다.
단계(608)에서, 무선 전화기(100)는 목적 애플리케이션 프로그램(109)의 종료된 설치 해제를 리콜 명령 소스(222)에 자동적으로 보고한다. 상기 보고는 SMS 또는 네트워크(200)를 통해 전송된 무선을 통한 메시지의 임의의 다른 형태에 의해 완료될 수 있다.
단계(610)에서, 리콜 명령 소스(222)는 프로그램 관리자(202)에게 설치해제의 확인을 통신한다(이 단계는 리콜 명령 소스(222) 및 프로그램 관리자(202)가 동일한 객체가 아니라고 가정한다). 프로그램 관리자(202)는 무선 전화기(100)가 동작할 수 있는 방식에서 목적 애플리케이션 프로그램(109)을 더이상 포함하지 않는다는 사실을 반영하도록 프로그램 관리자 데이터베이스(204)를 업데이팅한다. 이를 위해, 프로그램 관리자(202)는 특정 무선 전화기(100)에 다운로딩된 애플리케이션 프로그램(108)의 목록으로부터 목적 애플리케이션 프로그램(109)을 나타내는 애플리케이션 식별(302)을 삭제한다.
단계(612)에서, 무선 전화기(100)는 선택적으로 목적 애플리케이션 프로그램(109)이 더이상 동작할 수 없고/또는 설치해제 되었음을 무선 전화기(100)의 사용자에게 자동적으로 보고한다. 상기 보고의 형식 및 표현은 리콜 명령(216)에 포함될 수 있으며, 무선 전화기(100)의 리콜 프로그램(110)은 무선 전화기(100)가 리콜 명령(216)에서의 명령에 응답하여 사용자에게 보고하도록 프로그래밍될 수 있다. 보고는 리콜의 이유(들)을 포함할 수 있다. 보고는 또한 고객 서비스 부서 또는 임의의 제 3 패리티에 대한 무선 전화기(100)의 사용자에게 리콜에 관한 정보를 획득하도록 명령할 수 있다.
신호 전달(signal bearing) 매체/회로
전술된 바와 같이, 본 발명은 무선 전화기에 상주하는 하나 또는 그이상의 목적 애플리케이션 프로그램(109)의 네트워크-개시된 설치 해제를 포함하며 무선 전화기에 상주하는 리콜 프로그램(110)을 포함하는 무선 전화기(100)를 구성하는 방법에 관한 것이다. 본 발명은 또한 목적 애플리케이션 프로그램(109)을 설치해제하기 위해 리콜 명령(216)을 획득하기 위한 네트워크(200)를 폴링하며 무선 전화기에 상주하는 리콜 폴링 프로그램(111)을 사용하여 무선 전화기(224)를 구성하는 무선 전화기(224)를 위한 방법에 관한 것이다.
도 1-3의 내용에서, 상기 방법은 예를 들면, 기계판독이 가능한 명령의 시퀀스를 실행하기 위한 네트워크(200)의 동작부에 의해 실행될 수 있다. 상기 명령은 다양한 형태의 신호-전달 매체에서 상주할 수 있다. 상기 신호-전달 매체는 예를 들어 접근가능하거나 네트워크(200)의 요소내에 상주하는 RAM(도시되지 않은)을 포함할 수 있다. 대안적으로, 명령은 자기 데이터 저장 디스켓(도시되지 않은)과 같은 또다른 신호-전달 매체에 포함될 수 있다. RAM, 디스켓, 또는 어떤 다른 경우에 포함되든지 간에, 명령은 DASD 저장장치(예를 들면, 종래의 "하드 드라이브" 또는 RAID 어레이), 자기 테이프, 전자 ROM(예를 들어, ROM, EPROM, 또는 EEPROM), 광학 저장 장치(예를 들어, CD-ROM, WORM, DVD, 디지털 광학 테이프), 종이 "펀칭" 카드, 또는 디지털 및 아날로그와 같은 전송 매체를 포함하는 다른 적합한 신호 발생 매체와 같은 다양한 기계판독 가능한 데이터 저장 매체에 저장될 수 있다.
무선 전화기(203)에 대하여 여기에서 설명된 방법은 무선 전화기(203) 내의 임의의 형태의 회로, 마이크로프로세서, 또는 다른 형태의 하드웨어를 사용하여 실행될 수 있다.
다른 실시예
앞선 개시물이 본 발명의 예시적인 실시예를 보여주는 반면에, 당업자는 본 발명의 범위를 벗어나지 않으면서 본 발명에 대한 여러 변경이 가능함을 쉽게 인식할 것이다. 따라서, 본 발명은 본 발명의 사상 또는 근본적인 특성을 벗어나지 않으면서 다른 특정한 형태로 구현될 수 있다.

Claims (19)

  1. 무선 전화기를 구성하는 방법으로서:
    스토리지(storage)를 포함하는 무선 전화 회로를 제공하는 단계;
    처리 회로를 제공하는 단계; 및
    상기 스토리지에 리콜 프로그램을 설치하는 단계를 포함하며, 상기 리콜 프로그램은 상기 전화기가 원격 리콜 명령(command)을 검출하는 것에 응답하여 상기 스토리지에 포함된 하나 이상의 애플리케이션 프로그램들을 자동으로 설치해제(uninstall)하는 동작들을 수행하도록 상기 처리 회로에 의해 실행 가능한 기계-판독가능한 명령들의 프로그램을 포함하는, 무선 전화기 구성 방법.
  2. 제 1 항에 있어서,
    상기 스토리지에 하나 이상의 애플리케이션 프로그램들을 다운로딩하는 단계를 더 포함하는 무선 전화기 구성 방법.
  3. 제 1 항에 있어서,
    상기 설치하는 단계는 상기 전화기가 원격 서버로부터 상기 리콜 프로그램을 무선으로 다운로딩하는 단계를 포함하는, 무선 전화기 구성 방법.
  4. 스토리지, 처리 회로 및 리콜 프로그램을 포함하는 무선 전화기를 동작시키는 방법으로서:
    상기 리콜 프로그램이 상기 전화기가 원격 리콜 명령을 검출하는 것에 응답하여 상기 스토리지에 포함된 하나 이상의 애플리케이션 프로그램들을 자동으로 설치해제하는 단계를 포함하는 무선 전화기 동작 방법.
  5. 제 4 항에 있어서, 상기 설치해제하는 단계는:
    상기 무선 전화기가 무선 네트워크를 통해 리콜 명령을 수신하는 단계 - 상기 리콜 명령은 적어도 하나의 애플리케이션 프로그램을 식별하고 상기 식별된 애플리케이션 프로그램을 설치해제하기 위한 명령들을 포함함 -; 및
    상기 리콜 명령에 자동적으로 응답하여, 상기 무선 전화기가 상기 식별된 애플리케이션 프로그램을 설치해제하는 단계를 포함하는, 무선 전화기 동작 방법.
  6. 제 5 항에 있어서,
    상기 리콜 명령을 수신하는 단계는 리콜 명령 소스로부터 상기 리콜 명령을 획득하기 위한 명령들을 포함하는 리콜 메시지를 수신하는 단계와, 상기 리콜 명령 소스로부터 상기 리콜 명령을 획득하는 단계를 포함하는, 무선 전화기 동작 방법.
  7. 제 5 항에 있어서,
    상기 리콜 명령을 수신하는 단계는 상기 리콜 명령 소스가 상기 리콜 명령을 전송하도록 촉구하는 하나 이상의 폴링 메시지들을 상기 전화기가 상기 리콜 명령 소스로 전송하는 단계를 더 포함하는 무선 전화기 동작 방법.
  8. 제 5 항에 있어서,
    상기 식별된 애플리케이션 프로그램들은 상기 무선 전화기에 상주하는, 무선 전화기 동작 방법.
  9. 제 5 항에 있어서,
    상기 전화기가 상기 식별된 애플리케이션 프로그램이 상기 스토리지에 상주하는지 여부를 결정하기 위해 로컬 데이터베이스를 참조하는 단계를 더 포함하며,
    상기 설치해제하는 단계는 상기 스토리지에 상주한다고 결정된 애플리케이션 프로그램들을 설치해제하는 단계를 포함하는, 무선 전화기 동작 방법.
  10. 무선 전화기에 상주하는 하나 이상의 애플리케이션 프로그램들을 리콜하기 위한 방법으로서:
    특정 리콜 기준이 적용되는 임의의 애플리케이션 프로그램들을 식별하는 단계;
    무선 전화기들에 설치된 상기 식별된 애플리케이션 프로그램들을 구비하는 무선 전화기들을 식별하는 단계;
    상기 식별된 애플리케이션 프로그램들을 특정하며 상기 식별된 애플리케이션 프로그램들을 설치해제하기 위한 명령들을 포함하는 리콜 명령들을 구성하는 단계; 및
    하나 이상의 무선 네트워크들을 통해 상기 식별된 무선 전화기들에 상기 리콜 명령들을 전송하는 단계를 포함하는 애플리케이션 프로그램 리콜 방법.
  11. 제 10 항에 있어서,
    상기 리콜 명령들에 응답하여, 상기 무선 전화기들이 상기 식별된 애플리케이션 프로그램들을 설치해제하는 단계를 더 포함하는 애플리케이션 프로그램 리콜 방법.
  12. 무선 원격 모듈로서,
    처리 회로;
    스토리지; 및
    전화기가 원격 리콜 명령을 검출하는 것에 응답하여 상기 스토리지에 포함된 하나 이상의 애플리케이션 프로그램들을 자동적으로 설치해제하는 동작들을 수행하도록 상기 처리 회로에 의해 실행가능한 기계-판독가능한 명령들의 프로그램을 포함하는 리콜 프로그램을 포함하는 무선 원격 모듈.
  13. 제 12 항에 있어서,
    상기 처리 회로는 주문형 집적 회로(ASIC)를 포함하는, 무선 원격 모듈.
  14. 제 12 항에 있어서,
    상기 스토리지에 하나 이상의 애플리케이션 프로그램들을 다운로딩하도록 구성되는 다운로드 클라이언트를 더 포함하는 무선 원격 모듈.
  15. 제 12 항에 있어서,
    상기 리콜 프로그램은, 상기 설치해제하는 동작이:
    상기 무선 전화기가 무선 네트워크를 통해 리콜 명령을 수신하는 동작 - 상기 리콜 명령은 적어도 하나의 애플리케이션 프로그램을 식별하고 상기 식별된 애플리케이션 프로그램을 설치해제하기 위한 명령들을 포함함 -; 및
    상기 리콜 명령에 자동적으로 응답하여, 상기 무선 전화기가 상기 식별된 애플리케이션 프로그램을 설치해제하는 동작을 포함하도록 구성되는, 무선 원격 모듈.
  16. 제 15 항에 있어서,
    리콜 프로그램은, 상기 리콜 명령을 수신하는 동작이:
    리콜 명령 소스로부터 상기 리콜 명령을 획득하기 위한 명령들을 포함하는 리콜 메시지를 수신하는 동작과 상기 리콜 명령 소스로부터 상기 리콜 명령을 획득하는 동작을 포함하도록 추가적으로 구성되는, 무선 원격 모듈.
  17. 제 15 항에 있어서,
    리콜 프로그램은, 상기 리콜 명령을 수신하는 동작이:
    리콜 명령 소스가 상기 리콜 명령을 전송하도록 촉구하는 하나 이상의 폴링 메시지들을 상기 전화기가 상기 리콜 명령 소스로 전송하는 동작을 포함하도록 추가적으로 구성되는, 무선 원격 모듈.
  18. 제 15 항에 있어서,
    상기 스토리지에 상주하는 하나 이상의 애플리케이션 프로그램들을 더 포함하는 무선 원격 모듈.
  19. 제 15 항에 있어서, 상기 리콜 프로그램은:
    상기 설치해제하는 동작이 상기 스토리지에 상주한다고 결정된 애플리케이션 프로그램들을 설치해제하는 동작을 포함하도록 상기 식별된 애플리케이션 프로그램이 상기 스토리지에 상주하는지 여부를 결정하기 위해 로컬 데이터베이스를 추가로 참조하도록 구성되는, 무선 원격 모듈.
KR1020037002132A 2001-04-03 2002-04-02 무선 네트워크를 통한 애플리케이션 프로그램의 네트워크 개시 설치해제를 위한 방법 및 장치 KR100897234B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US09/825,588 US7734285B2 (en) 2001-04-03 2001-04-03 Method and apparatus for network initiated uninstallation of application program over wireless network
US09/825,588 2001-04-03
PCT/US2002/010254 WO2002082265A2 (en) 2001-04-03 2002-04-02 Method and apparatus for network initiated uninstallation of application program over wireless network

Publications (2)

Publication Number Publication Date
KR20040023562A KR20040023562A (ko) 2004-03-18
KR100897234B1 true KR100897234B1 (ko) 2009-05-14

Family

ID=25244389

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020037002132A KR100897234B1 (ko) 2001-04-03 2002-04-02 무선 네트워크를 통한 애플리케이션 프로그램의 네트워크 개시 설치해제를 위한 방법 및 장치

Country Status (18)

Country Link
US (2) US7734285B2 (ko)
EP (3) EP2144161A1 (ko)
JP (5) JP2005505154A (ko)
KR (1) KR100897234B1 (ko)
CN (2) CN102209144B (ko)
AR (1) AR033099A1 (ko)
AT (1) ATE466333T1 (ko)
BR (1) BR0208631A (ko)
CA (1) CA2443047C (ko)
DE (1) DE60236151D1 (ko)
ES (1) ES2343567T3 (ko)
IL (2) IL158191A0 (ko)
MX (1) MXPA03009080A (ko)
NZ (1) NZ528615A (ko)
PE (1) PE20021118A1 (ko)
RU (1) RU2437143C2 (ko)
TW (1) TW561775B (ko)
WO (1) WO2002082265A2 (ko)

Families Citing this family (108)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7734285B2 (en) * 2001-04-03 2010-06-08 Qualcomm Incorporated Method and apparatus for network initiated uninstallation of application program over wireless network
US7039033B2 (en) * 2001-05-07 2006-05-02 Ixi Mobile (Israel) Ltd. System, device and computer readable medium for providing a managed wireless network using short-range radio signals
US7159214B2 (en) 2001-07-26 2007-01-02 Kyocera Wireless Corp. System and method for compacting field upgradeable wireless communication device software code sections
US7200389B2 (en) 2001-07-26 2007-04-03 Kyocera Wireless Corp. Dynamic interface software for wireless communication devices
US9554268B2 (en) 2001-07-26 2017-01-24 Kyocera Corporation System and method for updating persistent data in a wireless communications device
US7328007B2 (en) * 2001-07-26 2008-02-05 Kyocera Wireless Corp. System and method for organizing wireless communication device system software
US7386846B2 (en) 2001-07-26 2008-06-10 Kyocera Wireless Corp. System and method for the management of wireless communications device system software downloads in the field
US7197302B2 (en) * 2001-07-26 2007-03-27 Kyocera Wireless Corp. System and method for interchangeable modular hardware components for wireless communication devices
US7027806B2 (en) * 2001-07-26 2006-04-11 Kyocera Wireless, Corp. System and method for field downloading a wireless communications device software code section
US7184759B2 (en) * 2001-07-26 2007-02-27 Kyocera Wireless Corp. Modular software components for wireless communication devices
US7143407B2 (en) * 2001-07-26 2006-11-28 Kyocera Wireless Corp. System and method for executing wireless communications device dynamic instruction sets
US7184793B2 (en) * 2001-07-26 2007-02-27 Kyocera Wireless Corp. System and method for over the air area code update
US7254386B2 (en) 2001-08-10 2007-08-07 Kyocera Wireless Corp. System and method for improved security in handset reprovisioning and reprogramming
US6961537B2 (en) * 2001-08-10 2005-11-01 Kyocera Wireless Corp. System and method for peer-to-peer handset communication
US7295532B2 (en) * 2001-08-17 2007-11-13 Ixi Mobile (R & D), Ltd. System, device and computer readable medium for providing networking services on a mobile device
US20050030917A1 (en) * 2001-08-17 2005-02-10 Amit Haller Device, system, method and computer readable medium obtaining a network attribute, such as a DNS address, for a short distance wireless network
US20040125762A1 (en) * 2001-08-17 2004-07-01 Amit Haller Device, system, method and computer readable medium for attaching to a device identifited by an access point name in a wide area network providing particular services
US20040081129A1 (en) * 2001-08-17 2004-04-29 Amit Haller Device, system, method and computer readable medium for selectively attaching to a cellular data service
US7016334B2 (en) * 2001-08-17 2006-03-21 Ixi Mobile ( Israel) Ltd. Device, system, method and computer readable medium for fast recovery of IP address change
US20030059049A1 (en) * 2001-09-24 2003-03-27 Mihm Thomas J. Method and apparatus for secure mobile transaction
US6957045B2 (en) * 2001-10-26 2005-10-18 Ixi Mobile (Israel) Ltd. Device, system, computer readable medium and method for providing status information of devices in a short distance wireless network
US6845097B2 (en) * 2001-11-21 2005-01-18 Ixi Mobile (Israel) Ltd. Device, system, method and computer readable medium for pairing of devices in a short distance wireless network
US7016648B2 (en) * 2001-12-18 2006-03-21 Ixi Mobile (Israel) Ltd. Method, system and computer readable medium for downloading a software component to a device in a short distance wireless network
US7013112B2 (en) * 2001-12-18 2006-03-14 Ixi Mobile (Israel) Ltd. Method, system and computer readable medium for making a business decision in response to information from a short distance wireless network
US7080405B2 (en) * 2002-01-16 2006-07-18 International Business Machines Corporation Limiting device function
US6909878B2 (en) * 2002-08-20 2005-06-21 Ixi Mobile (Israel) Ltd. Method, system and computer readable medium for providing an output signal having a theme to a device in a short distance wireless network
US7356571B2 (en) * 2002-10-07 2008-04-08 Ixi Mobile (R&D), Ltd. System, method and processor readable medium for downloading information within a predetermined period of time to a device in a network responsive to price selection
US7072672B1 (en) * 2002-11-01 2006-07-04 Nokia Corporation Disposable mini-applications
US7167680B2 (en) * 2003-02-05 2007-01-23 Ixi Mobile (Israel) Ltd. Method, system and computer readable medium for adjusting output signals for a plurality of devices in a short distance wireless network responsive to a selected environment
US20040259585A1 (en) * 2003-06-04 2004-12-23 Avi Yitzchak Wireless device having dual bus archeticure for interfacing with cellular signals and short-range radio signals
US7409208B1 (en) 2003-07-02 2008-08-05 Cellco Partnership Self-subscription to catalogs of mobile application software
US7366901B2 (en) * 2003-08-01 2008-04-29 Ixi Mobile (R&D), Ltd. Device, system, method and computer readable medium for identifying and authenticating a cellular device using a short-range radio address
JP5323027B2 (ja) * 2003-09-30 2013-10-23 株式会社富士通ソーシアルサイエンスラボラトリ コンピュータシステム管理のプログラム
JP4528328B2 (ja) * 2004-05-18 2010-08-18 キョウセラ ワイヤレス コープ. 無線通信機器用のモジュラデータコンポーネント
AU2008200175B2 (en) * 2004-05-18 2009-04-02 Kyocera Corporation System and method for interchangeable modular hardware components for wireless communication devices
US20060068765A1 (en) * 2004-09-30 2006-03-30 Motorola, Inc. Method and system of updating a function value on a subscriber unit and a network
WO2006111010A1 (en) 2005-04-18 2006-10-26 Research In Motion Limited Centralized memory management in wireless terminal devices
US8225231B2 (en) 2005-08-30 2012-07-17 Microsoft Corporation Aggregation of PC settings
US7689205B2 (en) * 2005-12-23 2010-03-30 Morgan Stanley Systems and methods for configuration of mobile computing devices
US8290433B2 (en) * 2007-11-14 2012-10-16 Blaze Mobile, Inc. Method and system for securing transactions made through a mobile communication device
US20080233918A1 (en) * 2006-09-25 2008-09-25 Sms.Ac Content owner verification and digital rights management for automated distribution and billing platforms
US20090172528A1 (en) * 2007-12-31 2009-07-02 Ramprasad S System and method for dynamically presenting a software system landscape
US9069575B2 (en) 2008-03-25 2015-06-30 Qualcomm Incorporated Apparatus and methods for widget-related memory management
US9600261B2 (en) * 2008-03-25 2017-03-21 Qualcomm Incorporated Apparatus and methods for widget update scheduling
US9747141B2 (en) 2008-03-25 2017-08-29 Qualcomm Incorporated Apparatus and methods for widget intercommunication in a wireless communication environment
US9110685B2 (en) * 2008-03-25 2015-08-18 Qualcomm, Incorporated Apparatus and methods for managing widgets in a wireless communication environment
US9269059B2 (en) * 2008-03-25 2016-02-23 Qualcomm Incorporated Apparatus and methods for transport optimization for widget content delivery
US8775943B2 (en) * 2008-04-01 2014-07-08 Samsung Electronics Co., Ltd. System and method for remote application configuration management on multifunction peripherals
US8086275B2 (en) 2008-10-23 2011-12-27 Microsoft Corporation Alternative inputs of a mobile communications device
US8385952B2 (en) 2008-10-23 2013-02-26 Microsoft Corporation Mobile communications device user interface
US8411046B2 (en) 2008-10-23 2013-04-02 Microsoft Corporation Column organization of content
US8355698B2 (en) 2009-03-30 2013-01-15 Microsoft Corporation Unlock screen
US8175653B2 (en) 2009-03-30 2012-05-08 Microsoft Corporation Chromeless user interface
US8238876B2 (en) 2009-03-30 2012-08-07 Microsoft Corporation Notifications
US8433296B2 (en) 2009-05-01 2013-04-30 Ryan Hardin Exclusive delivery of content within geographic areas
US8269736B2 (en) 2009-05-22 2012-09-18 Microsoft Corporation Drop target gestures
US8836648B2 (en) 2009-05-27 2014-09-16 Microsoft Corporation Touch pull-in gesture
US8522343B2 (en) * 2009-12-21 2013-08-27 Palm, Inc. Removing an active application from a remote device
US20120159395A1 (en) 2010-12-20 2012-06-21 Microsoft Corporation Application-launching interface for multiple modes
US20120159383A1 (en) 2010-12-20 2012-06-21 Microsoft Corporation Customization of an immersive environment
US8689123B2 (en) 2010-12-23 2014-04-01 Microsoft Corporation Application reporting in an application-selectable user interface
US8612874B2 (en) 2010-12-23 2013-12-17 Microsoft Corporation Presenting an application change through a tile
US9423951B2 (en) 2010-12-31 2016-08-23 Microsoft Technology Licensing, Llc Content-based snap point
JP5632315B2 (ja) * 2011-03-17 2014-11-26 株式会社オプティム 端末のリモート操作システム、リモート操作方法
US9383917B2 (en) 2011-03-28 2016-07-05 Microsoft Technology Licensing, Llc Predictive tiling
CN102752744A (zh) * 2011-04-19 2012-10-24 腾讯科技(深圳)有限公司 用于移动终端的问题解决方法和装置
US9104307B2 (en) 2011-05-27 2015-08-11 Microsoft Technology Licensing, Llc Multi-application environment
US9658766B2 (en) 2011-05-27 2017-05-23 Microsoft Technology Licensing, Llc Edge gesture
US9158445B2 (en) 2011-05-27 2015-10-13 Microsoft Technology Licensing, Llc Managing an immersive interface in a multi-application immersive environment
US8893033B2 (en) 2011-05-27 2014-11-18 Microsoft Corporation Application notifications
US20120304132A1 (en) 2011-05-27 2012-11-29 Chaitanya Dev Sareen Switching back to a previously-interacted-with application
US9104440B2 (en) 2011-05-27 2015-08-11 Microsoft Technology Licensing, Llc Multi-application environment
US8687023B2 (en) 2011-08-02 2014-04-01 Microsoft Corporation Cross-slide gesture to select and rearrange
US20130057587A1 (en) 2011-09-01 2013-03-07 Microsoft Corporation Arranging tiles
US8701125B2 (en) 2011-09-06 2014-04-15 The Nielsen Company (Us), Llc Methods and apparatus to detect uninstallation of an on-device meter
US10353566B2 (en) 2011-09-09 2019-07-16 Microsoft Technology Licensing, Llc Semantic zoom animations
US8922575B2 (en) 2011-09-09 2014-12-30 Microsoft Corporation Tile cache
US9557909B2 (en) 2011-09-09 2017-01-31 Microsoft Technology Licensing, Llc Semantic zoom linguistic helpers
US9244802B2 (en) 2011-09-10 2016-01-26 Microsoft Technology Licensing, Llc Resource user interface
US8933952B2 (en) 2011-09-10 2015-01-13 Microsoft Corporation Pre-rendering new content for an application-selectable user interface
US9146670B2 (en) 2011-09-10 2015-09-29 Microsoft Technology Licensing, Llc Progressively indicating new content in an application-selectable user interface
US9223472B2 (en) 2011-12-22 2015-12-29 Microsoft Technology Licensing, Llc Closing applications
US9128605B2 (en) 2012-02-16 2015-09-08 Microsoft Technology Licensing, Llc Thumbnail-image selection of applications
US20130339937A1 (en) * 2012-06-14 2013-12-19 Avaya Inc. Dynamic application management
US9426132B1 (en) 2012-09-12 2016-08-23 Emc Corporation Methods and apparatus for rules-based multi-factor verification
US9280645B1 (en) 2012-11-15 2016-03-08 Emc Corporation Local and remote verification
US9294474B1 (en) 2012-11-15 2016-03-22 Emc Corporation Verification based on input comprising captured images, captured audio and tracked eye movement
US9323911B1 (en) 2012-11-15 2016-04-26 Emc Corporation Verifying requests to remove applications from a device
US9450952B2 (en) 2013-05-29 2016-09-20 Microsoft Technology Licensing, Llc Live tiles without application-code execution
JP6065791B2 (ja) * 2013-09-13 2017-01-25 富士通株式会社 制御プログラム及び情報処理端末
CN104346261B (zh) * 2014-03-27 2018-12-11 腾讯科技(深圳)有限公司 一种应用程序的卸载提示方法和装置
KR102298602B1 (ko) 2014-04-04 2021-09-03 마이크로소프트 테크놀로지 라이센싱, 엘엘씨 확장가능한 애플리케이션 표시
WO2015154273A1 (en) 2014-04-10 2015-10-15 Microsoft Technology Licensing, Llc Collapsible shell cover for computing device
KR20160143784A (ko) 2014-04-10 2016-12-14 마이크로소프트 테크놀로지 라이센싱, 엘엘씨 컴퓨팅 디바이스용 슬라이더 커버
US10592080B2 (en) 2014-07-31 2020-03-17 Microsoft Technology Licensing, Llc Assisted presentation of application windows
US10254942B2 (en) 2014-07-31 2019-04-09 Microsoft Technology Licensing, Llc Adaptive sizing and positioning of application windows
US10678412B2 (en) 2014-07-31 2020-06-09 Microsoft Technology Licensing, Llc Dynamic joint dividers for application windows
US10642365B2 (en) 2014-09-09 2020-05-05 Microsoft Technology Licensing, Llc Parametric inertia and APIs
CN106662891B (zh) 2014-10-30 2019-10-11 微软技术许可有限责任公司 多配置输入设备
US10802811B2 (en) 2015-04-14 2020-10-13 Sony Corporation Information processing device, information processing method, computer program, and server device
CN106648714B (zh) * 2015-10-28 2019-12-24 北京国双科技有限公司 应用程序卸载信息的分析方法及装置
US9942691B2 (en) * 2016-06-24 2018-04-10 Paypal, Inc. System configurations to determine user data associated with mobile applications
US10698672B1 (en) 2016-10-07 2020-06-30 Wells Fargo Bank, N.A. Universal installer and uninstaller
CN107666665A (zh) * 2017-10-27 2018-02-06 维沃移动通信有限公司 一种应用程序的下载方法和装置
US11063645B2 (en) 2018-12-18 2021-07-13 XCOM Labs, Inc. Methods of wirelessly communicating with a group of devices
US10756795B2 (en) 2018-12-18 2020-08-25 XCOM Labs, Inc. User equipment with cellular link and peer-to-peer link
US11330649B2 (en) 2019-01-25 2022-05-10 XCOM Labs, Inc. Methods and systems of multi-link peer-to-peer communications
US10756767B1 (en) 2019-02-05 2020-08-25 XCOM Labs, Inc. User equipment for wirelessly communicating cellular signal with another user equipment

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1997016938A1 (en) * 1995-10-30 1997-05-09 Nokia Telecommunications Oy Upgrading software in a mobile telephone
WO2000067112A2 (en) * 1999-04-30 2000-11-09 Elata Plc A system and method for managing distribution of content to a device
WO2001063411A2 (en) * 2000-02-25 2001-08-30 Navic Systems, Inc. Method and system for embedded network device installation
WO2002044892A2 (en) * 2000-11-28 2002-06-06 4Thpass Inc. Method and system for maintaining and distributing wireless applications
US6643506B1 (en) 1996-08-07 2003-11-04 Telxon Corporation Wireless software upgrades with version control
US6965928B1 (en) 2001-03-09 2005-11-15 Networks Associates Technology, Inc. System and method for remote maintenance of handheld computers

Family Cites Families (89)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5155847A (en) * 1988-08-03 1992-10-13 Minicom Data Corporation Method and apparatus for updating software at remote locations
EP0463251A1 (en) * 1990-06-28 1992-01-02 International Business Machines Corporation Software installation
US5297191A (en) * 1990-09-28 1994-03-22 At&T Bell Laboratories Method and apparatus for remotely programming a wireless telephone set
CA2059845C (en) * 1991-01-30 1997-05-06 Stefan G. Littig Universal radio with adaptive memory
GB2269032B (en) * 1992-07-21 1996-03-20 Orbitel Mobile Communications Reprogramming methods and apparatus
US5805897A (en) * 1992-07-31 1998-09-08 International Business Machines Corporation System and method for remote software configuration and distribution
EP0592079A2 (en) * 1992-09-20 1994-04-13 Sun Microsystems, Inc. Automated software installation and operating environment configuration on a computer system
US5442553A (en) * 1992-11-16 1995-08-15 Motorola Wireless motor vehicle diagnostic and software upgrade system
ES2130194T3 (es) * 1993-01-18 1999-07-01 Siemens Ag Sistema de control en tiempo real.
US5860012A (en) * 1993-09-30 1999-01-12 Intel Corporation Installation of application software through a network from a source computer system on to a target computer system
JP3187624B2 (ja) * 1993-11-19 2001-07-11 京セラミタ株式会社 通信機能を備えた機器の内蔵プログラム更新方法
US5553314A (en) * 1994-04-12 1996-09-03 Motorola, Inc. Method of configuring a communication unit using a wireless portable configuration device
JPH08106393A (ja) 1994-10-06 1996-04-23 Matsushita Electric Ind Co Ltd 携帯端末システム
US5675630A (en) * 1995-03-01 1997-10-07 International Business Machines Corporation Method for associating phone books with cellular NAMs
DE19520947C5 (de) * 1995-06-02 2012-04-05 Constin Design Gmbh Tragbarer Computer mit Telekommunikationseinrichtung
US5764992A (en) * 1995-06-06 1998-06-09 Apple Computer, Inc. Method and apparatus for automatic software replacement
US5896566A (en) * 1995-07-28 1999-04-20 Motorola, Inc. Method for indicating availability of updated software to portable wireless communication units
US5689825A (en) * 1995-07-28 1997-11-18 Motorola, Inc. Method and apparatus for downloading updated software to portable wireless communication units
EP0855125B1 (en) * 1995-10-10 2006-08-30 QUALCOMM Incorporated Method and system for over-the-air (ota) service programming
US5790800A (en) * 1995-10-13 1998-08-04 Digital Equipment Corporation Client application program mobilizer
KR100286008B1 (ko) * 1995-12-30 2001-04-16 윤종용 소프트웨어 프로그램 자동 갱신방법
US5794142A (en) * 1996-01-29 1998-08-11 Nokia Mobile Phones Limited Mobile terminal having network services activation through the use of point-to-point short message service
FI102869B1 (fi) 1996-02-26 1999-02-26 Nokia Mobile Phones Ltd Laite, menetelmä ja järjestelmä eri sovelluksiin liittyvien tietojen lähettämiseksi ja vastaanottamiseksi
US5768566A (en) * 1996-03-01 1998-06-16 Microsoft Corporation Method and facility for uninstalling a computer program package
US5915225A (en) * 1996-03-28 1999-06-22 Ericsson Inc. Remotely retrieving SIM stored data over a connection-less communications link
US5881236A (en) * 1996-04-26 1999-03-09 Hewlett-Packard Company System for installation of software on a remote computer system over a network using checksums and password protection
US5940074A (en) * 1996-06-03 1999-08-17 Webtv Networks, Inc. Remote upgrade of software over a network
US6151643A (en) * 1996-06-07 2000-11-21 Networks Associates, Inc. Automatic updating of diverse software products on multiple client computer systems by downloading scanning application to client computer and generating software list on client computer
US6367075B1 (en) * 1996-07-24 2002-04-02 Marimba, Inc. Method and apparatus for producing instructions describing the removal of updates to a computer system
US5848064A (en) * 1996-08-07 1998-12-08 Telxon Corporation Wireless software upgrades with version control
US6308061B1 (en) * 1996-08-07 2001-10-23 Telxon Corporation Wireless software upgrades with version control
US5862474A (en) * 1996-08-08 1999-01-19 Qualcomm Incorporated Programmable wireless modem
US6317593B1 (en) * 1996-08-12 2001-11-13 Gateway, Inc. Intelligent cellular telephone function
US6009274A (en) * 1996-12-13 1999-12-28 3Com Corporation Method and apparatus for automatically updating software components on end systems over a network
US5953532A (en) * 1997-01-03 1999-09-14 Ncr Corporation Installation and deinstallation of application programs
US5875327A (en) * 1997-02-18 1999-02-23 International Business Machines Corporation Hierarchy of preferences and preference groups
US6223028B1 (en) * 1997-03-17 2001-04-24 Nortel Networks Ltd Enhanced method and system for programming a mobile telephone over the air within a mobile telephone communication network
US5950130A (en) * 1997-03-18 1999-09-07 Sbc Technology Resources, Inc. Mobile station with intelligent roaming and over-the-air programming features
US5974312A (en) * 1997-07-10 1999-10-26 Ericsson Inc. System and method for updating a memory in an electronic device via wireless data transfer
US6684397B1 (en) * 1997-09-08 2004-01-27 Novell, Inc. Auto-install apparatus and method
US6496979B1 (en) 1997-10-24 2002-12-17 Microsoft Corporation System and method for managing application installation for a mobile device
JPH11194929A (ja) 1997-12-26 1999-07-21 Nec Corp クライアント・サーバ型システムにおけるクライアント側プログラム管理方式
KR100315641B1 (ko) * 1999-03-03 2001-12-12 서평원 오티에이피에이를 위한 단말기와 시스템의 상호 인증 방법
US6148197A (en) * 1998-03-06 2000-11-14 Sbc Technology Resources, Inc. Intelligent roaming system with over the air programming
US6052531A (en) * 1998-03-25 2000-04-18 Symantec Corporation Multi-tiered incremental software updating
JPH11298959A (ja) 1998-04-09 1999-10-29 Nec Commun Syst Ltd 移動電話システム
US6339826B2 (en) * 1998-05-05 2002-01-15 International Business Machines Corp. Client-server system for maintaining a user desktop consistent with server application user access permissions
US6587684B1 (en) * 1998-07-28 2003-07-01 Bell Atlantic Nynex Mobile Digital wireless telephone system for downloading software to a digital telephone using wireless data link protocol
US6256493B1 (en) * 1998-07-31 2001-07-03 Motorola, Inc. Selective call receiver and method for programming a selective call receiver
JP2000076160A (ja) 1998-08-31 2000-03-14 Ando Electric Co Ltd 通信監視装置
US6237144B1 (en) * 1998-09-21 2001-05-22 Microsoft Corporation Use of relational databases for software installation
US6378128B1 (en) * 1998-10-08 2002-04-23 Microsoft Corporation System and method for dynamically modifying an install-set
US6289512B1 (en) * 1998-12-03 2001-09-11 International Business Machines Corporation Automatic program installation
FI990461A0 (fi) * 1999-03-03 1999-03-03 Nokia Mobile Phones Ltd Menetelmä ohjelmiston lataamiseksi palvelimelta päätelaitteeseen
US6374401B1 (en) * 1999-03-29 2002-04-16 International Business Machines Corporation System, method, and program for updating registry objects with a cross-platform installation program
GB2349044A (en) * 1999-04-16 2000-10-18 Emisis Infocom Group Plc Transfer of data to a PDA
GB9910164D0 (en) * 1999-04-30 1999-06-30 Hugh Symons Group Plc The distributed management of network devices
SE516806C2 (sv) * 1999-05-26 2002-03-05 Ericsson Telefon Ab L M Sätt för inladdning av programvara i en radioterminal, såsom en mobiltelefon, och tillhörande radioterminal
AU5728500A (en) * 1999-06-11 2001-01-02 Microsoft Corporation Data driven remote device control model with general programming interface-to-network messaging adapter
US6453469B1 (en) * 1999-06-18 2002-09-17 Phoenix Technologies Ltd. Method and apparatus to automatically deinstall an application module when not functioning
US6301484B1 (en) * 1999-08-31 2001-10-09 Qualcomm Incorporated Method and apparatus for remote activation of wireless device features using short message services (SMS)
JP3669619B2 (ja) * 1999-09-06 2005-07-13 富士通株式会社 無線端末装置のソフトウェア更新方法及びその装置
US6633758B1 (en) * 1999-11-16 2003-10-14 Nokia Corporation Methods and devices for operational modes in communication devices being modified with application specific parameters and operational modes automatically launching applications or commands
US6553223B1 (en) * 1999-12-30 2003-04-22 Qualcomm Incorporated Virtual device architecture for mobile telephones
US6484025B1 (en) * 2000-01-07 2002-11-19 Conexant Systems, Inc. Method and apparatus for establishing compatibility between cordless telephone applications and physical hardware of the cordless telephone
US6493549B1 (en) * 2000-02-10 2002-12-10 Lucent Technologies Inc. Over the air parameter administration for mobile telecommunications stations
MXPA02007850A (es) * 2000-02-14 2004-09-10 Motorola Inc Aparato para comunicacion de mensajes de conversacion y metodo para el mismo.
GB0003313D0 (en) * 2000-02-15 2000-04-05 Koninkl Philips Electronics Nv Software reconfiguration of communications apparatus
US6622017B1 (en) * 2000-02-25 2003-09-16 Cellco Parntership Over-the-air programming of wireless terminal features
US6615038B1 (en) * 2000-04-28 2003-09-02 Samsung Electronics Co., Ltd. System and method for automatically creating and updating a mobile station configuration database in a wireless network
US6549770B1 (en) * 2000-05-26 2003-04-15 Cellco Partnership Over the air programming and/or service activation
US6687496B1 (en) * 2000-08-02 2004-02-03 Intel Corporation Memory programming method and system
JP2002049434A (ja) * 2000-08-04 2002-02-15 Sharp Corp アプリケーションの管理方法、ネットワーク管理センター、端末、アプリケーション管理システム、およびアプリケーションの管理プログラムを格納したコンピュータ読み取り可能な記録媒体
US6591098B1 (en) * 2000-11-07 2003-07-08 At&T Wireless Services, Inc. System and method for using a temporary electronic serial number for over-the-air activation of a mobile device
US20030182414A1 (en) * 2003-05-13 2003-09-25 O'neill Patrick J. System and method for updating and distributing information
US6832373B2 (en) * 2000-11-17 2004-12-14 Bitfone Corporation System and method for updating and distributing information
US20020067504A1 (en) * 2000-12-06 2002-06-06 Xerox Corporation Method and apparatus for automatic upgrade of a product's printer driver
US7024187B2 (en) * 2000-12-08 2006-04-04 Samsung Electronics Co., Ltd. System and method for performing diagnostics on a mobile station using over-the-air transfer of interpreted byte-code program
US7734285B2 (en) * 2001-04-03 2010-06-08 Qualcomm Incorporated Method and apparatus for network initiated uninstallation of application program over wireless network
US7123933B2 (en) * 2001-05-31 2006-10-17 Orative Corporation System and method for remote application management of a wireless device
US20020193101A1 (en) * 2001-06-15 2002-12-19 Mcalinden Paul Configuring a portable device
US7143407B2 (en) * 2001-07-26 2006-11-28 Kyocera Wireless Corp. System and method for executing wireless communications device dynamic instruction sets
US20030186689A1 (en) * 2001-08-06 2003-10-02 Samsung Electronics Co., Ltd System and method for IOTA software download notification for wireless communication devices
KR100932807B1 (ko) * 2001-08-15 2009-12-21 콸콤 인코포레이티드 테스트 인에이블된 애플리케이션 실행
US20030078036A1 (en) * 2001-10-19 2003-04-24 Yuan-Jung Chang Device and method for automatically installing software by wireless identification
US7035920B2 (en) * 2001-10-30 2006-04-25 Hewlett-Packard Development Company, L.P. Remote execution of software using windows management instrumentation
US6836657B2 (en) * 2002-11-12 2004-12-28 Innopath Software, Inc. Upgrading of electronic files including automatic recovery from failures and errors occurring during the upgrade
US7587713B1 (en) * 2002-12-31 2009-09-08 Emc Corporation System and method for controlling installation of one or more components for a data storage management system
US8578363B2 (en) * 2006-05-03 2013-11-05 Microsoft Corporation Differentiated installable packages

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1997016938A1 (en) * 1995-10-30 1997-05-09 Nokia Telecommunications Oy Upgrading software in a mobile telephone
US6643506B1 (en) 1996-08-07 2003-11-04 Telxon Corporation Wireless software upgrades with version control
WO2000067112A2 (en) * 1999-04-30 2000-11-09 Elata Plc A system and method for managing distribution of content to a device
WO2001063411A2 (en) * 2000-02-25 2001-08-30 Navic Systems, Inc. Method and system for embedded network device installation
WO2002044892A2 (en) * 2000-11-28 2002-06-06 4Thpass Inc. Method and system for maintaining and distributing wireless applications
US6965928B1 (en) 2001-03-09 2005-11-15 Networks Associates Technology, Inc. System and method for remote maintenance of handheld computers

Also Published As

Publication number Publication date
JP5784268B2 (ja) 2015-09-24
EP1395902B1 (en) 2010-04-28
EP2144161A1 (en) 2010-01-13
TW561775B (en) 2003-11-11
RU2003132072A (ru) 2005-04-27
CN102209144A (zh) 2011-10-05
AR033099A1 (es) 2003-12-03
IL158191A0 (en) 2004-03-28
CA2443047A1 (en) 2002-10-17
CN1578944B (zh) 2011-06-01
MXPA03009080A (es) 2004-02-27
JP2016219033A (ja) 2016-12-22
PE20021118A1 (es) 2002-12-11
US7734285B2 (en) 2010-06-08
ATE466333T1 (de) 2010-05-15
JP2011030233A (ja) 2011-02-10
CN1578944A (zh) 2005-02-09
BR0208631A (pt) 2005-12-13
WO2002082265A3 (en) 2003-12-18
JP2014053019A (ja) 2014-03-20
DE60236151D1 (de) 2010-06-10
JP2005505154A (ja) 2005-02-17
JP2010063109A (ja) 2010-03-18
ES2343567T3 (es) 2010-08-04
RU2437143C2 (ru) 2011-12-20
JP6046018B2 (ja) 2016-12-14
JP5155367B2 (ja) 2013-03-06
CA2443047C (en) 2013-01-08
EP2312440A1 (en) 2011-04-20
NZ528615A (en) 2006-09-29
EP1395902A2 (en) 2004-03-10
WO2002082265A2 (en) 2002-10-17
CN102209144B (zh) 2013-11-06
KR20040023562A (ko) 2004-03-18
US20020142762A1 (en) 2002-10-03
US8249577B2 (en) 2012-08-21
IL158191A (en) 2008-08-07
US20100248709A1 (en) 2010-09-30

Similar Documents

Publication Publication Date Title
KR100897234B1 (ko) 무선 네트워크를 통한 애플리케이션 프로그램의 네트워크 개시 설치해제를 위한 방법 및 장치
KR100870788B1 (ko) 무선 플러그-인 장치 인식 및 소프트웨어 드라이버다운로드의 자동화
US9992265B2 (en) Method for updating an application program on a wireless terminal in a controlled manner
KR101488575B1 (ko) 트리거링 이벤트 프로세싱
JP2006517694A (ja) デバイス上のコンポーネントを自動的に処理するシステム
CN100412846C (zh) 无线设备的可下载配置应用
CN112911061B (zh) 一种移动终端、切换演示机模式的方法及计算机介质
CN115373703A (zh) 车辆软件升级方法、装置和存储介质

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20130429

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20140430

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20160330

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20170330

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20180329

Year of fee payment: 10

FPAY Annual fee payment

Payment date: 20190327

Year of fee payment: 11