KR20090033186A - 사용자 인터페이스를 제공하기 위한 컴퓨터 구현 방법 및 컴퓨터 판독가능 매체 - Google Patents

사용자 인터페이스를 제공하기 위한 컴퓨터 구현 방법 및 컴퓨터 판독가능 매체 Download PDF

Info

Publication number
KR20090033186A
KR20090033186A KR1020087031050A KR20087031050A KR20090033186A KR 20090033186 A KR20090033186 A KR 20090033186A KR 1020087031050 A KR1020087031050 A KR 1020087031050A KR 20087031050 A KR20087031050 A KR 20087031050A KR 20090033186 A KR20090033186 A KR 20090033186A
Authority
KR
South Korea
Prior art keywords
mobile device
data
service
client
format
Prior art date
Application number
KR1020087031050A
Other languages
English (en)
Other versions
KR101432319B1 (ko
Inventor
윌리암 디. 스프로레
안토니오 윈슬로우 페르난도
Original Assignee
마이크로소프트 코포레이션
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 마이크로소프트 코포레이션 filed Critical 마이크로소프트 코포레이션
Publication of KR20090033186A publication Critical patent/KR20090033186A/ko
Application granted granted Critical
Publication of KR101432319B1 publication Critical patent/KR101432319B1/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/72448User interfaces specially adapted for cordless or mobile telephones with means for adapting the functionality of the device according to specific conditions
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/955Retrieval from the web using information identifiers, e.g. uniform resource locators [URL]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/61Installation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W28/00Network traffic management; Network resource management
    • H04W28/02Traffic management, e.g. flow control or congestion control
    • H04W28/06Optimizing the usage of the radio link, e.g. header compression, information sizing, discarding information
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/12Messaging; Mailboxes; Announcements
    • H04W4/14Short messaging services, e.g. short message services [SMS] or unstructured supplementary service data [USSD]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/18Information format or content conversion, e.g. adaptation by the network of the transmitted or received information for the purpose of wireless delivery to users or terminals
    • 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
    • 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/72445User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality for supporting Internet browser applications
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W88/00Devices specially adapted for wireless communication networks, e.g. terminals, base stations or access point devices
    • H04W88/02Terminal devices

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • Software Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Information Transfer Between Computers (AREA)
  • Telephonic Communication Services (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Telephone Function (AREA)
  • Computer And Data Communications (AREA)

Abstract

모바일 장치 상에 상주하는 범용 씩 클라이언트를 이용하여 모바일 장치 컨텐츠를 제공하는 무수히 많은 서비스들에 대한 사용자 인터페이스 일반화 지원을 제공하는 장치 가상화 서비스(DVS)가 제공된다. DVS는 서비스들로부터 장치 세부 사양들을 추상화하여 서비스에 의해 기술되고 그 다음 장치 상에 렌더링될 장치 독립적인 사용자 경험을 제공한다.
모바일 장치, 클라이언트, 장치 가상화 서비스

Description

사용자 인터페이스를 제공하기 위한 컴퓨터 구현 방법 및 컴퓨터 판독가능 매체{VIRTUALIZATION OF MOBILE DEVICE USER EXPERIENCE}
대개 모바일 장치 상에서 실행되는 프로그램, 애플리케이션, 또는 서비스에서의 사용자 만족도는 이 모바일 장치에 관련된 사용자 인터페이스(UI)에 의존한다. 몇몇의 모바일 장치에서는, UI는 인터넷을 통해 모바일 장치에 제공된다. 사용자 인터페이스의 웹-기반 프로비젼(provision)에서는, 서버 상에 웹 페이지가 구축되고 모바일 장치에서 이용될 수 있는 웹 브라우저를 통해 사용자에게 제공된다. 사용자와 웹 페이지 간의 상호작용성(interactivity)은 브라우저의 렌더링(rendering) 기능에 제한되는데, 이는 또한 사용자와 프로그램 간의 상호작용성을 제한한다. 모바일 장치는 또한 그 통신 대역폭이 제한하였다. 낮은 대역폭은 외부 서버 상에 상주하는 애플리케이션과 사용자의 모바일 장치 상에 제공되는 웹 페이지 간의 송수신을 상당히 지연시킬 수 있다.
UI는 모바일 장치에 그 전체 프로그램 또는 애플리케이션을 다운로드함으로써 모바일 장치에 관련될 수 있다. 전체 프로그램은 모바일 장치의 메모리의 상당 부분을 소모시킬 수 있다. 또한, UI는 모바일 장치에 "틱 클라이언트(thick client)"를 다운로드함으로써 모바일 장치에 관련될 수 있다. 각종 이용가능 모바일 장치 및 각종 틱 클라이언트는 이런 종류의 클라이언트가 이용될 때 야기되는 호환 문제를 발생시킬 수 있다. 또한, 각종 모바일 장치 마다 틱 클라이언트를 구축하면 개발, 테스팅 및 경제성에 있어 비효율적이게 된다.
이 요약은 이하 상세한 설명에서 더 기술될 개념들 중 간단한 형태로 된 선택을 도입하기 위해 제공된 것이다. 이 요약은 청구된 요지의 핵심 특징 또는 필수적인 특징을 식별하고자 하는 것이 아니며, 청구된 요지의 범위를 결정하는 것을 돕는 데에 이용되고자 하는 것도 아니다.
장치 가상화 서비스는 범용 씩 클라이언트를 모바일 장치에 제공한다. 범용 씩 클라이언트는 개발자에게 각 모바일 장치 모델에 특정된 코드를 기록하기 위한 사용자 인터페이스를 생성하는 것을 요구하지 않고도 복수의 모바일 장치 플랫폼들 상에 맞춤형(customizable) 사용자 인터페이스를 제공하는 것을 용이하게 한다. 이런 식으로, 인터넷 서비스는 정보가 렌더링되고 있는 장치의 유형에 관련하지 않고도 모바일 장치에 데이터 및 정보를 제공할 수 있다.
도 1은 컴퓨터에 대한 예시적인 컴퓨팅 아키텍처를 도시하는 도면.
도 2는 장치 가상화(virtualization) 서비스를 제공하기 위한 예시적인 시스템을 도시하는 도면.
도 3은 장치 가상화 서비스(DVS)를 이용하여 서비스 데이터를 수락하기 위한 모바일 장치를 프로비져닝(provisioning)하기 위한 동작적인 흐름도.
도 4는 DVS 서버의 동작을 위한 예시적인 프로세스의 동작적인 흐름도.
도 5는 본원에 따른, 일반화된 틱 클라이언트에 의해 렌더링된 서비스 사용자 인터페이스 화면의 스크린 샷(screen shot)을 도시하는 도면.
본 발명의 제한적이지 않고 배타적이지 않은 실시예가 도면을 참조하여 기술되며, 각종 도면 전반에 있어서 그렇지 않다고 명시하지 않는 한 동일한 참조 번호는 동일한 부분을 참조한다.
본원에서 실시예들이 본원의 일부를 형성하며 실시예를 실행하기 위한 특정 예를 도시하는 첨부된 도면을 참조하여 이하 보다 상세히 기술될 것이다. 그러나, 실시예들은 많은 다른 형태로 구현될 수 있으며 여기에 설명된 실시예들로 제한되는 것으로 해석되어서는 안된다; 오히려, 이들 실시예는 본 개시물이 철저하고 완전해질 것이며, 당업자들에게 본원 요지의 범위를 완전히 전달하기 위하여 제공된 것이다. 개시된 실시예들은 방법, 시스템 또는 장치로서 실행될 수 있다. 따라서, 개시된 실시예들은 완전한 하드웨어 구현, 완전한 소프트웨어 구현 또는 하드웨어와 소프트웨어 양태를 결합한 구현의 형태를 취할 수 있다. 따라서 이하 상세한 설명은 제한적인 의미로 이루어진 것이 아니다.
본원에 기술된 절차(routine)들의 설명을 읽을 때에, 각종 실시예의 논리적인 동작은 (1) 컴퓨팅 시스템 상에서 실행되는 일련의 컴퓨터로 구현된 행위 또는 프로그램 모듈로서 및/또는 (2) 컴퓨팅 시스템 내의 상호접속된 기계 논리 회로 또는 회로 모듈로서 구현된다고 인식되어야 한다. 이 구현은 본 발명을 구현하는 컴퓨팅 시스템의 성능 요구사항에 따라 선택되는 항목이다. 따라서, 본원에 기술된 실시예를 예시하고 형성하는 논리적인 동작은 동작, 구조적인 장치, 행위 또는 모듈로서 다양하게 언급된다. 이들 동작, 구조적인 장치, 행위 및 모듈은 소프트웨어, 펌웨어, 특수 목적의 디지털 로직, 및 이들의 임의의 조합으로서 구현될 수 있다.
이제 동일한 참조번호가 동일한 구성요소들을 나타내는 도면을 참조하여 본원의 다양한 실시예가 기술될 것이다. 구체적으로 도 1 및 이에 대응하는 설명은 본원의 실시예가 구현될 수 있는 적합한 컴퓨팅 환경의 간단하고 일반적인 설명을 제공하고자 한다.
일반적으로, 프로그램 모듈은 특정 태스크를 수행하거나 특정 추상 데이터 유형을 구현하는 루틴, 프로그램, 컴포넌트, 데이터 구조 및 다른 유형의 구조를 포함한다. 핸드-헬드 장치, 마이크로프로세서 시스템, 마이크로프로세서-기반 또는 프로그래밍 가능한 가전제품, 미니컴퓨터, 메인프레임 컴퓨터, 등을 포함하는 다른 컴퓨터 시스템 구성 또한 이용될 수 있다. 통신 네트워크를 통해 연결되는 원격 처리 장치에 의해 태스크를 수행하는 분산 컴퓨팅 환경 또한 이용될 수 있다. 분산 컴퓨팅 환경에서 프로그램 모듈은 로컬 메모리 저장 장치와 원격 메모리 저장 장치에 모두 위치될 수 있다.
이제 도 1을 참조해 볼 때, 다양한 실시예에서 이용되는 컴퓨팅 장치(100)에 대한 예시적인 컴퓨터 아키텍처가 기술될 것이다. 컴퓨터는 퍼스널 컴퓨터, 모바일 컴퓨터 등으로서 구성될 수 있다. 도시된 바와 같이, 컴퓨팅 장치(100)는 중앙 처리 장치(102)(CPU), RAM(106)과 ROM(108)을 포함하는 시스템 메모리(104), 및 메 모리를 CPU(102)에 연결하는 시스템 버스(116)를 포함한다. 컴퓨팅 장치(100)는 또한 운영 체제(122), 애플리케이션 프로그램, 및 기타 프로그램 모듈을 저장하기 위한 대용량 저장 장치(102)를 포함하며, 이는 이하 보다 상세히 기술될 것이다.
대용량 저장 장치(102) 및 그 관련 컴퓨터 판독가능 매체는 컴퓨팅 장치(100)가 휘발성 및 비휘발성 저장을 할 수 있게 한다. 컴퓨터 판독가능 매체는 임의의 유형의 이동식 및/또는 비이동식 매체를 포함할 수 있다.
컴퓨팅 장치(100)는 인터넷 등의 네트워크(112)를 통해 원격 컴퓨터로의 논리적 접속을 이용하는 네트워크 환경에서 동작한다. 컴퓨팅 장치(100)는 버스(116)에 접속된 네트워크 인터페이스 유닛(110)을 통해 네트워크(112)에 접속할 수 있다.
컴퓨팅 장치(100)는 키보드, 마우스, 전자 스타일러스(stylus) 등과 같은 여러 장치로부터 입력을 수신하고 처리하기 위한 입/출력 컨트롤러(114)도 포함할 수 있다. 마찬가지로, 입/출력 컨트롤러(114)는 디스플레이 화면, 프린터, 또는 몇몇의 기타 유형 장치(도시 생략)에 출력을 하게 할 수 있다.
앞서 간단히 언급한 바와 같이, 네트워킹된 컴퓨터의 동작을 제어하기에 적절한 운영 체제(122)를 포함하는 여러 가지 프로그램 모듈 및 데이터 파일들이 컴퓨팅 장치(100)의 RAM(106) 및 대용량 저장 장치(102)에 저장될 수 있다. 대용량 저장 장치(120) 및 RAM(106)은 또한 하나 이상의 프로그램 모듈을 저장할 수 있다. 구체적으로, 대용량 저장 장치(120) 및 RAM(106)은 장치 가상화 서비스(device virtualization service; DVS) 모듈(124)을 저장할 수 있다.
DVS 모듈(124)의 구성은 컴퓨팅 장치가 서비스 데이터 및 대화(interaction)를 제공하는 서비스 제공자 서버로서 구성되었는지, 모바일 장치로의 전송을 위한 데이터를 구성하는 DVS 서버로서 구성되었는지, 또는 모바일 장치 그 자체로서 구성되었는지에 따른다. 서비스 제공자 컴퓨팅 장치의 경우, DVS 모듈(124)은 DVS 서버에 데이터를 일반적인 포맷으로 전달하기 위한 통신 프로토콜 및 구성 파일을 제공한다. DVS 서버의 경우, DVS 모듈(124)은 서비스 서버로부터 수신된 데이터를 변환하기 위한 변환 및 패키징(packaging) 구성 데이터를 제공한다. DVS 모듈(124)은 모바일 장치로의 효율적인 전송을 위해 데이터를 패키징한다. 모바일 장치 그 자체인 경우, DVS 모듈(124)은 모바일 장치의 화면 상에 결과 사용자 인터페이스를 렌더링하기 위한 틱 클라이언트 애플리케이션을 포함할 수 있다. (팻(fat) 클라이언트 또는 리치(rich) 클라이언트로서도 알려진) 틱 클라이언트는 데이터 처리 동작을 수행하는 클라이언트이며, 데이터 저장을 위해 관련 서버에 의존한다.
명세서 및 청구범위 전반에 걸쳐, 다음의 용어는 문맥에서 그렇지 않다고 명확하게 지적하지 않는 한 명백하게 본원에 관련된 의미를 취한다.
일부 양태에서, "장치 가상화 서버", 즉, "DVS"란 DVS 서버를 통해 전달되는 일반적인 데이터로부터 모바일 장치 상의 사용자 인터페이스를 생성하기 위한, 통신에서의 서버측을 칭하든지 클라이언트측을 칭하든지, 네트워크 구성의 어떠한 부분이라도 말하는 것일 수 있다.
일부 양태에서, "DVS 서버"란 서비스로부터 일반적인 데이터를 획득하고, 이 일반적인 데이터를 최적화된 포맷으로 변환하고 패키징하는 것을 용이하게 하고, 이 최적화된 데이터를 모바일 장치에 전달하는 것을 용이하게 하고, 모바일 장치와 서비스 간의 통신을 위한 이벤트 핸들링(event handling)을 용이하게 하며, 기타 추가적인 태스크를 수행하도록 구성된 서버를 말하는 것이다.
일부 양태에서, "이벤트"란 사용자 인터페이스에 관련된 서비스로부터 및 서비스에 다시 통신을 트리거(trigger)하는 모바일 장치 상에 렌더링되는 사용자 인터페이스와의 대화를 말하는 것이다.
일부 양태에서, "위짓(Widget)"이란 사용자 경험(UX)을 제공하기 위한 사용자 인터페이스 엘리먼트를 말하는 것이다. 위짓의 한 예시적인 정의로서, 위짓은 디스플레이 프레임 또는 텍스트 상자 등의 인터페이스 컴포넌트일 수 있다.
DVS는 모바일 장치에 사용자 경험(UX)을 투영하는 것을 용이하게 한다. 일 실시예에서, DVS는 서비스가 UI 페이지 세트를 제공할 수 있게 해주는 인터페이스(API)를 제공하며 그 다음 이 페이지들은 이들 페이지의 위짓들을 레이아웃(lay out)한다. 위짓은 페이지에 포함된 데이터의 효율적인 저장을 위한 데이터 테이블을 포함할 수 있다. DVS는 장치 상에 최종 사용자 경험을 노출시키기를 원하는 서비스로부터의 장치 세부 사양들(specitics)을 추상화한다. DVS는 서비스에 의해 기술되고 그 다음 장치 상에 렌더링될 장치 독립적 UX를 제공한다. DVS는 또한 서비스가 장치에 적절한 미디어를 제공할 수 있도록 화면 크기, 지원되는 오디오 및 비디오 코덱(COmpress/DECompress technology; CODEC) 등의 장치 기능들을 서비스가 획득하게 할 수 있다.
도 2는 본원에 따른 장치 가상화(virtualization) 서비스를 제공하기 위한 예시적인 시스템을 도시한다. 시스템은 서비스(202), DVS 서버(들)(204), 및 모바일 장치(예를 들면, 참조번호(206))를 포함한다.
서비스(202)는 미디어를 제공하기 위한 서비스 또는, 뉴스나 스포츠 헤드라인을 제공하기 위한 기타 서비스에 대응할 수 있다. 특정 유형의 서비스는 개시물의 범위 또는 응용에 영향을 미치지 않으면서 변경될 수 있다. 서비스(202)는 서비스에 특정된 데이터를 저장하고 관리하며 이 데이터의 다른 장치로의 전송을 담당하는 서버 또는 기타 컴퓨팅 장치에 의해 물리적으로 제시될 수 있다.
DVS 서버(204)는 서비스(202)로부터 데이터를 수신하고, 전송을 위해 데이터를 패키징하고, 렌더링을 위해 모바일 장치(예를 들면, 참조번호(206))에 데이터를 송신하고, 모바일 장치 상에 일어나는 이벤트들을 핸들링하고, 이들 이벤트를 전달하도록 구성된다. DVS 서버(204)의 동작의 보다 상세한 설명이 도 3의 설명으로 이하 제공된다.
일단 패키징된 데이터가 모바일 장치(예를 들면, 참조번호(206))에 수신되면, 모바일 장치는 DVS 범용 씩 클라이언트를 이용하여 데이터를 렌더링한다. 범용 씩 클라이언트는 각 서비스에 대하여 맞춤형(customized) 프로그래밍이 모바일 장치 상에 상주하게 하지 않아도 복수의 서비스용 사용자 인터페이스를 렌더링할 수 있다. 시스템(200)에 관련된 프로세스들의 보다 상세한 설명이 이하 도 4의 설명에서 제공된다.
도 2는 DVS에 관련된 구성 요소들의 철저한 표현을 도시하는 것이 아니다. 추가적이거나 더 적은 구성요소가 포함될 수 있으며 DVS는 여전히 그 의도된 목적을 위하여 동작한다. 예를 들면, 대안적인 실시예에서, 서비스는 DVS 서버로의 저장을 위한 프로그램을 제공하여 통신이 서비스에 가입된 모바일 장치와 DVS 서버 간에 직접적으로 제공되도록 한다. 이러한 대안적인 실시예에서, DVS 서버는 서비스 제공자에게 데이터를 전달할 필요가 없다.
애플리케이션 프로그래밍 인터페이스(API)는 서비스로 하여금 장치 특징 세트를 획득하도록 하여 특정 모바일 장치에 제공되는 데이터를 커스터마이징(customize)하도록 해준다. 예를 들면, 서비스는 장치의 픽셀 해상도, 장치가 지원하는 미디어 포맷, 어떤 미디어 세팅이 최적의 장치 재생을 제공하는지 등을 결정할 수 있다.
음악 서비스 등의 통상적인 서비스는 종종 이들의 서비스 경험의 각종 다른 영역들에 대한 일련의 페이지 레이아웃을 제공한다. 예를 들면, 음악 서비스는 아티스트 페이지에 의한 열람(browse), 장르 페이지에 의한 열람 등을 포함할 수 있다. 음악 서비스는 또한 미디어 미리보기 페이지 및 구매 확인 페이지를 제공할 수 있다. 페이지들 간의 네비게이션(navigation)은 페이지 상의 하나 이상의 위짓(widget)에 첨가된 행위에 의해 정의된다. 이런 식으로, 서비스는 UI 흐름을 통한 충분한 제어를 가진다.
도 3은 장치 가상화 서비스(DVS)를 이용하여 서비스 데이터를 수락하기 위한 모바일 장치를 프로비져닝(provisioning)하기 위한 동작적인 흐름도를 도시한다. 모바일 장치 사용자가 특정 서비스(예를 들면, 음악 서비스)에 가입하는 것을 선택 하였을 때 프로세스(300)가 시작된다. 프로세싱은 동작(302)으로 계속된다.
동작(302)에서, 모바일 장치가 범용 씩 클라이언트를 찾아내어 다운로드할 수 있는 네트워크 주소를 포함하는 메시지가 모바일 장치에 송신된다. 일 실시예에서, DVS 서버는 범용 씩 클라이언트를 다운로드하기 위한 위치를 나타내는 URL(Uniform Resource Locator)을 포함하는 SMS(Short Messaging Service) 메시지를 모바일 장치에게 송신한다. 프로세싱은 동작(304)으로 계속된다.
동작(304)에서, 사용자는 모바일 장치에 범용 씩 클라이언트를 다운로드하는 다운로드 프로세스를 시작하기 위해 SMS 메시지로 송신된 URL을 선택하거나 클릭한다. 프로세싱은 동작(306)으로 계속된다.
동작(306)에서, 인터넷 서비스 서버 또는 HTTP 서버는 사용자의 모바일 장치에 송신된 URL 내에 인코딩되었던 사용자 ID를 인증한다. 인증은 SMS 메시지가 송신된 모바일 장치가 다운로드된 클라이언트 애플리케이션을 수신하는 장치임을 확인한다. 암호화된 사용자 ID 및 해쉬를 포함하는 쿠키(cookie)가 모바일 장치에 송신되어 향후 통신을 위해 모바일 장치가 인증된 모바일 장치로서 식별되도록 한다. 이 쿠키와 함께, 범용 씩 클라이언트가 모바일 장치에 다운로드된다. 프로세싱은 블록(308)으로 계속된다.
블록(308)에서, 범용 씩 클라이언트가 모바일 장치 상에 설치된다. 하나 이상의 설치 마법사가 설치에 이용될 수 있거나, 기타 설치 방법이 이용될 수 있다. 일단 범용 씩 클라이언트가 설치되면, 프로세싱은 동작(310)으로 계속된다.
동작(310)에서, 틱 클라이언트는 서비스에 관련된 데이터를 수신하도록 사용 자에 의해 활성화된다. 일단 틱 클라이언트가 활성화되면, 프로세싱은 동작(312)으로 계속된다.
동작(312)에서, 모바일 장치의 사용자 및 모바일 장치가 서비스 데이터를 액세스할 권한이 있음을 인증하기 위한 장치 키가 요청된다. 프로세싱은 동작(314)으로 계속된다.
동작(314)에서, 모바일 장치가 서비스 데이터를 볼 권한이 있는 모바일 장치임을 확인하기 위하여 쿠키의 유효성이 검사된다. 다른 실시예에서, 사용자이름/패스워드는 모바일 장치의 사용자가 서비스 데이터를 볼 수 있는 것에 대한 유효성을 검사하기 위하여 이용된다. 인증에 실패하면, 사용자의 자격증명(credential) 또는 모바일 장치의 자격증명이 의심된다(challenge). 의심된다면, 프로세싱은 동작(316)으로 이동한다.
동작(316)에서, 서비스 데이터의 렌더링된 버전을 생성하는 사용자 인터페이스는 자격증명 의심의 결과로 사용자의 자격증명을 요청하는 것으로 이행할 수 있다. 인증을 위해 사용자 ID 및 패스워드를 입력하기 위한 사용자 인터페이스 화면이 제시될 수 있다. 일단 자격증명이 제공되면, 프로세싱은 모바일 장치가 서비스 서버에 다시 인증될 수 있는 동작(312)으로 복귀한다. 일단 인증되면, 프로세싱은 동작(318)으로 계속된다.
동작(318)에서, 모바일 장치로의 서비스의 전달을 안전하게 하기 위한 장치 키 페어(pair)가 생성된다. 이 때 장치가 서비스 데이터를 액세스하고 있음을 나타내는 장치 기록이 생성된다. 프로세싱은 동작(320)으로 계속된다.
동작(320)에서, 장치 개인 키, 장치 ID, 및 다음 일련 번호가 모바일 장치에 반환된다. 장치 개인 키는 데이터가 모바일 장치에 의해 수신될 때 데이터의 출처(source)를 인증하는 데에 이용된다. 데이터 ID는 서비스에 대한 장치의 고유한 식별자를 제공하고, 향후의 통신에서 서비스 데이터 프로비젼을 촉진시키는 데에 이용될 수 있다. 다음 일련 번호는 장치가 서비스 데이터를 수신하는 것에 현재 관련되어 있는 곳을 나타낸다. 예를 들면, 서비스는 모바일 장치에 뉴스 아이템을 송신하는 뉴스 서비스일 수 있다. 사용자가 뉴스 서비스 아이템을 곧바로(in a while) 수신하지 않은 경우, 이는 일련 번호에 반영된다. 그 다음 일련 번호에 의해 나타난 이 시점 이후의 모든 뉴스 아이템이 모바일 장치에 전달될 수 있다. 프로세싱은 동작(322)으로 계속된다.
동작(322)에서, 개인 키, 장치 ID 및 일련 번호가 모바일 장치에 저장된다. 그 다음 프로세싱은 동작(324)으로 계속된다.
동작(324)에서, DVS 서버로부터 서비스에 대한 실제 데이터가 요청된다. DVS 서버에는 암호화된 버전의 장치 개인 키, 장치 ID, 일련 번호, 및 해쉬가, 모바일 장치가 실행되고 있는 범용 씩 클라이언트의 버전 번호와 함께 송신된다. 일단 DVS 서버에 요청이 제공되면, 프로세싱은 동작(326)으로 계속된다.
동작(326)에서, DVS 서버는 개인/공개 키 쌍 중 공개 키를 이용하여 장치 ID, 일련 번호, 해쉬, 및 버전 번호를 복호화하고 이들의 유효성을 검사한다. 그 다음 프로세싱은 동작(328)으로 계속된다.
동작(328)에서, DVS 서버는 공개 키를 이용하여 암호화된 다음 일련 번호, 실제 서비스 데이터, 및 임의의 특정 액션(예를 들면, 디버그 모드 인에이블링(enable))을 모바일 장치에 반환한다. 프로세싱은 동작(330)으로 계속된다.
동작(330)에서, 범용 씩 클라이언트는 서비스 데이터를 해석하고 서비스에 대한 상위 레벨 페이지를 디스플레이한다. 일단 완료되면, 그 다음에 사용자는 데이터와 대화할 수 있고 프로세싱은 다음 태스크로 이동한다.
프로세스(300)는 모바일 장치 상에 렌더링될 서비스 데이터를 수신하도록 모바일 장치를 프로비져닝하기 위한 일 양태이다. 다른 방법이 이용될 수 있다. 추가적으로, DVS 서버와 모바일 장치 간의 대화의 상위 레벨 설명이 도 4의 설명에 이하 제공된다. 그러나 프로세스(300)로 도시된 인증 프로세스는 본원에 개시된 다른 프로세스들과 동등하게 적용될 수 있음을 이해해야 한다.
도 4는 본 개시물에 따른, DVS 서버의 동작을 위한 예시적인 프로세스의 동작적인 흐름도를 도시한다. 서비스에 의해 사용자 경험(UX) 정의가 생성되고 이 UX 정의의 DVS 서버로의 전송이 개시되었을 때 프로세스(400)가 시작된다. 프로세싱은 동작(402)으로 계속된다.
동작(402)에서, UX 정의는 DVS 서버에 의해 수신된다. 일 실시예에서, UX 정의는 XML(Extensible Markup Language) 파일로서 제공된다. 다른 실시예는 다른 포맷에 따른 UX 정의를 수신할 수 있다. 프로세싱은 동작(404)으로 계속된다.
동작(404)에서, 서비스로부터 수신된 UX 정의 파일은 2진 코드로 컴파일(compile)된다. 2진 코드는 제한된 통신 대역폭을 유지하면서 모바일 장치에 전송될 수 있는 컴팩트한(compact) 형식의 데이터이다. 일단 2진 코드가 생성되면, 프로세싱은 동작(406)으로 계속된다.
동작(406)에서, 서비스에 대한 사용자 인터페이스를 렌더링하기 위해 2진 코드가 모바일 장치에 전송된다. 일 실시예에서, 2진 코드는 도 3에 관련하여 상술한 인증 프로세스에 따라 전달된다. 프로세싱은 판정 동작(408)으로 계속된다.
판정 동작(408)에서, 서비스 데이터를 포함하여 렌더링되는 사용자 인터페이스에 관련하여 이벤트가 발생하였는지에 대한 판정이 이루어진다. 이러한 이벤트(예를 들면, 마우스 클릭)를 나타내는 이벤트 통지가 DVS 서버에 의해 수신될 수 있다. 이벤트가 발생하면, 프로세싱은 동작(410)으로 계속된다.
동작(410)에서, 이벤트는 핸들링을 위해 서비스 서버로 라우팅된다. 일단 이벤트가 서비스 서버로 라우팅되면, 프로세스(400)는 종료되고, 응답을 모바일 장치로 다시 라우팅, 추가적인 이벤트를 수신, 또는 서비스 세션으로부터 모바일 장치를 로깅(logging)하는 것과 같은 다른 태스크로 이동한다.
도 5는 본원에 기술된 범용 씩 클라이언트에 의해 렌더링되는 서비스 사용자 인터페이스 화면의 스크린 샷을 도시한다. 렌더링된 화면은 서비스의 페이지에 대응된다. 각 특정 페이지는 위짓의 속성을 기술하는 일련의 위짓 정의들에 의해 정의되는데, 이 위짓의 속성은 이 페이지 상의 자신의 위치, 위짓의 영역들에 이용되는 비트맵, 이용되는 폰트, 및 이 위짓의 행위 및 외관에 영향을 미치는 기타 속성을 포함한다. 0 가지 이상의 행위들이 각 위짓에 첨가되어 클릭 인식 이벤트나 기타 값의 변경 등의 위짓이 생성할 수 있는 이벤트를 핸들링한다. 이 행위들은 다른 위짓으로 포커스를 이동, 다른 페이지로 이동, 서비스에 대한 카달로그나 미디 어 요청을 송신 등과 같은 액션에 대응한다. 위짓의 레이아웃은 절대 픽셀 좌표(absolute pixel coordinates)로 또는 제약사항 기반 레이아웃(constraint based layout)을 이용함으로써 지정될 수 있다. 제약사항은 다른 위짓에 관련된 위치 또는 규모(dimension), 화면/페이지 규모 또는 텍스트 폰트 규모를 지정하는 데에 이용될 수 있다. 이는 서비스가 다른 장치 화면 해상도 마다 페이지 레이아웃을 제공할 필요가 없도록 장치 추상화 수단을 제공한다.
많은 위짓들이 자신들의 값을 서비스가 제공하는 데이터 테이블와 바인딩함으로써 획득할 수 있다. 테이블 포맷 및 데이터가 서비스에 의해 지정된다. 전술한 음악 서비스 예는 아티스트, 앨범, 장르 및 트랙에 대한 테이블을 포함할 수 있다. 테이블은 그 값이 다른 테이블의 행들에 링크되는 하나 이상의 필드를 포함할 수 있다. 예를 들면, 아티스트 및 앨범 테이블은 특정 아티스트나 앨범에 대한 장르를 나타내기 위하여 장르 테이블에 링크될 가능성이 높을 것이다. 마찬가지로 앨범 테이블은 특정 앨범의 아티스트를 나타내기 위하여 아티스트 테이블에 링크될 것이다.
페이지 정의에서 바인딩이 관련될 수 있다. 위짓이 특정 데이터 테이블에 링크되도록 데이터 바인딩이 제공된다. 테이블은 또한 테이블 내의 필드의 특정 값을 가지는 엔트리로 필터링될 수도 있다. 예를 들면 특정 아티스트의 앨범을 디스플레이하기 위하여, 앨범 테이블은 ArtistID 필드가 선택된 ArtistID 값을 포함하는 행으로 필터링될 수 있다. 테이블에 저장된 값을 사용자에게 디스플레이될 수 있는 텍스트로 변환하기 위해 제공되는 옵션인 포맷 명세(specification)가 있 을 수 있다. 예를 들면, (수치로 저장된) 타임스탬프 값이 몇 가지 다른 방식(h:mm, hh:mm, hh:mm:ss, 등)으로 디스플레이될 수 있다.
서비스가 이 DVS 데이터를 DVS 서버에 제공했을 때, 전술한 바와 같이, 데이터는 사용자의 모바일 장치에 적절한 2진 포맷으로 "컴파일"된다. 이는 DVS를 사용하는 서비스와 장치 클라이언트 간의 추상화 계층을 제공한다. 따라서, DVS는 특정 모바일 장치 클라이언트 구현들 간의 다수의 차이점을 숨길 수 있다. 예를 들면, 일부 장치들은 범용 씩 클라이언트에 의해 제공되는 사용자 인터페이스 위짓을 통해 본래의(native) 미디어 플레이어를 노출시키는 기능을 가질 수 있다. 다른 장치들은 단지 서비스가 제공하는 사용자 인터페이스와는 별개인 본래의 재생 사용자 인터페이스를 통해 오디오를 재생하는 기능을 제공하기만 하면 된다. 이들 차이점은 서비스가 장치 세부 사양들을 "알아야"될 필요가 없도록 추상화될 수 있다.
장치 가상화 서비스는 모바일폰, 모바일 PDA, 랩톱 및 데스크톱, TV 셋톱 박스 및 사용자 인터페이스를 가지는 장치에 접속된 임의의 기타 네트워크를 지원할 수 있다. 모바일 장치로의 전송 이전에 데이터의 2진 패키징에 의해 보다 나은 대역폭을 이용하고, 모바일 장치의 외부에 있는 서비스 컨텐츠를 생성하기 위한 데이터 저장소(storage)를 보유함으로써 보다 나은 대역폭을 이용하는 사용자 인터페이스가 생성될 수 있다. 또한, 서비스 제공자는 현재 이용될 수 있는 각종 모바일 장치 유형에 대한 맞춤형 코드 없이도 맞춤형 사용자 인터페이스를 제공할 수 있다.
상술한 상세, 예시 및 데이터는 본 발명의 조합의 이용 및 제조의 완전한 설명을 제공한다. 본 발명의 사상 및 범위로부터 벗어나지 않는 본 발명의 다수의 실시예가 이루어질 수 있기 때문에, 본 발명은 이하 첨부된 청구항에 내재되어 있다.

Claims (20)

  1. 모바일 장치 상에 네트워킹된 서비스에 대한 사용자 인터페이스를 제공하기 위한 컴퓨터 구현 방법으로서,
    모바일 장치에 범용 씩 클라이언트(generalized thick client)를 제공하는 단계(308) - 상기 범용 씩 클라이언트는 상기 네트워킹된 서비스를 위한 사용자 인터페이스를 상기 모바일 장치에서 제공하도록 구성됨 - ;
    상기 모바일 장치로부터 데이터에 대한 요청을 수신하는 단계(324, 326);
    서비스 제공자로부터 상기 데이터를 요청하는 단계(328, 330) - 상기 서비스 제공자로부터 수신된 데이터는 장치 독립적임 - ;
    상기 서비스 제공자로부터의 데이터를 최적화된 포맷으로 컴파일하는 단계(404);
    최적화된 포맷의 데이터를 가지고 상기 장치에 응답하는 단계(406)
    를 포함하는, 사용자 인터페이스를 제공하기 위한 컴퓨터 구현 방법.
  2. 제1항에 있어서,
    상기 모바일 장치에 범용 씩 클라이언트를 제공하는 단계(308)는 상기 범용 씩 클라이언트를 다운로드하기 위한 위치를 나타내는 URL을 SMS 메시지로 송신하는 단계를 포함하는, 사용자 인터페이스를 제공하기 위한 컴퓨터 구현 방법.
  3. 제2항에 있어서,
    상기 범용 씩 클라이언트를 다운로드 하는 것(308)은 모바일 장치를 인증하고 암호화된 사용자 ID 및 해쉬를 포함하는 쿠키(cookie)를 송신하는 것을 포함하는, 사용자 인터페이스를 제공하기 위한 컴퓨터 구현 방법.
  4. 제3항에 있어서,
    상기 모바일 장치가 서비스 데이터를 요청했을 때 상기 모바일 장치가 상기 서비스 데이터를 볼 권한이 있는이 여부를 판정하기 위해 상기 쿠키의 유효성을 검사하는 단계(314)를 더 포함하는, 사용자 인터페이스를 제공하기 위한 컴퓨터 구현 방법.
  5. 제1항에 있어서,
    상기 범용 씩 클라이언트(308)는 서비스가 제공하는 데이터 테이블(service provided data tables)과 관련된 값을 포함하는 위짓(widget)을 포함하는, 사용자 인터페이스를 제공하기 위한 컴퓨터 구현 방법.
  6. 제1항에 있어서,
    상기 최적화된 포맷(406)은 상기 모바일 장치의 특징에 관련된 포맷을 포함하는, 사용자 인터페이스를 제공하기 위한 컴퓨터 구현 방법.
  7. 제7항에 있어서,
    상기 모바일 장치(206)의 특징은 화면 크기, 오디오 코덱(CODEC), 비디오 코덱, 픽셀 해상도, 및 지원되는 미디어 포맷 중 적어도 하나를 포함하는, 사용자 인터페이스를 제공하기 위한 컴퓨터 구현 방법.
  8. 모바일 장치에 UI를 렌더링하기 위해 장치 독립적인 사용자 경험(device independent user experience)을 제공하도록 서비스들로부터 모바일 장치 세부 사양(mobile device specifics)을 추상화하는 컴퓨터 실행가능 명령어를 포함하는 컴퓨터 판독가능 매체로서,
    상기 명령어는,
    상기 모바일 장치(206)의 특징을 획득하는 것;
    상기 모바일 장치로부터 데이터에 대한 요청을 수신하는 것(324, 326);
    서비스 제공자로부터 상기 데이터를 요청하는 것(328, 330) - 상기 서비스 제공자로부터 수신되는 데이터는 장치 독립적임 - ;
    상기 서비스 제공자로부터의 데이터를 최적화된 포맷으로 컴파일하는 것(404) - 최적화된 포맷은 상기 모바일 장치의 특징과 관련된 포맷을 포함함 - ; 및
    상기 최적화된 포맷의 데이터를 가지고 상기 수신된 데이터에 대한 요청에 응답하는 것(406) - 상기 최적화된 포맷의 데이터는 상기 모바일 장치의 범용 씩 클라이언트와 연관되도록 구성됨 -
    을 포함하는 컴퓨터 판독가능 매체.
  9. 제8항에 있어서,
    상기 모바일 장치(206)의 특징은 화면 크기, 오디오 코덱(CODEC), 비디오 코덱, 픽셀 해상도, 및 지원되는 미디어 포맷 중 적어도 하나를 포함하는 컴퓨터 판독가능 매체.
  10. 제8항에 있어서,
    상기 모바일 장치로부터 데이터에 대한 요청을 수신하는 것은 상기 요청에 관련된 쿠키의 유효성을 검사(314)함으로써 상기 요청을 인증하는 것을 포함하는 컴퓨터 판독가능 매체.
  11. 제8항에 있어서,
    장치 독립적인 데이터(402)는 모바일 장치의 유형에 대하여 최적으로 포매팅되지 않은 데이터를 포함하는 컴퓨터 판독가능 매체.
  12. 제8항에 있어서,
    상기 모바일 장치에 데이터 테이블을 제공하고 상기 데이터 테이블을 상기 범용 씩 클라이언트(308)에 관련된 적어도 하나의 위짓에 바인딩(binding)하는 것을 더 포함하는 컴퓨터 판독가능 매체.
  13. 제8항에 있어서,
    상기 서비스 제공자로부터의 데이터를 최적화된 포맷으로 컴파일하는 것(404)은 상기 서비스 제공자와 상기 모바일 장치 간의 추상화 계층을 제공하는 컴퓨터 판독가능 매체.
  14. 모바일 장치 상에 네트워킹된 서비스에 대한 사용자 인터페이스를 제공하기 위한 컴퓨터 구현 방법으로서,
    모바일 장치에 범용 씩 클라이언트를 제공하는 단계(308) - 상기 틱 클라이언트는 상기 모바일 장치에서 데이터 처리 장치를 가동시키고(perform) 상기 모바일 장치의 외부에 저장소(storage)를 보유하도록 구성됨 - ;
    모바일 장치(206)의 특징을 획득하는 단계;
    상기 모바일 장치로부터 데이터에 대한 요청을 수신하는 단계(324, 326);
    서비스 제공자로부터 상기 데이터를 요청하는 단계(328, 330) - 상기 서비스 제공자는 상기 데이터를 장치 독립적인 포맷(in a device independent format)으로 제공함 - ;
    상기 서비스 제공자로부터의 데이터를 최적화된 포맷으로 컴파일하는 단계(404) - 최적화된 포맷은 상기 모바일 장치 특징과 관련된 포맷을 포함함 - ; 및
    상기 최적화된 포맷의 데이터를 상기 범용 씩 클라이언트에 송출함으로써 상기 수신된 데이터에 대한 요청에 응답하는 단계(406)
    를 포함하는, 사용자 인터페이스를 제공하기 위한 컴퓨터 구현 방법.
  15. 제14항에 있어서,
    상기 모바일 장치에 범용 씩 클라이언트를 제공하는 단계(308)는 상기 범용 씩 클라이언트를 다운로드하기 위한 위치를 나타내는 URL을 SMS 메시지로 송신하는 단계를 포함하는, 사용자 인터페이스를 제공하기 위한 컴퓨터 구현 방법.
  16. 제15항에 있어서,
    상기 범용 씩 클라이언트를 다운로드 하는 것(308)은 모바일 장치를 인증하고 암호화된 사용자 ID 및 해쉬를 포함하는 쿠키를 송신하는 것을 포함하는, 사용자 인터페이스를 제공하기 위한 컴퓨터 구현 방법.
  17. 제14항에 있어서,
    상기 범용 씩 클라이언트(308)는 서비스가 제공하는 데이터 테이블과 관련된 값을 포함하는 위짓(widget)을 포함하는, 사용자 인터페이스를 제공하기 위한 컴퓨터 구현 방법.
  18. 제14항에 있어서,
    상기 모바일 장치에 데이터 테이블을 제공하고 상기 데이터 테이블을 상기 범용 씩 클라이언트(308)에 관련된 적어도 하나의 위짓에 바인딩하는 단계를 더 포 함하는, 사용자 인터페이스를 제공하기 위한 컴퓨터 구현 방법.
  19. 제14항에 있어서,
    상기 서비스 제공자로부터의 데이터를 최적화된 포맷으로 컴파일하는 단계(404)는 상기 서비스 제공자와 상기 모바일 장치 간의 추상화 계층을 제공하는 것인, 사용자 인터페이스를 제공하기 위한 컴퓨터 구현 방법.
  20. 제14항에 있어서,
    상기 모바일 장치(206)의 특징은 화면 크기, 오디오 코덱(CODEC), 비디오 코덱, 픽셀 해상도, 및 지원되는 미디어 포맷 중 적어도 하나를 포함하는, 사용자 인터페이스를 제공하기 위한 컴퓨터 구현 방법.
KR1020087031050A 2006-06-23 2007-05-16 사용자 인터페이스를 제공하기 위한 컴퓨터 구현 방법 및 컴퓨터 판독가능 매체 KR101432319B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US11/474,303 2006-06-23
US11/474,303 US8560595B2 (en) 2006-06-23 2006-06-23 Virtualization of mobile device user experience
PCT/US2007/011714 WO2008002361A1 (en) 2006-06-23 2007-05-16 Virtualization of mobile device user experience

Publications (2)

Publication Number Publication Date
KR20090033186A true KR20090033186A (ko) 2009-04-01
KR101432319B1 KR101432319B1 (ko) 2014-08-20

Family

ID=38845938

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020087031050A KR101432319B1 (ko) 2006-06-23 2007-05-16 사용자 인터페이스를 제공하기 위한 컴퓨터 구현 방법 및 컴퓨터 판독가능 매체

Country Status (11)

Country Link
US (3) US8560595B2 (ko)
EP (1) EP2033461B1 (ko)
JP (1) JP5050055B2 (ko)
KR (1) KR101432319B1 (ko)
CN (1) CN101473675B (ko)
BR (1) BRPI0711782B1 (ko)
CA (1) CA2651508C (ko)
ES (1) ES2665916T3 (ko)
IL (1) IL194979A (ko)
RU (1) RU2439681C2 (ko)
WO (1) WO2008002361A1 (ko)

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060235883A1 (en) 2005-04-18 2006-10-19 Krebs Mark S Multimedia system for mobile client platforms
US8560595B2 (en) 2006-06-23 2013-10-15 Microsoft Corporation Virtualization of mobile device user experience
US8332435B2 (en) * 2006-10-03 2012-12-11 Salesforce.Com, Inc. Method and system for customizing a user interface to an on-demand database service
US20080242306A1 (en) * 2007-03-27 2008-10-02 Motorola, Inc. Apparatus and Method to Facilitate Use of a Cookie to Protect an Intranet
US8325925B2 (en) * 2007-07-10 2012-12-04 Hewlett-Packard Development Company, L.P. Delivery of messages to a receiver mobile device
US8977710B2 (en) * 2008-06-18 2015-03-10 Qualcomm, Incorporated Remote selection and authorization of collected media transmission
US8646949B2 (en) * 2010-03-03 2014-02-11 LumenFlow Corp. Constrained folded path resonant white light scintillator
US9237215B2 (en) * 2012-02-10 2016-01-12 Time Warner Cable Enterprises Llc Remote activation of mobile applications
US20140282032A1 (en) * 2013-03-15 2014-09-18 Microsoft Corporation Dynamically configuring user experiences with action uniform resource identifiers
US9792459B2 (en) * 2013-04-29 2017-10-17 Sri International Flexible policy arbitration control suite
WO2015102714A2 (en) * 2013-10-11 2015-07-09 Sri International Polymorphic computing architectures
US20170083865A1 (en) * 2014-06-09 2017-03-23 Hewlett Packard Enterprise Development Lp Context-based experience
CN108989325A (zh) * 2018-08-03 2018-12-11 华数传媒网络有限公司 加密通信方法、装置及系统

Family Cites Families (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06250959A (ja) 1993-02-25 1994-09-09 Hitachi Ltd ホスト・端末間通信方式
JP3210603B2 (ja) 1997-07-04 2001-09-17 インターナショナル・ビジネス・マシーンズ・コーポレーション イメージの処理方法、サーバ及び記録媒体
US6300947B1 (en) * 1998-07-06 2001-10-09 International Business Machines Corporation Display screen and window size related web page adaptation system
US6993575B2 (en) 2000-02-22 2006-01-31 Oracle International Corporation Using one device to configure and emulate web site content to be displayed on another device
US7613810B2 (en) * 2000-09-27 2009-11-03 Nokia Inc. Segmenting electronic documents for use on a device of limited capability
EP1337928B1 (en) * 2000-10-17 2018-06-13 Citrix Systems, Inc. Network and method for invisible proxy and hooking systems with wireless communication
GB2377518B (en) * 2001-02-12 2003-10-22 Altio Ltd Client software enabling a client to run a network based application
US20020144282A1 (en) * 2001-03-29 2002-10-03 Koninklijke Philips Electronics N.V. Personalizing CE equipment configuration at server via web-enabled device
JP2003323402A (ja) 2002-05-01 2003-11-14 Ntt Docomo Inc シンクライアントシステム、並びに、シンクライアント端末、シンクライアント端末制御方法、及び、制御プログラム
US7100049B2 (en) 2002-05-10 2006-08-29 Rsa Security Inc. Method and apparatus for authentication of users and web sites
WO2003096669A2 (en) 2002-05-10 2003-11-20 Reisman Richard R Method and apparatus for browsing using multiple coordinated device
FI20021951A (fi) * 2002-11-01 2004-05-02 Meridea Financial Software Oy Palvelun, erityisesti finanssipalvelun, toteuttaminen verkossa, jossa on kannettavia päätelaitteita
US20040093432A1 (en) * 2002-11-07 2004-05-13 Eastman Kodak Company Method and system for conducting image processing from a mobile client device
US7360096B2 (en) 2002-11-20 2008-04-15 Microsoft Corporation Securely processing client credentials used for Web-based access to resources
US20050005259A1 (en) * 2003-03-14 2005-01-06 Infowave Software, Inc. System and method for communication and mapping of business objects between mobile client devices and a plurality of backend systems
US20040240408A1 (en) * 2003-06-02 2004-12-02 Mobimate Ltd. System, method and apparatus for the generation and deployment of mobile applications
US7577659B2 (en) * 2003-10-24 2009-08-18 Microsoft Corporation Interoperable credential gathering and access modularity
US20050197157A1 (en) * 2004-02-13 2005-09-08 Wendong Li System enabling easy application development on mobile devices
US7546554B2 (en) 2004-03-31 2009-06-09 Fuji Xerox Co., Ltd. Systems and methods for browsing multimedia content on small mobile devices
JP4042729B2 (ja) 2004-08-27 2008-02-06 ソニー株式会社 再生装置および再生方法
US7937485B2 (en) * 2004-08-31 2011-05-03 At&T Intellectual Property I, L.P. Streaming gateway
US7506006B2 (en) 2004-09-03 2009-03-17 Microsoft Corporation Synchronization for smart clients
GB2419790B (en) * 2004-10-29 2009-04-08 Hewlett Packard Development Co Asynchronous messaging in web services
GB0426736D0 (en) 2004-12-06 2005-01-12 Omnifone Ltd MyFone
US20060253584A1 (en) * 2005-05-03 2006-11-09 Dixon Christopher J Reputation of an entity associated with a content item
US8560595B2 (en) 2006-06-23 2013-10-15 Microsoft Corporation Virtualization of mobile device user experience

Also Published As

Publication number Publication date
EP2033461A4 (en) 2014-01-08
EP2033461A1 (en) 2009-03-11
US20170242512A1 (en) 2017-08-24
WO2008002361A1 (en) 2008-01-03
EP2033461B1 (en) 2018-03-07
CN101473675A (zh) 2009-07-01
US8560595B2 (en) 2013-10-15
BRPI0711782B1 (pt) 2021-03-02
CN101473675B (zh) 2011-12-28
BRPI0711782A8 (pt) 2017-01-17
RU2439681C2 (ru) 2012-01-10
RU2008150844A (ru) 2010-06-27
CA2651508A1 (en) 2008-01-03
BRPI0711782A2 (pt) 2011-11-29
IL194979A (en) 2016-02-29
US20140047363A1 (en) 2014-02-13
KR101432319B1 (ko) 2014-08-20
US9542062B2 (en) 2017-01-10
CA2651508C (en) 2014-07-15
IL194979A0 (en) 2009-08-03
JP5050055B2 (ja) 2012-10-17
ES2665916T3 (es) 2018-04-30
US20070298719A1 (en) 2007-12-27
JP2009541894A (ja) 2009-11-26

Similar Documents

Publication Publication Date Title
KR101432319B1 (ko) 사용자 인터페이스를 제공하기 위한 컴퓨터 구현 방법 및 컴퓨터 판독가능 매체
US20210294670A1 (en) Systems and methods for controlling a local application through a web page
US11875140B2 (en) Application support for network devices
US20100058353A1 (en) Exposure of remotely invokable method through a webpage to an application outside web browser
CN111953709B (zh) 多媒体内容传输方法、多媒体内容展示方法、装置和电子设备
KR101679338B1 (ko) 공유 웹사이트로의 콘텐츠 자동제출
US20230111113A1 (en) Page loading method and display apparatus
KR102126723B1 (ko) 웹 콘텐츠 관리 방법 및 장치
JP2008165771A (ja) ファイルのダウンロードシステムおよび方法

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
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: 20170719

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20180718

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20190718

Year of fee payment: 6