KR20200143525A - 원격 키보드 서비스 제공 - Google Patents

원격 키보드 서비스 제공 Download PDF

Info

Publication number
KR20200143525A
KR20200143525A KR1020207036339A KR20207036339A KR20200143525A KR 20200143525 A KR20200143525 A KR 20200143525A KR 1020207036339 A KR1020207036339 A KR 1020207036339A KR 20207036339 A KR20207036339 A KR 20207036339A KR 20200143525 A KR20200143525 A KR 20200143525A
Authority
KR
South Korea
Prior art keywords
user
user device
virtual keyboard
input
media
Prior art date
Application number
KR1020207036339A
Other languages
English (en)
Other versions
KR102407021B1 (ko
Inventor
알렉산더 디. 산시앙코
보브 브래들리
마르크 제이. 크로치말
그레이엄 클라크
Original Assignee
애플 인크.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 애플 인크. filed Critical 애플 인크.
Priority to KR1020227018716A priority Critical patent/KR102581869B1/ko
Publication of KR20200143525A publication Critical patent/KR20200143525A/ko
Application granted granted Critical
Publication of KR102407021B1 publication Critical patent/KR102407021B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0487Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser
    • G06F3/0488Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures
    • G06F3/04886Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures by partitioning the display area of the touch-screen or the surface of the digitising tablet into independently controllable areas, e.g. virtual keyboards or menus
    • 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/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/041Digitisers, e.g. for touch screens or touch pads, characterised by the transducing means
    • G06F3/0412Digitisers structurally integrated in a display
    • 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/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/041Digitisers, e.g. for touch screens or touch pads, characterised by the transducing means
    • G06F3/044Digitisers, e.g. for touch screens or touch pads, characterised by the transducing means by capacitive means
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0487Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser
    • G06F3/0489Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using dedicated keyboard keys or combinations thereof
    • G06F3/04895Guidance during keyboard input operation, e.g. prompting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/451Execution arrangements for user interfaces
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising
    • G06Q30/0241Advertisements
    • 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/72409User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality by interfacing with external accessories
    • H04M1/72412User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality by interfacing with external accessories using two-way short-range wireless interfaces
    • H04M1/7253
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/41Structure of client; Structure of client peripherals
    • H04N21/4104Peripherals receiving signals from specially adapted client devices
    • H04N21/4126The peripheral being portable, e.g. PDAs or mobile phones
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/41Structure of client; Structure of client peripherals
    • H04N21/4104Peripherals receiving signals from specially adapted client devices
    • H04N21/4126The peripheral being portable, e.g. PDAs or mobile phones
    • H04N21/41265The peripheral being portable, e.g. PDAs or mobile phones having a remote control device for bidirectional communication between the remote control device and client device
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/41Structure of client; Structure of client peripherals
    • H04N21/422Input-only peripherals, i.e. input devices connected to specially adapted client devices, e.g. global positioning system [GPS]
    • H04N21/42204User interfaces specially adapted for controlling a client device through a remote control device; Remote control devices therefor
    • H04N21/42206User interfaces specially adapted for controlling a client device through a remote control device; Remote control devices therefor characterized by hardware details
    • H04N21/42212Specific keyboard arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/06Authentication
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/06Authentication
    • H04W12/068Authentication using credential vaults, e.g. password manager applications or one time password [OTP] applications
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/08Access security
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/08Access security
    • H04W12/086Access security using security domains
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/80Services using short range communication, e.g. near-field communication [NFC], radio-frequency identification [RFID] or low energy communication
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce

Abstract

본 명세서에 기술된 시스템들은 애플리케이션을 호출하거나 컴퓨팅 디바이스를 잠금해제할 필요 없이 컴퓨팅 디바이스 상의 미디어 디바이스에 대한 원격 키보드 서비스를 제공한다. 컴퓨팅 디바이스는 다른 디바이스 상의 텍스트 입력 필드가 선택된 것을 나타내는 메시지를 수신할 수 있고, 선택된 텍스트 입력 필드에 텍스트 입력을 제공하기 위해 컴퓨팅 디바이스 상의 가상 키보드를 호출하도록 사용자에게 프롬프트하는 통지를 사용자에게 제시할 수 있다. 컴퓨팅 디바이스는 통지를 선택하는 사용자 입력을 수신할 수 있고, 다른 디바이스에 텍스트 입력을 제공하기 위한 가상 키보드를 제시할 수 있다. 컴퓨팅 디바이스는 사용자로부터 문자들을 선택하는 키보드 입력을 수신할 수 있고, 문자들을 다른 디바이스에 전송할 수 있다. 이어서, 다른 디바이스는 문자들을 선택된 텍스트 입력 필드에 대한 텍스트 입력으로서 사용할 수 있다.

Description

원격 키보드 서비스 제공{PROVIDING A REMOTE KEYBOARD SERVICE}
관련 출원에 대한 상호 참조
본 출원은 2016년 6월 10일자로 출원된 미국 가출원 제62/348,771호에 대한 우선권을 주장하며, 이 출원의 내용은 전체적으로 본 명세서에 참고로 포함된다.
기술분야
본 개시내용은 일반적으로 상이한 디바이스들 사이의 서비스들을 조정하는 것에 관한 것이다.
스트리밍 미디어 디바이스들은 점점 더 인기가 많아지고 있다. 스트리밍 미디어 디바이스들은 요구에 따라 사용자가 미디어 콘텐츠를 브라우징, 검색, 및 시청할 수 있게 한다. 그러나, 이러한 스트리밍 미디어 디바이스들에 대한 입력 메커니즘들은, 종종 검색 질의를 텍스트 입력 제어부(예컨대, 텍스트 입력 박스) 내로 입력할 때 사용자가 개별 텍스트 문자들을 헌트(hunt) 및 선택할 것을 요구하는 키보드들을 갖지 않는 단순한 원격 제어부들이다. 따라서, 이러한 스트리밍 미디어 디바이스들에 텍스트 입력을 제공하는 프로세스는 사용자에게 부담스러울 수 있다.
일부 스트리밍 미디어 디바이스들은 사용자가 사용자의 핸드헬드 디바이스(예컨대, 스마트폰, 태블릿 컴퓨터 등) 상의 가상 키보드를 사용하여 텍스트 입력을 제공할 수 있게 하는 대응하는 애플리케이션을 갖는다. 그러나, 사용자는 스트리밍 미디어 디바이스에 텍스트 입력을 제공하기 위해 가상 키보드를 사용할 수 있기 전에 애플리케이션을 설치 및 호출해야 한다.
본 명세서에 기술된 시스템들은 애플리케이션을 호출하거나 컴퓨팅 디바이스를 잠금해제할 필요 없이 별개의 컴퓨팅 디바이스 상의 미디어 디바이스에 대한 원격 키보드 서비스를 제공한다. 컴퓨팅 디바이스는 다른 디바이스 상의 텍스트 입력 필드가 선택된 것을 나타내는 메시지를 수신할 수 있고, 선택된 텍스트 입력 필드에 텍스트 입력을 제공하기 위해 컴퓨팅 디바이스 상의 가상 키보드를 호출하도록 사용자에게 프롬프트하는 통지를 사용자에게 제시할 수 있다. 컴퓨팅 디바이스는 통지를 선택하는 사용자 입력을 수신할 수 있고, 다른 디바이스에 텍스트 입력을 제공하기 위한 가상 키보드를 제시할 수 있다. 컴퓨팅 디바이스는 사용자로부터 문자들을 선택하는 키보드 입력을 수신할 수 있고, 문자들을 다른 디바이스에 전송할 수 있다. 이어서, 다른 디바이스는 문자들을 선택된 텍스트 입력 필드에 대한 텍스트 입력으로서 사용할 수 있다.
특정 구현예들은 적어도 하기의 이점들을 제공한다. 원격 가상 키보드는 특정 애플리케이션을 호출할 필요 없이 사용자 디바이스들에 의해 제공될 수 있다. 원격 가상 키보드는 사용자의 디바이스가 잠금된 때에도 제공될 수 있다. 키보드에 대한 필요성이 모든 사용자 디바이스들에 광고되기 때문에, 사용자는 사용자에게 가장 편리한 사용자 디바이스를 선택할 수 있다.
하나 이상의 구현예들의 상세사항들이 첨부 도면 및 이하의 설명에서 기재된다. 다른 특징들, 태양들, 및 잠재적 이점들이 설명 및 도면으로부터 그리고 청구범위로부터 명백해질 것이다.
도 1은 사용자 디바이스 상에 원격 키보드 서비스를 제공하기 위한 예시적인 시스템(100)의 블록도이다.
도 2는 사용자 디바이스 상에 원격 키보드 통지를 제시하기 위한 예시적인 그래픽 사용자 인터페이스를 도시한다.
도 3은 사용자 디바이스 상에 가상 키보드를 제시하기 위한 예시적인 그래픽 사용자 인터페이스를 도시한다.
도 4는 사용자 디바이스 상에 가상 키보드를 제시하기 위한 예시적인 그래픽 사용자 인터페이스를 도시한다.
도 5는 사용자 디바이스 상에 원격 키보드 서비스를 제공하기 위한 예시적인 프로세스의 흐름도이다.
도 6은 사용자 디바이스들로부터 원격 키보드 서비스를 요청하기 위한 예시적인 프로세스의 흐름도이다.
도 7은 도 1 내지 도 6의 특징들 및 프로세스들을 구현할 수 있는 예시적인 컴퓨팅 디바이스의 블록도이다.
다양한 도면들에서의 유사한 도면 부호들은 유사한 요소들을 가리킨다.
개요
사용자 디바이스 상에 원격 키보드 서비스를 제공하기 위한 방법, 장치, 및 컴퓨터 프로그램의 예들이 아래에 개시된다. 이하의 설명에서, 설명을 제공하는 목적상, 본 발명의 실시예들에 대한 완전한 이해를 제공하기 위해 다수의 구체적인 상세한 설명들이 기술되어 있다. 그러나, 본 발명의 실시예들이 이러한 구체적인 상세 사항들 없이 또는 동등한 배열로 실시될 수 있음이 당업자에게 명백하다. 다른 사례들에서, 주지의 구조들 및 디바이스들은 본 발명의 실시예들을 불필요하게 이해하기 어렵게 하는 것을 피하기 위해 블록도 형태로 도시된다.
도 1은 사용자 디바이스 상에 원격 키보드 서비스를 제공하기 위한 예시적인 시스템(100)의 블록도이다. 일부 구현예들에서, 시스템(100)은 사용자 디바이스들(102)(예컨대, 102a, 102b,... 102n)을 포함할 수 있다. 예를 들어, 사용자 디바이스(102a)는 스마트폰, 태블릿 컴퓨터, 텔레비전, 데스크톱 컴퓨터, 랩톱 컴퓨터, 가정용 디바이스, 전자 책 디바이스, 게임 디바이스, 스마트 시계, 스마트 안경 및/또는 다른 모바일 또는 웨어러블 디바이스, 이러한 디바이스들의 액세서리들 및 주변장치들, 또는 이들의 임의의 조합과 같은 컴퓨팅 디바이스일 수 있다.
일부 구현예들에서, 사용자 디바이스들(102)(예컨대, 사용자 디바이스(102a), 사용자 디바이스(102b),... 사용자 디바이스(102n))은 다양한 서비스들 및 특징들을 제공하는 각자의 운영 체제들(104)과 함께 구성될 수 있다. 예를 들어, 운영 체제들(104)은 사용자 디바이스들(102)의 매우 근접지 내의 상이한 디바이스들로부터 상태 광고 메시지들(예컨대, 블루투스 패킷들, 블루투스 LE 패킷들 등)을 수신 및 디코딩하도록 구성될 수 있다. 상태 광고 메시지들은 상이한 서비스들의 이용가능성, 상이한 디바이스들 사이의 프로세싱의 조정에 필요한 데이터, 및/또는 다른 디바이스들로부터의 정보 및/또는 서비스들에 대한 요청들을 포함하는, 다른 디바이스들의 현재 상태를 설명하는 정보를 포함할 수 있다. 예를 들어, 사용자 디바이스(102a)는 이러한 디바이스들의 현재 상태를 설명하는 사용자 디바이스(102b 및/또는 102n)로부터의 상태 광고 메시지들을 수신할 수 있다.
일부 구현예들에서, 사용자 디바이스들(102)은 미디어 디바이스(106)로부터 상태 광고 메시지들을 수신할 수 있다. 예를 들어, 미디어 디바이스(106)는 스트리밍 미디어 플레이어, 셋톱 박스, 스마트 텔레비전, 랩톱 컴퓨터, 또는 다른 컴퓨팅 디바이스와 같은 컴퓨팅 디바이스일 수 있다. 사용자 디바이스들(102)의 사용자는 미디어 디바이스(106)와 상호작용하여 재생할 미디어 항목들 및/또는 뷰잉할 다른 콘텐츠를 브라우징 및 검색할 수 있다. 예를 들어, 미디어 디바이스(106)는 미디어 디바이스(106)가 미디어 디바이스(106)의 디스플레이 상에 제시할 미디어 항목들(예컨대, 영화들, 웹사이트들, 이미지들, 사진 등)을 사용자가 브라우징, 검색 및 선택할 수 있게 하는 미디어 디바이스(106)에 연결된 디스플레이(예컨대, 텔레비전, 컴퓨터 모니터 등) 상에 그래픽 사용자 인터페이스들을 제시할 수 있다.
일부 구현예들에서, 미디어 디바이스(106)는 사용자로부터 텍스트 입력을 요구할 수 있다. 예를 들어, 미디어 디바이스(106)는 미디어 항목들을 검색할 때 사용자로부터 텍스트 입력을 요구할 수 있다. 미디어 디바이스(106)는 사용자의 로그인 인증서들을 요구하는 구독 서비스에 로그인할 때 사용자로부터 텍스트 입력을 요구할 수 있다. 때때로 미디어 디바이스(106)의 운영 체제(108)는 일부 텍스트 입력을 요구할 것이다. 예를 들어, 미디어 디바이스(106)는 네트워크 구성 입력, 로그인 인증서들 등을 수신하기 위해 미디어 디바이스(106)의 디스플레이 상에 프롬프트 및 텍스트 입력 제어부를 제시할 수 있다. 때때로 애플리케이션(110)(예컨대, 미디어 콘텐츠 제공자 소프트웨어 애플리케이션, 비디오 애플리케이션, 음악 애플리케이션, 게임 애플리케이션, 날씨 애플리케이션 등)은 사용자로부터 텍스트 입력을 수신하기 위한 프롬프트 및 텍스트 입력 제어부를 제시할 것이다. 예를 들어, 애플리케이션(110)은 사용자가 검색 질의를 정의하는 텍스트를 입력할 수 있게 하는 미디어 항목 검색 특징부를 제공할 수 있다.
일부 구현예들에서, 사용자는 원격 제어 디바이스(120)를 사용하여 텍스트 입력을 제공할 수 있다. 예를 들어, 미디어 디바이스(106)는 미디어 디바이스(106)상의 커서를 이동시키고 디스플레이 상의 항목들을 선택하기 위해 몇 개의 방향 버튼들 및 선택 버튼을 갖는 원격 제어 디바이스(120)와 함께 판매되거나 그와 함께 작동할 수 있다. 때때로 원격 제어 디바이스(120)는 터치 인터페이스를 가질 수 있고, 원격 제어 디바이스(120)는 미디어 디바이스(106) 상의 커서를 이동시키고 디스플레이 상의 항목들을 선택하기 위해 터치 입력 제스처들(예컨대, 스와이프 업, 스와이프 다운, 스와이프 좌측, 스와이프 우측, 탭 등)을 수신할 수 있다. 원격 제어 디바이스(120)를 갖는 미디어 디바이스(106)에 텍스트 입력을 제공할 때, 사용자는 전형적으로 원격 제어 디바이스(120)를 사용하여 그래픽 사용자 인터페이스 상에 제시된 문자들의 어레이 위로 커서를 이동시키고 적절한 스트링이 구축될 때까지 한 번에 하나의 문자를 선택해야 한다. 이러한 프로세스는 사용자에게 느리고 부담을 줄 수 있고, 일반적으로 미디어 디바이스(106)가 재생할 것을 사용자가 원하는 미디어 항목을 찾기 위해 사용자가 이러한 헌트-앤드-팩(hunt-and-peck) 프로세스를 반복적으로 수행해야 한다면, 일반적으로 사용자를 피곤하게 한다.
원격 제어 디바이스(120)로 텍스트를 입력하는 것에 대한 상기 문제를 해결하기 위해, 사용자 디바이스들(102)은 미디어 디바이스(106)와 원격으로 상호작용하기 위한 원격 제어 애플리케이션들(104)(예컨대, 104a, 104b)로 구성될 수 있다. 예를 들어, 원격 제어 애플리케이션들은 네트워크(112)를 통해 미디어 디바이스(106)를 제어할 수 있다. 네트워크(112)는, 예를 들어, 근거리 네트워크, 광역 네트워크, 로컬 Wi-Fi 네트워크, 애드혹 피어-투-피어 네트워크 등일 수 있다. 네트워크(112)는 인터넷 프로토콜, 블루투스, 저전력 블루투스, 또는 임의의 다른 네트워킹 프로토콜을 사용하여 구현될 수 있다.
일부 구현예들에서, 원격 제어 애플리케이션들(104)은 원격 제어 디바이스(120)와 유사한 기능을 제공하도록 구성될 수 있다. 예를 들어, 원격 제어 애플리케이션들(104)은 커서를 이동시키기 위한 방향 제어부들 및 미디어 디바이스(106)에 의해 제시되는 항목을 선택하기 위한 선택 제어부를 사용자 디바이스들(102)의 디스플레이 상에 제시할 수 있다. 그러나, 원격 제어 애플리케이션들(104)은 또한 사용자가 미디어 디바이스(106)에 텍스트 입력을 제공하기 위해 사용할 수 있는 가상 키보드를 제공할 수 있다. 예를 들어, 가상 키보드는 사용자 디바이스(102a)의 터치 감응형 디스플레이 상의 원격 제어 애플리케이션(104a)에 의해 제시될 수 있고, 사용자는 문자들을 선택하고 요구되는 텍스트 입력에 대응하는 스트링들을 생성하도록 가상 키보드 상에 타이핑할 수 있다. 이어서, 사용자 디바이스(102a)는 네트워크(112)를 통해 미디어 디바이스(106)로 텍스트 입력을 전송할 수 있다. 이어서, 미디어 디바이스(105)는 검색을 수행하거나, 운영 체제(108)를 구성하거나, 애플리케이션(110)을 구성하거나, 임의의 다른 목적을 위해 텍스트 입력을 사용할 수 있다.
원격 제어 애플리케이션(104)에 의해 제공되는 가상 키보드에 텍스트 입력을 제공하는 것은 원격 제어 디바이스(120)를 사용하여 텍스트를 입력하는 것에 비해 개선되지만, 사용자는 여전히 사용자 디바이스(102a)를 잠금해제하고, 가상 키보드에 액세스하고 이를 사용하여 미디어 디바이스(106)에 텍스트 입력을 제공할 수 있기 전에 원격 제어 애플리케이션(104a)을 호출하는 것에 의해 여전히 부담된다. 따라서, 일부 구현예들에서, 사용자 디바이스(102a)의 운영 체제(104a)는 미디어 디바이스(106)에 텍스트 입력을 제공하기 위한 가상 키보드 서비스를 제공할 수 있다. 예를 들어, 사용자 디바이스(102a)는 사용자 디바이스(102a)를 잠금해제하지 않고 가상 키보드 서비스를 제공할 수 있다. 사용자 디바이스(102a)는 원격 제어 애플리케이션(104a)을 호출하지 않고 가상 키보드 서비스를 제공할 수 있다.
일부 구현예들에서, 미디어 디바이스(106)는 사용자 디바이스들(102)에 의해 제공된 원격 키보드 서비스에 연결하도록 원격 키보드 서비스 요청을 브로드캐스트할 수 있다. 예를 들어, 원격 키보드 서비스 요청은 텍스트 입력 제어부가 미디어 디바이스(106) 상에서 선택되었음을 나타내는 디바이스 상태 광고 메시지(예를 들어, 그의 일부)일 수 있다. 예를 들어, 사용자가 (예컨대, 원격 제어 디바이스(120)를 사용하여) 미디어 디바이스(106)와 상호작용하고 텍스트 입력 필드를 선택하는 경우, 미디어 디바이스(106)는 텍스트 입력 필드가 선택되었음을 나타내는 상태 광고 메시지를 생성할 수 있다. 예를 들어, 애플리케이션(110)이 미디어 항목 검색 그래픽 사용자 인터페이스를 제시하고 있는 경우, 사용자는 사용자가 검색 질의를 제공할 수 있도록 그래픽 사용자 인터페이스 상의 텍스트 입력 제어부를 선택할 수 있다. 텍스트 입력 제어부를 선택하는 것에 응답하여, 애플리케이션(110)은 선택된 텍스트 입력 제어부에 입력을 제공하기 위한 키보드 지지부를 요청하도록 운영 체제(108)의 애플리케이션 프로그래밍 인터페이스(API)를 호출할 수 있다.
운영 체제(108)가 텍스트 입력을 요구하는 구성 그래픽 사용자 인터페이스를 제시하고 있는 경우, 사용자는 사용자가 적절한 구성 스트링(예컨대, 네트워크 식별자, 계정 인증서들 등)을 제공할 수 있도록 그래픽 사용자 인터페이스 상의 텍스트 입력 제어부를 선택할 수 있다. 텍스트 입력 제어부를 선택하는 것에 응답하여, 운영 체제(108)는 선택된 텍스트 입력 제어부에 입력을 제공하기 위한 키보드 지지부를 요청하도록 운영 체제(108)의 API를 호출할 수 있다. 키보드 지원 API 가 호출되는 경우, 운영 체제(108)는 텍스트 입력 제어부가 미디어 디바이스(106) 상에서 선택되었음을 나타내는 데이터를 포함하는 상태 광고 메시지를 생성할 수 있다. 예를 들어, 상태 광고 메시지는 미디어 디바이스(106)에 대한 식별자, 애플리케이션(110)에 대한 식별자, 텍스트 입력 제어부가 선택되었음을 나타내는 데이터(예컨대, 참/거짓), 텍스트 입력 제어부 또는 사용자에 의해 제공될 텍스트 입력을 기술하는 데이터, 및/또는 사용자에 의해 미디어 디바이스(106)에 이미 제공된 텍스트 입력을 포함할 수 있다. 상태 광고 메시지 데이터는, 전체적으로 본 명세서에 참고로 포함된 미국 특허 출원 제15/179,676호에 기술된 바와 같이 상태 광고 메시지 스키마를 사용하여 상태 광고 메시지 내에 인코딩되고 그로부터 디코딩될 수 있다.
일부 구현예들에서, 미디어 디바이스(106)는 생성된 상태 광고 메시지를 브로드캐스트할 수 있다. 예를 들어, 미디어 디바이스(106)는 블루투스, 저전력 블루투스, 피어-투-피어 Wi-Fi, 또는 일부 다른 무선 기술과 같은 무선(예컨대, 피어-투-피어) 기술을 사용하여 생성된 상태 광고 메시지를 브로드캐스트할 수 있다. 상태 광고 메시지는, 예를 들어, 특정 수신자 디바이스를 선택하지 않고 브로드캐스트될 수 있다. 예를 들어, 미디어 디바이스(106)에 의해 송신된 무선 신호의 범위 내의 임의의 사용자 디바이스들(예컨대, 사용자 디바이스들(102))은 미디어 디바이스(106)에 의해 생성된 광고 메시지를 수신 및/또는 프로세싱할 수 있다. 대안적으로, 오직 전송 디바이스와 동일한 사용자 계정(예컨대, 가입자 계정, 클라우드 서비스 계정 등)과 연관된 사용자 디바이스들만이 전송 디바이스로부터 메시지들을 수신하고 디코딩할 수 있다. 대안적으로, 전송 및/또는 수신 디바이스들은 동일한 사용자 및/또는 동일한 사용자 계정과 연관되어야 할 필요가 없다. 예를 들어, 사용자 디바이스들(102) 및 미디어 디바이스(106)는 모두 상이한 사용자 계정들과 연관되거나 사용자 계정이 없을 수 있다. 사용자 디바이스들(102) 및 미디어 디바이스(106)는 상이한 구성들을 갖는 상이한 제조자들, 및/또는 상이한 운영 체제들과 상이한 타입들의 컴퓨팅 디바이스들일 수 있다.
일부 구현예들에서, 사용자 디바이스들(102)은 브로드캐스트된 상태 광고 메시지를 수신할 수 있다. 예를 들어, 미디어 디바이스(106)의 브로드캐스트 범위 내의 사용자 디바이스들(102)(예컨대, 사용자 디바이스(102a), 사용자 디바이스(102b),... 사용자 디바이스(102n))은 상태 광고 메시지를 수신할 수 있다. 상태 광고 메시지를 수신하는 것에 응답하여, 사용자 디바이스들(102)은 상태 광고 메시지 내의 상태 데이터에 기초하여 미디어 디바이스(106) 상의 텍스트 입력 제어부가 현재 선택되었다고 결정할 수 있다. 텍스트 입력 제어부가 미디어 디바이스(106) 상에서 선택된다고 사용자 디바이스들(102)이 결정할 때, 사용자 디바이스들(102) 상의 운영 체제들(104)은 가상 키보드를 호출하도록 사용자에게 프롬프트하는 그래픽 통지를 각자의 디바이스들 상에 제시할 것이다. 예를 들어, 사용자가 사용자 디바이스(102a)(예컨대, 스마트폰), 사용자 디바이스(102b)(예컨대, 랩톱), 및 사용자 디바이스(102n)(예컨대, 태블릿)를 모두 미디어 디바이스(106)의 브로드캐스팅 범위 내에서 갖는 경우, 모든 이러한 디바이스들은 상태 광고 메시지에 기초하여 미디어 디바이스(106) 상의 텍스트 입력 제어부가 현재 선택된다고 결정할 수 있고, 모든 이러한 사용자 디바이스들은 이러한 사용자 디바이스들 각각 상에서 가상 키보드를 호출하도록 사용자에게 프롬프트하는 그래픽 통지를 제시할 수 있다.
일부 구현예들에서, 사용자 디바이스들(102)(예컨대, 사용자 디바이스(102a), 사용자 디바이스(102b),... 사용자 디바이스(102n))은 사용자 디바이스의 스크린이 잠금된 때에도 사용자 디바이스의 스크린 상에 키보드 통지를 제시할 수 있다. 예를 들어, 사용자 디바이스들(102)은 미디어 디바이스(106)로부터 브로드캐스트되는 상태 광고 메시지를 수신할 시에 원격 키보드 통지를 제시할 수 있다.
위의 예를 계속하면, 사용자가 미디어 디바이스(106)의 브로드캐스팅 범위 내에 사용자 디바이스(102a)를 갖는 것으로 가정하면, 사용자 디바이스(102a)는 사용자 디바이스(102a)의 디스플레이 상에 원격 키보드 통지를 제시할 수 있다. 사용자가 사용자 디바이스(102a) 상에서 (예컨대, 통지를 터치, 스와이핑 등을 함으로써) 통지를 선택한 후에, 사용자 디바이스(102a)는 통신 네트워크(112)를 통해 미디어 디바이스(106)와의 양방향 통신 세션을 확립할 수 있다. 예를 들어, 통신 네트워크(112)는 데이터 네트워크, 무선 네트워크, 전화 네트워크, 또는 이들의 임의의 조합과 같은 다양한 네트워크를 포함할 수 있다. 사용자 디바이스(102a)가 (예컨대, 상태 광고 메시지 내에 구현된) 원격 키보드 서비스 요청에 응답한 후에, 미디어 디바이스(106)는 미디어 디바이스(106)가 원격 키보드에 연결되었음을 나타내는 다른 상태 광고 메시지를 브로드캐스트할 수 있다. 따라서, 미디어 디바이스(106)가 원격 키보드에 연결되었음을 나타내는 상태 광고 메시지를 수신하는 것에 응답하여, 다른 사용자 디바이스들(예를 들어, 사용자 디바이스(102b), 사용자 디바이스(102n)등)은 그들의 각자의 키보드 통지들을 무시(예를 들어, 디바이스로부터 은닉, 제거)할 수 있다.
일부 구현예들에서, 미디어 디바이스(106)는 요구되는 텍스트 입력을 설명하는 정보를 사용자 디바이스(102a)에 전송할 수 있다. 예를 들어, 네트워크(112)를 통해 양방향 통신 세션을 확립한 후에, 미디어 디바이스(106)의 운영 체제(108)는 원격 키보드를 통해 사용자에 의해 제공될 텍스트 입력을 설명하는 정보를 사용자 디바이스(102a)의 운영 체제(104a)에 전송할 수 있다. 예를 들어, 정보는 텍스트 입력 필드에 대한 프롬프트를 포함할 수 있다(예컨대, "사용자 이름 입력:", "패스워드 입력:", "검색 질의 입력:", 등). 정보는 애플리케이션(110) 또는 운영 체제(108)에 대한 식별 또는 표현을 포함할 수 있다. 예를 들어, 정보는 애플리케이션(110) 또는 운영 체제(108)의 제조자를 표현하는 이미지, 아이콘, 또는 그래픽을 포함할 수 있다. 이어서, 운영 체제(104a)는, 아래에서 추가로 기술되는 바와 같이, 사용자 디바이스(102a)의 디스플레이 상에 텍스트 입력 제어부 및/또는 가상 키보드를 제시하기 위해 이러한 정보를 사용할 수 있다. 대안적으로, 이러한 정보는, 전술된 바와 같이, 사용자 디바이스(102a)에 의해 수신된 상태 광고 메시지로부터 획득될 수 있다.
일부 구현예들에서, 운영 체제(104a)는 가상 키보드 입력을 미디어 디바이스(106)에 전송할 수 있다. 예를 들어, 운영 체제(104a)는 사용자가 가상 키보드 상에 제시된 문자들 또는 다른 그래픽 요소들을 선택하는 입력을 제공할 때를 검출할 수 있다. 각각의 입력을 검출한 후, 운영 체제(104a)는 선택된 문자 또는 그래픽 요소를 식별하는 메시지를 운영 체제(108)에 전송할 수 있다. 예를 들어, 운영 체제(104a)는, 운영 체제(108) 및/또는 애플리케이션(110)이 각각의 키보드 입력에 적절히 (예컨대, 검색 결과들을 제시하는 것, 텍스트 입력 제어부들 사이에서 이동하는 것 등에 의해) 응답할 수 있도록 각각의 문자 또는 그래픽 요소가 선택될 때 이들을 개별적으로 전송할 수 있다. 예를 들어, 운영 체제(108)는 애플리케이션(110)이 애플리케이션(110)의 프로그래밍에 따라 키보드 입력에 응답할 수 있도록 키보드 입력을 애플리케이션(110)에 전송할 수 있다. 일부 구현예들에서, 사용자 디바이스(102a)에 의해 제공된 키보드 서비스는 사용자가 선택된 제어부에 텍스트 입력을 제공하는 것을 완료했음을 나타내는 입력을 사용자가 제공한 후에 종료될 수 있다. 예를 들어, 사용자가 가상 키보드 상의 그래픽 요소(예컨대, "입력" 키, "완료" 요소 등)를 선택할 때 키보드 서비스는 종료될 수 있고, 가상 키보드는 무시 또는 은닉될 수 있다.
일부 구현예들에서, 운영 체제(104a)는 원격 가상 키보드 서비스를 종료하기 전에 일정 시간 기간을 대기할 수 있다. 예를 들어, 사용자가 미디어 디바이스(106)에 의해 제시되는 텍스트 제어부에 입력을 제공하는 것을 완료했을 수 있을지라도, 운영 체제(104a)는 최종 입력 후에 일정 시간 기간(예컨대, 5 초, 7 초 등) 동안 가상 키보드를 계속해서 제시하여 사용자가 미디어 디바이스(106)에 의해 제시되는 추가 텍스트 제어부들에 입력을 제공하도록 허용할 수 있다. 따라서, 사용자는 추가 텍스트 입력이 미디어 디바이스(106)에 의해 요구되는 경우 가상 키보드를 다시 호출하는 것에 의해 부담받을 필요가 없다.
도 2는 사용자 디바이스(102a) 상에 원격 키보드 통지(202)를 제시하기 위한 예시적인 그래픽 사용자 인터페이스(200)를 도시한다. 예를 들어, 통지(202)는, 전술된 바와 같이, 텍스트 입력 제어부가 미디어 디바이스(106) 상에서 선택된 것을 나타내는 상태 광고 메시지를 수신하는 것에 응답하여 사용자 디바이스(102a)의 디스플레이 상에서 운영 체제(104a)에 의해 제시되는 그래픽 요소일 수 있다. 통지(202)는 상태 광고 메시지를 수신하는 각각의 사용자 디바이스(102) 상에 제시될 수 있다. 통지(202)는, 예를 들어, 미디어 디바이스(106) 및/또는 애플리케이션(110)을 표현하는 설명(204) 및/또는 이미지(206)를 포함할 수 있다. 통지(202)는 사용자 디바이스(102a) 상에서 가상 키보드를 호출하는 방법을 설명하는 프롬프트(208)를 포함할 수 있다. 예를 들어, 사용자는 통지(202)를 선택(예컨대, 긴 터치, 압력 터치, 탭, 스와이프 등)함으로써 가상 키보드를 호출할 수 있다.
일부 구현예들에서, 사용자 디바이스들(102)(예컨대, 사용자 디바이스(102a), 사용자 디바이스(102b),... 사용자 디바이스(102n))은 사용자 디바이스(102a)가 잠금된 때 사용자 디바이스(102a)의 GUI(200) 상에 키보드 통지(202)를 제시할 수 있다. 예를 들어, GUI(200)는 사용자 디바이스(102a)의 잠금 스크린일 수 있다. GUI(200)는 사용자 디바이스(102a)가 잠금해제될 때(예컨대, 사용자가 사용자 디바이스(102a)의 사용자로서 인증되었을 때) 사용자 디바이스(102a)의 홈 스크린일 수 있다.
도 3은 사용자 디바이스(102a) 상에 가상 키보드를 제시하기 위한 예시적인 그래픽 사용자 인터페이스(300)를 도시한다. 예를 들어, GUI(300)는, 도 2의 GUI(200)를 참조하여 전술된 바와 같이, 사용자 선택 통지(202)에 응답하여 사용자 디바이스(102a)의 디스플레이 상에서 운영 체제(104a)에 의해 제시될 수 있다. 일부 구현예들에서, 사용자 디바이스(102a)는 애플리케이션(110) 및/또는 미디어 디바이스(106)를 표현하는 그래픽 요소(302)를 제시할 수 있다. 예를 들어, 그래픽 요소(302)는 미디어 디바이스(106)를 표현하는 설명(204) 및/또는 이미지(206)를 포함할 수 있다. 선택된 텍스트 입력 제어부가 애플리케이션(110)과 연관되는 경우, 그래픽 요소(302)는 애플리케이션(110)의 그래픽 표현(304)(예컨대, 이미지, 아이콘, 그래픽 등)을 포함할 수 있다.
일부 구현예들에서, 그래픽 요소(302)는 사용자가 제공해야 하는 텍스트 입력을 기술하는 프롬프트(306)를 포함할 수 있다. 예를 들어, 프롬프트(306)는 "패스워드 입력" 또는 "검색 용어 입력" 등에 대한 명령어를 포함할 수 있다. 일부 구현예들에서, 그래픽 요소(302)는 사용자 디바이스(102a) 상에서 가상 키보드를 호출하는 방법을 설명하는 프롬프트 명령어(308)를 포함할 수 있다. 예를 들어, 프롬프트(308)는 가상 키보드를 호출하기 위해 그래픽 요소(302)에 탭, 스와이프, 긴 터치, 또는 압력 터치 제스처를 제공하기 위한 명령어를 포함할 수 있다.
일부 구현예들에서, GUI(300)는 가상 키보드(310)를 포함할 수 있다. 예를 들어, 가상 키보드(310)는 사용자가 가상 키보드(310)를 호출하기 위해 그래픽 요소(302)를 선택하는 것에 응답하여 GUI(300) 상에 제시될 수 있다. 가상 키보드(310)는 예를 들어, 사용자 디바이스(102a)가 프롬프트(208)에 의해 특정된 입력을 수신하는 것에 응답하여 제시될 수 있다. 가상 키보드는 예를 들어 문자들을 선택하기 위한 전형적인 가상 키보드 레이아웃을 포함할 수 있다. 일부 구현예들에서, GUI(300)는 그래픽 요소(302) 없이 제시될 수 있다. 예를 들어, 가상 키보드(310)는 그래픽 요소(302) 없이 도 3의 GUI(300)에서와 같이 제시될 수 있다.
일부 구현예들에서, 사용자 디바이스(102a)는 모션을 검출하는 것에 응답하여 가상 키보드(310)를 제시할 수 있다. 예를 들어, 사용자 디바이스(102a)는 도 2의 GUI(200) 상에 통지(202)를 제시할 수 있다. 사용자가 통지(202)를 뷰잉하기 위해 사용자 디바이스(102a)를 픽업할 때, 사용자 디바이스(102a)는 사용자 디바이스(102a)의 모션을 (예컨대, 모션 센서, 가속도계 등에 의해) 검출할 수 있고, 운영 체제(104a)는 사용자 디바이스(102a)의 디스플레이 상에 가상 키보드(310)를 자동으로 제시한다. 예를 들어, 사용자 디바이스(102a)의 이동을 검출하는 것에 응답하여, 운영 체제(104a)는 도 3의 GUI(300)를 제시할 수 있다. 따라서, 사용자 디바이스(102a)의 사용자는 단순히 사용자 디바이스(102a)를 픽업함으로써 가상 키보드(310)를 호출할 수 있다.
일부 구현예들에서, 가상 키보드(310)는 텍스트 제어부(308)를 포함할 수 있다. 예를 들어, 사용자가 가상 키보드(310) 상에 제시되는 문자들을 선택함에 따라, 선택된 문자들은 텍스트 제어부(308) 상에 표현될 수 있다. 전술된 바와 같이, 문자들이 가상 키보드(310) 상에서 선택될 때 문자들이 또한 미디어 디바이스(106)에 전송되기 때문에, 사용자 디바이스(102a) 및 미디어 디바이스(106) 둘 모두는 사용자가 어느 문자들을 선택했는지에 기초하여 유사한 문자 스트링들을 제시할 수 있다. 따라서, 사용자는 텍스트를 입력하는 동안 사용자 디바이스(102a)의 디스플레이로부터 사용자의 주의를 돌릴 필요는 없지만, 사용자 디바이스(102a) 상에 입력된 텍스트를 필요에 따라 미디어 디바이스(106)에 의해 수신된 텍스트와 비교할 수 있다.
일부 구현예들에서, 가상 키보드(310)는 미디어 디바이스(106)의 디스플레이 상에 제시되는 텍스트 제어부들(예컨대, 텍스트 입력 박스들, 텍스트 입력 필드들 등) 사이에서 내비게이팅하기 위한 그래픽 요소들(312 및/또는 314)을 포함할 수 있다. 예를 들어, 미디어 디바이스(106) 상의 운영 체제(108) 또는 애플리케이션(110)은 다수의 텍스트 입력 제어부들에 대한 텍스트 입력을 요구할 수 있다. 운영 체제(108) 또는 애플리케이션(110)은 예를 들어 사용자의 사용자 이름 및 패스워드를 요구할 수 있다. 사용자는 다음 텍스트 입력 제어부를 선택하기 위해 그래픽 요소(312)를 선택할 수 있다. 사용자는 이전 텍스트 입력 제어부를 선택하기 위해 그래픽 요소(314)를 선택할 수 있다.
일부 구현예들에서, 가상 키보드(310)는 사용자가 텍스트 입력을 제공하는 것을 완료했음을 나타내기 위한 그래픽 요소(316)를 포함할 수 있다. 예를 들어, 사용자는 사용자가 현재 텍스트 제어부에 입력을 제공하는 것을 완료했다는 것을 나타내기 위한 그래픽 요소(316)를 선택할 수 있다. 사용자가 그래픽 요소(316)를 선택할 때, 사용자 디바이스(102a)는 미디어 디바이스(106)에 메시지를 전송하여 다른(예컨대, 다음) 텍스트 입력 제어부가 미디어 디바이스(106) 상에서 선택되게 할 수 있다. 사용자가 그래픽 요소(316)를 선택할 때, 사용자 디바이스(102a)는 원격 가상 키보드 서비스를 종료하기 위해 미디어 디바이스(106)에 메시지를 전송할 수 있다. 대안적으로, 사용자는 원격 가상 키보드 서비스를 종료하고 그래픽 요소(302) 및 가상 키보드(310)를 무시하기 위해 그래픽 요소(318)를 선택할 수 있다. 그러나, 일부 구현예들에서, 서비스의 종료는, 전술된 바와 같이, 미디어 디바이스(106) 상의 추가 텍스트 입력 제어부들의 선택 및 추가 텍스트 입력의 제공을 허용하도록 지연될 수 있다.
도 4는 사용자 디바이스 상에 가상 키보드를 제시하기 위한 예시적인 그래픽 사용자 인터페이스(400)를 도시한다. 예를 들어, GUI(400)는, 도 2의 사용자 선택 통지(202)에 응답하여 사용자 디바이스(102a)의 디스플레이 상에서 운영 체제(104a)에 의해 제시될 수 있다. GUI(400)는, 예를 들어, 다양한 사용자 디바이스들(102)에 의해 제공되는 특징부들(또는 그의 결여)에 기초하여 GUI(300)에 대한 대안으로서 제시될 수 있다. 예를 들어, 사용자 디바이스(102a)가 압력 터치 입력 특징부를 갖도록 구성되는 경우, 사용자 디바이스(102a)는 GUI(300)를 제시할 수 있다. 사용자 디바이스(102a)가 압력 터치 입력 특징부를 갖도록 구성되지 않는 경우, 사용자 디바이스(102a)는 GUI(400)를 제시할 수 있다.
일부 구현예들에서, GUI(400)는 텍스트 입력을 제시하기 위한 그래픽 요소(402)를 포함할 수 있다. 예를 들어, 그래픽 인터페이스(402)는 통지의 선택(202)에 응답하여 제시될 수 있다. 그래픽 요소(402)는 통지(202)에 인접하게 제시되거나 그에 맞닿을 수 있다. 그래픽 요소(402)는 프롬프트(406)를 포함할 수 있다. 예를 들어, 프롬프트(406)는 사용자가 선택된 텍스트 입력 제어부에 어떤 타입의 정보를 제공해야 하는지를 설명하는 명령어들을 사용자에게 제공할 수 있다. 그래픽 요소(402)는 텍스트 입력 제어부(408)를 포함할 수 있다. 예를 들어, 텍스트 입력 제어부(408)는 전술된 바와 같이 가상 키보드를 사용하여 사용자에 의해 제공되는 텍스트 입력을 제시할 수 있다.
일부 구현예들에서, GUI(400)는 가상 키보드(410)를 포함할 수 있다. 예를 들어, 가상 키보드(410)는 사용자가 그래픽 요소(202)를 선택하는 것에 응답하여 GUI(400) 상에 제시될 수 있다. 가상 키보드(410)는 예를 들어 그래픽 요소(402)와 동시에 또는 거의 동시에 제시될 수 있다. 가상 키보드(310)는 예를 들어, 사용자 디바이스(102a)가 프롬프트(208)에 의해 특정된 입력을 수신하는 것에 응답하여 제시될 수 있다. 가상 키보드(410)는 문자들을 선택하기 위한 전형적인 가상 키보드 레이아웃을 포함할 수 있다.
일부 구현예들에서, 가상 키보드(410)는 미디어 디바이스(106)의 디스플레이 상에 제시되는 텍스트 제어부들(예컨대, 텍스트 입력 박스들, 텍스트 입력 필드들 등) 사이에서 내비게이팅하기 위한 그래픽 요소들(412 및/또는 414)을 포함할 수 있다. 예를 들어, 미디어 디바이스(106) 상의 운영 체제(108) 또는 애플리케이션(110)은 다수의 텍스트 입력 제어부들에 대한 텍스트 입력을 요구할 수 있다. 운영 체제(108) 또는 애플리케이션(110)은 예를 들어 사용자의 사용자 이름 및 패스워드를 요구할 수 있다. 사용자는 다음 텍스트 입력 제어부를 선택하기 위해 그래픽 요소(412)를 선택할 수 있다. 사용자는 이전 텍스트 입력 제어부를 선택하기 위해 그래픽 요소(414)를 선택할 수 있다.
일부 구현예들에서, 가상 키보드(410)는 사용자가 텍스트 입력을 제공하는 것을 완료했음을 나타내기 위한 그래픽 요소(416)를 포함할 수 있다. 예를 들어, 사용자는 사용자가 현재 텍스트 제어부에 입력을 제공하는 것을 완료했다는 것을 나타내기 위한 그래픽 요소(416)를 선택할 수 있다. 사용자가 그래픽 요소(416)를 선택할 때, 사용자 디바이스(102a)는 미디어 디바이스(106)에 메시지를 전송하여 다른(예컨대, 다음) 텍스트 입력 제어부가 미디어 디바이스(106) 상에서 선택되게 할 수 있다. 사용자가 그래픽 요소(416)를 선택할 때, 사용자 디바이스(102a)는 원격 가상 키보드 서비스를 종료하기 위해 미디어 디바이스(106)에 메시지를 전송할 수 있다. 대안적으로, 사용자는 원격 가상 키보드 서비스를 종료하고 그래픽 요소(402) 및 가상 키보드(410)를 무시하기 위해 그래픽 요소(418)를 선택할 수 있다. 그러나, 일부 구현예들에서, 서비스의 종료는, 전술된 바와 같이, 미디어 디바이스(106) 상의 추가 텍스트 입력 제어부들의 선택 및 추가 텍스트 입력의 제공을 허용하도록 지연될 수 있다.
예시적인 프로세스들
도 5는 사용자 디바이스 상에 원격 키보드 서비스를 제공하기 위한 예시적인 프로세스(500)의 흐름도이다. 보다 구체적으로, 본 명세서에 기술된 프로세스(500)는 사용자 디바이스로부터 미디어 디바이스(또는 임의의 다른 타입의 컴퓨팅 디바이스)로 원격 키보드 서비스를 제공하기 위한 접근법이다. 프로세스(500)를 구현하는 사용자 디바이스는 원격 키보드 서비스를 제공하고, 사용자 디바이스 상의 사용자 애플리케이션(예컨대, 원격 제어 애플리케이션(104a))을 호출하지 않고 원격 키보드를 제시할 수 있다. 프로세스(500)는 운영 체제에 의해 효율적으로 취급될 수 있고, 사용자 디바이스 상에 설치된 애플리케이션들에 관계없이 그리고 사용자 디바이스의 잠금 또는 잠금해제 상태에 관계없이 원격 키보드 서비스를 이용가능하게 할 수 있다.
단계(502)에서, 사용자 디바이스(102a)는 미디어 디바이스(106)로부터 브로드캐스트 상태 광고 메시지를 수신할 수 있다. 예를 들어, 상태 광고 메시지는 미디어 디바이스를 식별하고 미디어 디바이스의 현재 상태를 설명하는 데이터를 포함할 수 있다. 본 명세서에 기술된 구현예들에 따르면, 상태 광고 메시지는 미디어 디바이스(106)에 의해 제시되는 텍스트 입력 제어부가 현재 선택된 것을 나타내는 데이터를 포함할 수 있다. 대안적으로, 상태 광고 메시지는 미디어 디바이스(106)가 원격 키보드에 대한 연결을 요청하고 있음을 나타내는 데이터를 포함할 수 있다.
단계(504)에서, 사용자 디바이스(102a)는 미디어 디바이스 상의 텍스트 입력 제어부가 현재 선택된다고 결정할 수 있다. 예를 들어, 단계(502)에서 수신된 상태 광고 메시지에 기초하여, 사용자 디바이스(102a)는 미디어 디바이스(106) 상의 텍스트 입력 제어부가 현재 선택된다고 결정할 수 있다.
단계(506)에서, 사용자 디바이스(102a)는 원격 키보드 통지를 제시할 수 있다. 예를 들어, 미디어 디바이스(106) 상의 텍스트 입력 제어부가 현재 선택된다고 결정하는 것에 응답하여, 사용자 디바이스(102a)는 사용자 디바이스(102a) 상에서 가상 키보드를 호출하도록 사용자에게 프롬프트하는 그래픽 키보드 통지를 제시할 수 있다. 예를 들어, 사용자가 사용자 디바이스(102a)(예컨대, 스마트폰), 사용자 디바이스(102b)(예컨대, 랩톱), 및 사용자 디바이스(102n)(예컨대, 태블릿)를 모두 미디어 디바이스(106)의 브로드캐스팅 범위 내에서 갖는 경우, 이러한 디바이스들 각각은 상태 광고 메시지에 기초하여 미디어 디바이스 상의 텍스트 입력 제어부가 현재 선택된다고 결정할 수 있고, 이러한 사용자 디바이스들 각각 상에서 가상 키보드를 호출하도록 사용자에게 프롬프트하는 그래픽 통지를 제시할 수 있다.
단계(508)에서, 사용자 디바이스(102a)는 사용자의 통지의 선택을 수신할 수 있다. 예를 들어, 사용자 디바이스(102a)는 통지를 선택하는, 통지에 대한 사용자 입력(예컨대, 탭, 스와이프, 긴 터치, 압력 터치 등)을 수신할 수 있다. 일부 구현예들에서, 사용자가 선택하는 제1 디바이스(예컨대, 사용자는 그래픽 통지를 탭핑하여 그 디바이스 상의 가상 키보드를 호출할 수 있음)는 사용자가 미디어 디바이스(106) 상의 텍스트 필드 내로 텍스트를 입력하기 위해 선택된 디바이스 상에 원격 키보드를 제시할 것이다. 디바이스들의 나머지는 이들의 스크린으로부터의 그래픽 통지를 무시할 것이지만, 여전히 그러한 디바이스들에서 통지를 유지할 것이다.
단계(510)에서, 사용자 디바이스(102a)는 미디어 디바이스(106)와의 연결을 확립할 수 있다. 위에서 논의된 바와 같이, 사용자가 통지를 탭핑하거나 클릭함으로써 사용자 디바이스(102a) 상의 통지를 선택한 후에, 사용자 디바이스(102a)는 통신 네트워크(112)를 통해 미디어 디바이스(106)와의 양방향 통신 세션을 확립할 수 있다. 예를 들어, 사용자 디바이스(102a)는 네트워크(112)를 통한 통신 세션이 상태 광고 메시지보다 더 많은 데이터의 송신을 허용할 수 있기 때문에 네트워크(112)를 통해 미디어 디바이스(106)와의 세션을 확립할 수 있다.
단계(512)에서, 사용자 디바이스(102a)는 미디어 디바이스(106)로부터 애플리케이션 데이터를 수신할 수 있다. 예를 들어, 미디어 디바이스(106)와의 통신 세션을 확립한 후에, 미디어 디바이스(106)는 애플리케이션 데이터를 사용자 디바이스(102a)에 전송할 수 있다. 예를 들어, 애플리케이션 데이터는 미디어 디바이스 데이터, 예컨대 미디어 디바이스(106)를 표현하는 설명(204) 및/또는 이미지(206)를 포함할 수 있다. 애플리케이션 데이터는 도 3에 도시된 바와 같이 애플리케이션(110)의 그래픽 표현(304) 및/또는 애플리케이션(110)으로부터의 프롬프트(306)(예컨대, 패스워드를 입력하십시오)를 포함할 수 있다.
단계(514)에서, 사용자 디바이스(102a)는 사용자 디바이스(102a)의 디스플레이 상에 디바이스 데이터, 애플리케이션 데이터 및/또는 키보드를 제시할 수 있다. 예를 들어, 디바이스 데이터 및/또는 애플리케이션 데이터를 수신한 후에, 도 3에 도시된 바와 같이, 사용자 디바이스(102a)는 디바이스 데이터 및/또는 애플리케이션 데이터를 제시할 수 있다.
단계(516)에서, 사용자 디바이스(102a)는 사용자 디바이스 상에 제시되는 가상 키보드에 대한 사용자 입력을 수신할 수 있다. 예를 들어, 사용자 입력은 가상 키보드 상에 제시된 단일 문자 또는 다른 객체(예컨대, 텍스트 제어부들 사이에서 내비게이팅하기 위한 그래픽 요소들(312 및/또는 314))의 선택일 수 있다.
단계(518)에서, 사용자 디바이스(102a)는 사용자 입력을 미디어 디바이스(106)에 전송할 수 있다. 예를 들어, 사용자 디바이스(102a)는 통신 네트워크(112)를 통해 미디어 디바이스(106)에 사용자 입력을 전송할 수 있다. 예를 들어, 단계(518)후에, 프로세스(500)는 단계(516)로 리턴할 수 있다. 단계들(516 및 518)은 사용자가 가상 키보드에 입력을 제공하는 것을 완료할 때까지 반복될 수 있다. 따라서, 미디어 디바이스(106)는 키보드가 미디어 디바이스(106)에 직접 연결되거나 또는 그 일부인 것처럼 각각의 키보드 입력에 응답할 수 있다.
도 6은 사용자 디바이스들로부터 원격 키보드 서비스를 요청하기 위한 예시적인 프로세스(600)의 흐름도이다. 보다 구체적으로, 본 명세서에 기술된 프로세스(600)는 전술된 바와 같이 사용자가 원격 키보드를 호출하기 위한 가장 편리한 디바이스를 선택할 수 있도록 원격 키보드에 대한 필요성을 광고하기 위한 접근법이다.
단계(602)에서, 미디어 디바이스(106)는 미디어 디바이스(106)와 연관된 디스플레이 상에 애플리케이션(110)을 제시할 수 있다. 일부 구현예들에서, 미디어 디바이스(106)는 사용자에게 미디어 항목들을 제시하기 위한 다양한 미디어 애플리케이션들로 구성될 수 있다. 사용자는 원격 제어 디바이스를 사용하여 미디어 디바이스(106) 상에서 애플리케이션(110)을 호출할 수 있다. 애플리케이션(110)은 사용자가 애플리케이션(110)을 제어할 수 있게 하는 그래픽 사용자 인터페이스를 제시할 수 있다. 예를 들어, 애플리케이션(110)은 사용자가 애플리케이션(110)을 통해 이용가능한 미디어 항목들을 브라우징, 검색, 및 뷰잉할 수 있게 하는 그래픽 사용자 인터페이스들을 제시할 수 있다.
단계(604)에서, 미디어 디바이스(106)는 텍스트 입력 제어부가 선택되었다는 표시를 애플리케이션(110)으로부터 수신할 수 있다. 예를 들어, 애플리케이션(110)과 상호작용하는 동안, 애플리케이션(110)은 사용자가 텍스트 입력을 제공할 것을 요구할 수 있다. 애플리케이션(110)은 사용자 이름 및 패스워드를 요구할 수 있다. 애플리케이션(110)은 미디어에 대한 검색을 수행하기 위한 검색 파라미터들을 요구할 수 있다. 어느 경우든, 애플리케이션(110)은 애플리케이션(110)에 의해 제시되는 텍스트 입력 제어부를 제시할 수 있고, 사용자는 (예를 들어, 원격 제어 디바이스(120)를 사용하여) 이를 선택할 수 있다. 텍스트 입력 제어부가 선택될 때, 애플리케이션(110)은, 텍스트 입력 제어부가 선택되었음을 나타내고/나타내거나 텍스트 입력 제어부에 의해 요구되는 정보의 설명을 제공하는 메시지를 (예컨대, 전술된 API를 사용하여) 미디어 디바이스(106) 상의 운영 체제(108)에 전송할 수 있다. 일부 구현예들에서, 메시지는 애플리케이션(110)에 대한 식별자 및/또는 그래픽 표현(304)과 같은 다른 애플리케이션 메타데이터를 포함할 수 있다.
단계(606)에서, 미디어 디바이스(106)는 텍스트 입력 제어부가 선택된 것을 나타내는 광고 메시지를 생성할 수 있다. 일부 구현예들에서, 미디어 디바이스(106)는 애플리케이션(110)에 의해 제시되는 텍스트 입력 제어부가 선택된 것을 나타내는 상태 정보를 포함하는 상태 광고 메시지를 생성할 수 있다. 예를 들어, 단계(604)에서 애플리케이션(110)으로부터 메시지를 수신하는 것에 응답하여, 운영 체제(108)는 텍스트 입력 제어부가 미디어 디바이스(106) 상에서 현재 선택된 것을 나타내는 데이터를 포함하는 상태 광고 메시지를 생성할 수 있다.
단계(608)에서, 미디어 디바이스(106)는 상태 광고 메시지를 브로드캐스트할 수 있다. 일부 구현예들에서, 텍스트 입력 제어부가 선택된 것을 나타내는 상태 광고 메시지를 미디어 디바이스(106)가 생성한 후에, 미디어 디바이스(106)는 상태 광고 메시지를 브로드캐스트할 수 있다. 예를 들어, 광고 메시지는 특정 수신자 디바이스를 식별하지 않고 브로드캐스트될 수 있다. 따라서, 미디어 디바이스(106)의 브로드캐스팅 범위 내의 모든 사용자 디바이스들은 상태 광고 메시지를 수신할 수 있다.
단계(610)에서, 미디어 디바이스(106)는 사용자 디바이스가 미디어 디바이스를 위한 원격 키보드를 제공할 것임을 나타내는 메시지를 수신할 수 있다. 예를 들어, 미디어 디바이스(106)의 브로드캐스팅 범위 내의 모든 사용자 디바이스들(102)이 미디어 디바이스(106)로부터 브로드캐스트된 미디어 디바이스 상태 광고를 수신한 후에, 미디어 디바이스(106)는 사용자 디바이스(102a)가 미디어 디바이스(106)에 대한 원격 키보드를 제공할 것임을 나타내는 메시지를 수신할 수 있다. 예를 들어, 메시지는 네트워크(112)를 통해 미디어 디바이스(106)에 전송될 수 있다. 메시지는 미디어 디바이스(106)와 사용자 디바이스(102a) 사이의 양방향 통신 세션을 개시할 수 있어서, 미디어 디바이스(106) 및 사용자 디바이스(102a)는 텍스트 입력 제어부와 관련된 데이터를 교환할 수 있다.
단계(612)에서, 미디어 디바이스(106)는 사용자 디바이스(102a)에 애플리케이션 데이터를 전송할 수 있다. 예를 들어, 애플리케이션 데이터는 미디어 디바이스(예컨대, 미디어 디바이스(106))를 표현하는 설명(204) 및/또는 이미지(206)와 같은 디바이스 데이터를 포함할 수 있다. 애플리케이션 데이터는 도 3에 도시된 바와 같이 애플리케이션(110)의 그래픽 표현(304) 및/또는 애플리케이션(110)으로부터의 프롬프트(306)(예컨대, 패스워드를 입력하십시오)를 포함할 수 있다. 애플리케이션 데이터는 단계(604)에서 전술된 바와 같이 운영 체제(108)에 의해 애플리케이션(110)으로부터 수신될 수 있다.
단계(614)에서, 미디어 디바이스(106)는 사용자 디바이스(102a)로부터 사용자의 키보드 입력을 수신할 수 있다. 예를 들어, 사용자 디바이스(102a)가 사용자 디바이스(102a) 상에 제시되는 원격 키보드(예컨대, 키보드(310), 키보드(410)) 상의 문자들 및/또는 다른 객체들을 선택하는 사용자 입력을 수신할 때, 사용자 디바이스(102a)는 사용자 입력(예컨대, 선택된 문자들 또는 다른 객체들)을 미디어 디바이스(106)에 전송할 수 있다.
단계(616)에서, 미디어 디바이스(106)는 사용자의 키보드 입력을 애플리케이션(110)에 전송할 수 있다. 예를 들어, 사용자 디바이스(102a)로부터 사용자의 키보드 입력을 수신한 후에, 운영 체제(108)는 키보드 입력을 애플리케이션(110)에 전송할 수 있다. 이어서, 애플리케이션(110)은 선택된 텍스트 제어부의 목적에 따라 동작을 수행할 수 있다. 예를 들어, 현재 선택된 텍스트 제어부가 사용자 이름 및/또는 패스워드 입력을 수신하도록 구성되는 경우, 애플리케이션(110)은 입력된 사용자 이름 및/또는 패스워드가 사용자에 대해 정확한지 여부를 결정하기 위해 키보드 입력을 프로세싱할 수 있다. 현재 선택된 텍스트 제어부가 검색 파라미터들을 수신하도록 구성되는 경우, 애플리케이션(110)은 각각의 문자가 사용자에 의해 입력된 후에 검색을 수행함으로써 키보드 입력을 프로세싱할 수 있다.
입력이 수신됨에 따라 미디어 디바이스(106)가 각각의 키보드 입력(예컨대, 문자 선택, 객체 선택 등)을 수신 및 프로세싱하기 때문에, 프로세스(600)는 단계(614)로 리턴하여 다음 키보드 입력을 수신하고 단계(616)로 리턴하여 다음 키보드 입력을 프로세싱할 수 있다. 따라서, 프로세스(600)는 사용자가 선택된 텍스트 제어부에 입력을 제공하는 것을 완료할 때까지 단계들(614 및 616)을 반복할 수 있다.
또한, 프로세스(600)가 애플리케이션(110)에 대한 텍스트 입력을 수신하는 것을 기술하지만, 프로세스(600)는 또한 운영 체제(108)를 위한 텍스트 입력을 수신하도록 구현될 수 있다. 예를 들어, 애플리케이션(110)은 운영 체제(108)를 위한 원격 키보드 서비스를 획득하고 운영 체제(108)에 의해 제시된 텍스트 입력 제어부를 위한 텍스트 입력을 수신하기 위해 프로세스(600)에서 운영 체제(108)로 대체될 수 있다.
그래픽 사용자 인터페이스들
상기 본 개시내용은 다양한 특징, 프로세스들 또는 워크플로우들을 구현하기 위한 다양한 그래픽 사용자 인터페이스들(GUI들)에 대해 설명한다. 이들 GUI들은 랩톱 컴퓨터, 데스크톱 컴퓨터, 컴퓨터 단말기, 텔레비전 시스템, 태블릿 컴퓨터, 이북리더기(e-book reader) 및 스마트폰들을 포함하는 다양한 전자 디바이스들 상에 제시될 수 있으나, 이에 한정되는 것은 아니다. 하나 이상의 이들 전자 디바이스들이 터치-감응 표면을 포함할 수 있다. 터치-감응 표면은 복수개의 동시적인 입력 점들을 프로세싱할 수 있으며, 이는 입력 점 각각의 압력, 정도 또는 위치와 연관된 데이터의 프로세싱을 포함할 수 있다. 이와 같은 프로세싱은 핀칭(pinching) 및 스와이핑(swiping)을 포함하는 복수개의 손가락을 사용한 제스처 입력을 용이하게 할 수 있다.
본 명세서에서 GUI 내의 사용자 인터페이스 요소들을 "선택한다(select)" 또는 "선택하는(selecting)"이라고 지칭할 경우, 이러한 표현들은 마우스 또는 다른 입력 디바이스를 가지고 사용자 인터페이스 요소 상부에서 클릭하거나 "호버링(hovering)"하는 것, 또는 하나 이상의 손가락 또는 스타일러스를 가지고 사용자 인터페이스 요소 상에 터치, 탭핑(tapping) 또는 제스처 입력(gesturing)하는 것을 포함하는 것으로 이해된다. 사용자 인터페이스 요소는 가상의 버튼, 메뉴, 선택기, 스위치, 슬라이더, 스크러버, 노브(knob), 썸네일, 링크, 아이콘, 라디오 버튼, 체크 박스 및 사용자로부터 입력을 수신하거나 사용자에게 피드백을 제공하기 위한 임의의 다른 메커니즘일 수 있다.
프라이버시
본 개시내용은 본 기술에서의 그러한 개인 정보 데이터의 이용이 사용자들에게 이득을 주기 위해 사용될 수 있음을 인식한다. 예를 들어, 개인 정보 데이터는 더 큰 관심이 있는 타깃 콘텐츠를 사용자에게 전달하는 데 이용될 수 있다. 따라서, 그러한 개인 정보 데이터의 이용은 전달된 콘텐츠의 계산된 제어를 가능하게 한다. 게다가, 사용자에 이득을 주는 개인 정보 데이터에 대한 다른 이용들이 또한 본 개시내용에 의해 고려된다.
본 개시내용은 그러한 개인 정보 데이터의 수집, 분석, 공개, 전달, 저장, 또는 다른 이용을 책임지고 있는 엔티티들이 잘 확립된 프라이버시 정책들 및/또는 프라이버시 관례들을 준수할 것이라는 것을 추가로 고려한다. 특히, 그러한 엔티티들은, 대체로 개인 정보 데이터를 사적이고 안전하게 유지시키기 위한 산업적 또는 행정적 요건들을 충족시키거나 넘어서는 것으로 인식되는 프라이버시 정책들 및 관례들을 구현하고 지속적으로 이용해야 한다. 예를 들어, 사용자들로부터의 개인 정보는 엔티티의 적법하며 적정한 사용들을 위해 수집되어야 하고, 이들 적법한 사용들을 벗어나서 공유되거나 판매되지 않아야 한다. 또한, 그러한 수집은 단지 사용자들의 고지에 입각한 동의를 수신한 후에만 발생해야 한다. 부가적으로, 그러한 엔티티들은 그러한 개인 정보 데이터에 대한 액세스를 보호하고 안전하게 하며 개인 정보 데이터에 대한 액세스를 갖는 다른 사람들이 그들의 프라이버시 정책들 및 절차들을 고수한다는 것을 보장하기 위한 임의의 필요한 단계들을 취할 것이다. 게다가, 그러한 엔티티들은 널리 인정된 프라이버시 정책들 및 관례들에 대한 그들의 고수를 증명하기 위해 제3자들에 의해 그들 자신들이 평가를 받을 수 있다.
전술한 것에도 불구하고, 본 개시내용은 또한 사용자가 개인 정보 데이터의 사용, 또는 그에 대한 액세스를 선택적으로 차단하는 실시예들을 고려한다. 즉, 본 개시내용은 그러한 개인 정보 데이터에 대한 액세스를 방지하거나 차단하기 위해 하드웨어 및/또는 소프트웨어 요소들이 제공될 수 있다는 것을 고려한다. 예를 들어, 광고 전달 서비스들의 경우에, 본 기술은 사용자들이 서비스를 위한 등록 중에 개인 정보 데이터의 수집 시의 참여의 "동의함" 또는 "동의하지 않음"을 선택하는 것을 허용하도록 구성될 수 있다. 다른 예에서, 사용자들은 타깃 콘텐츠 전달 서비스들을 위한 위치 정보를 제공하지 않도록 선택할 수 있다. 또 다른 예에서, 사용자들은 정확한 위치 정보를 제공하지 않지만 위치 구역 정보의 전달을 허용하도록 선택할 수 있다.
예시적인 시스템 아키텍처
도 7은 도 1 내지 도 6의 특징부들 및 프로세스들을 구현할 수 있는 예시적인 컴퓨팅 디바이스(700)의 블록도이다. 컴퓨팅 디바이스(700)는 메모리 인터페이스(702), 하나 이상의 데이터 프로세서, 이미지 프로세서 및/또는 중앙 프로세싱 유닛(704), 및 주변기기 인터페이스(706)를 포함할 수 있다. 메모리 인터페이스(702), 하나 이상의 프로세서(704) 및/또는 주변기기 인터페이스(706)는 별도의 컴포넌트들일 수 있거나 하나 이상의 집적회로에 통합될 수 있다. 컴퓨팅 디바이스(700) 내의 다양한 컴포넌트들은 하나 이상의 통신 버스 또는 신호 라인들에 의해 결합될 수 있다.
센서, 디바이스 및 서브시스템은 다수의 기능들을 용이하게 하기 위하여 주변기기 인터페이스(706)에 결합될 수 있다. 예를 들어, 모션 센서(710), 광 센서(712) 및 근접 센서(714)는 배향, 조명 및 근접 기능들을 용이하게 하기 위하여 주변기기 인터페이스(706)에 결합될 수 있다. 다른 센서(716)들이 또한 GNSS(global navigation satellite system)(예컨대, GPS 수신기), 온도 센서, 생체인식 센서(biometric sensor), 자력계 또는 다른 감지 디바이스와 같은 주변기기 인터페이스(706)와 연결되어 관련 기능들을 용이하게 할 수 있다.
카메라 서브시스템(720) 및 광학 센서(722), 예컨대, CCD(charged coupled device) 또는 CMOS(complementary metal-oxide semiconductor) 광학 센서는 사진 및 비디오 클립의 녹화와 같은 카메라의 기능을 용이하게 하도록 이용될 수 있다. 카메라 서브시스템(720) 및 광학 센서(722)는, 예컨대 안면 인식 분석을 수행함으로써, 사용자의 인증 동안에 사용될 사용자의 이미지를 수집하는 데 사용될 수 있다.
통신 기능들은 무선 주파수 수신기와 송신기 및/또는 광학(예컨대, 적외선) 수신기와 송신기를 포함할 수 있는, 하나 이상의 무선 통신 서브시스템(724)을 통하여 용이하게 될 수 있다. 통신 서브시스템(724)의 특정 설계와 구현은 컴퓨팅 디바이스(700)가 동작하도록 의도되는 통신 네트워크(들)에 의존할 수 있다. 예를 들어, 컴퓨팅 디바이스(700)는 GSM 네트워크, GPRS 네트워크, EDGE 네트워크, Wi-Fi 또는 WiMax 네트워크, 및 블루투스™ 네트워크를 통해 동작하도록 설계된 통신 서브시스템(724)들을 포함할 수 있다. 특히, 무선 통신 서브시스템(724)은 디바이스(100)가 다른 무선 디바이스를 위한 기지국으로서 구성될 수 있도록 호스팅 프로토콜을 포함할 수 있다.
오디오 서브시스템(726)은 화자 인식, 음성 복제, 디지털 녹음, 및 전화 통신 기능과 같은 음성-인에이블형(voice-enabled) 기능들을 용이하게 하기 위하여 스피커(728) 및 마이크로폰(730)에 결합될 수 있다. 오디오 서브시스템(726)은 예를 들어 음성 명령, 성문 감정(voiceprinting) 및 음성 인증의 프로세싱을 용이하게 하도록 구성될 수 있다.
I/O 서브시스템(740)은 터치 표면 제어기(742) 및/또는 다른 입력 제어기(들)(744)를 포함할 수 있다. 터치 표면 제어기(742)는 터치 표면(746)에 결합될 수 있다. 터치 표면(746)과 터치 표면 제어기(742)는, 예를 들어, 용량성, 저항성, 적외선 및 표면 탄성파(surface acoustic wave) 기술들뿐만 아니라, 터치 표면(746)과의 하나 이상의 접촉점을 결정하기 위한 다른 근접 센서 어레이들 또는 다른 요소들을 포함하지만 이들로 제한되지 않는 복수의 터치 감응성 기술들 중 임의의 기술을 사용하여 접촉 및 이동 또는 그의 중단을 검출할 수 있다.
기타 입력 제어기(들)(744)는 하나 이상의 버튼들, 로커 스위치(rocker switch), 지동륜(thumb-wheel), 적외선 포트, USB 포트, 및/또는 포인터 디바이스, 예컨대 스타일러스와 같은 기타 입력/제어 디바이스들(748)에 결합될 수 있다. 하나 이상의 버튼(도시되지 않음)은 스피커(728) 및/또는 마이크로폰(730)의 음량 제어부를 위한 상/하 버튼을 포함할 수 있다.
하나의 구현에서, 제1 지속기간 동안의 버튼 누름은 터치 표면(746)의 잠금을 결합해제할 수 있고; 제1 지속기간보다 긴 제2 지속기간 동안의 버튼 누름은 컴퓨팅 디바이스(700)에 대한 전력을 켜거나 끌 수 있다. 제3 지속기간 동안의 버튼 누름은, 사용자가 마이크로폰(730)에 명령을 말하여 디바이스가 음성 명령을 실행하게 할 수 있는, 음성 제어, 또는 음성 명령, 모듈을 활성화시킬 수 있다. 사용자는 버튼들 중 하나 이상의 버튼의 기능을 사용자 지정(customize)할 수 있다. 터치 표면(746)은 예를 들어 가상 또는 소프트 버튼 및/또는 키보드를 구현하는 데에 또한 사용될 수 있다.
일부 구현예들에서, 컴퓨팅 디바이스(700)는 MP3, AAC 및 MPEG 파일과 같은, 기록된 오디오 및/또는 비디오 파일을 제시할 수 있다. 일부 구현예들에서, 컴퓨팅 디바이스(700)는 iPod™와 같은 MP3 재생기의 기능을 포함할 수 있다. 그러므로, 컴퓨팅 디바이스(700)는 아이팟(iPod)과 호환되는 36-핀 커넥터를 포함할 수 있다. 기타 입력/출력 및 제어 디바이스가 또한 사용될 수 있다.
메모리 인터페이스(702)는 메모리(750)에 결합될 수 있다. 메모리(750)는 고속 랜덤 액세스 메모리 및/또는 비휘발성 메모리, 예컨대 하나 이상의 자기 디스크 저장 디바이스, 하나 이상의 광학 저장 디바이스, 및/또는 플래시 메모리(예를 들어, NAND, NOR)를 포함할 수 있다. 메모리(750)는 운영 체제(752), 예컨대 다윈(Darwin), RTXC, 리눅스(LINUX), 유닉스(UNIX), OS X, 윈도우즈(WINDOWS), 또는 임베디드 운영 체제, 예컨대 VxWorks를 저장할 수 있다.
운영 체제(752)는 기본 시스템 서비스들을 취급하고 하드웨어 의존형 태스크를 수행하기 위한 명령어를 포함할 수 있다. 일부 구현예들에서, 운영 체제(752)는 커널(예를 들어, 유닉스 커널)일 수 있다. 일부 구현예들에서, 운영 체제(752)는 음성 인증을 수행하기 위한 명령어들을 포함할 수 있다. 예를 들어, 운영 체제(752)는 도 1 내지 도 6을 참조하여 설명한 바와 같이 원격 키보드 특징부들을 구현할 수 있다.
메모리(750)는 또한 하나 이상의 추가 디바이스, 하나 이상의 컴퓨터 및/또는 하나 이상의 서버와의 통신을 용이하게 하는 통신 명령어들(754)을 저장할 수 있다. 메모리(750)는 그래픽 사용자 인터페이스의 프로세싱을 용이하게 하기 위한 그래픽 사용자 인터페이스 명령어(756); 센서 관련 프로세싱 및 기능들을 용이하게 하는 센서 프로세싱 명령어들(758); 전화 관련 프로세스들 및 기능들을 용이하게 하는 전화 명령어들(760); 전자 메시징 관련 프로세스들 및 기능들을 용이하게 하는 전자 메시징 명령어들(762); 웹 브라우징 관련 프로세스들 및 기능들을 용이하게 하는 웹 브라우징 명령어들(764); 미디어 프로세싱 관련 프로세스들 및 기능들을 용이하게 하는 미디어 프로세싱 명령어들(766); GNSS 및 내비게이션 관련 프로세스들 및 명령어들을 용이하게 하는 GNSS/내비게이션 명령어들(768); 및/또는 카메라 관련 프로세스들 및 기능들을 용이하게 하는 카메라 명령어들(770)을 포함할 수 있다.
메모리(750)는 도 1 내지 도 6을 참조하여 설명한 바와 같이 원격 키보드 프로세스들 및 기능들과 같은 기타 프로세스들 및 기능들을 용이하게 하는 기타 소프트웨어 명령어들(772)을 저장할 수 있다.
메모리(750)는 또한 웹 비디오 관련 프로세스들 및 기능들을 용이하게 하는 웹 비디오 명령어들과 같은 기타 소프트웨어 명령어들(774); 및/또는 웹 쇼핑 관련 프로세스들 및 기능들을 용이하게 하는 웹 쇼핑 명령어들을 저장할 수 있다. 일부 구현예들에서, 미디어 프로세싱 명령어들(766)은 오디오 프로세싱 관련 프로세스들 및 기능들과 비디오 프로세싱 관련 프로세스들 및 기능들을 각각 용이하게 하는 오디오 프로세싱 명령어들과 비디오 프로세싱 명령어들로 나뉜다.
위에 확인된 명령어들 및 애플리케이션들 각각은 상기 설명한 하나 이상의 기능을 수행하기 위한 명령어들의 세트에 대응할 수 있다. 이들 명령어는 별개의 소프트웨어 프로그램들, 절차들, 또는 모듈들로서 구현될 필요는 없다. 메모리(750)는 추가적인 명령어 또는 더 적은 수의 명령어를 포함할 수 있다. 또한, 컴퓨팅 디바이스(700)의 다양한 기능들은, 하나 이상의 신호 프로세싱 및/또는 ASIC(application specific integrated circuit)를 포함하는 하드웨어 및/또는 소프트웨어로 구현될 수 있다.

Claims (21)

  1. 방법으로서,
    사용자 디바이스에 의해, 상기 사용자 디바이스 상에서 가상 키보드를 호출하도록 사용자에게 프롬프트하는 제1 통지를 제시하는 단계;
    상기 사용자 디바이스에 의해, 상기 제1 통지를 통해, 상기 사용자 디바이스 상에서 상기 가상 키보드를 호출하는 제1 사용자 입력을 수신하는 단계;
    상기 사용자 디바이스의 디스플레이 상에, 입력을 제공하기 위한 상기 가상 키보드를 제시하는 단계 - 상기 가상 키보드는 상기 사용자 디바이스 상의 임의의 사용자 애플리케이션과 구별되는 상기 사용자 디바이스의 운영 체제에 의해 제공됨 -; 및
    상기 사용자 디바이스를 통해, 적어도 하나의 명령을 상기 가상 키보드에 제공하는 사용자 음성 입력에 대응하는 데이터를 수신하는 단계를 포함하는, 방법.
  2. 제1항에 있어서,
    상기 사용자 디바이스에 의해, 상기 사용자 음성 입력에 대응하는 상기 데이터를 수신하기 전에 상기 사용자 디바이스 상의 상기 가상 키보드의 음성 제어를 가능하게 하는 제2 사용자 입력을 수신하는 단계;
    상기 사용자 디바이스에 의해, 상기 사용자 음성 입력에 대응하는 상기 데이터로부터 상기 적어도 하나의 명령을 결정하는 단계; 및
    상기 사용자 디바이스에 의해, 상기 적어도 하나의 명령을 미디어 디바이스에 전송하는 단계를 더 포함하는, 방법.
  3. 제1항에 있어서,
    상기 제1 통지를 제시하는 단계 전에, 상기 사용자 디바이스에 의해, 미디어 디바이스로부터 브로드캐스트된 상태 광고 메시지를 수신하는 단계; 및
    상기 상태 광고 메시지에 기초하여, 상기 사용자 디바이스에 의해, 상기 미디어 디바이스 상의 입력 제어부가 현재 선택된다고 결정하는 단계를 더 포함하고,
    상기 사용자 디바이스 상에서 상기 가상 키보드를 호출하도록 상기 사용자에게 프롬프트하는 상기 제1 통지는, 상기 미디어 디바이스 상의 상기 입력 제어부가 현재 선택된다는 결정에 응답하여 제시되는, 방법.
  4. 제3항에 있어서,
    상기 사용자 디바이스에 의해, 상기 현재 선택된 입력 제어부의 목적을 설명하는 제어 정보를 수신하는 단계; 및
    상기 가상 키보드와 동시에 상기 제어 정보를 제시하는 단계를 더 포함하는, 방법.
  5. 제1항에 있어서, 상기 가상 키보드는 미디어 디바이스 상에서 선택된 입력 제어부에 입력을 제공하도록 구성되고, 상기 방법은,
    상기 사용자 디바이스 상에서 상기 제1 통지의 제1 선택에 응답하여, 상기 사용자 디바이스에 의해, 상기 미디어 디바이스와의 연결을 확립하는 단계;
    상기 사용자 디바이스에 의해, 상기 가상 키보드를 통해 하나 이상의 문자들 및/또는 그래픽 요소들을 선택하는 제2 사용자 입력을 수신하는 단계; 및
    상기 사용자 디바이스에 의해, 상기 제2 사용자 입력을 상기 미디어 디바이스에 전송하는 단계를 더 포함하는, 방법.
  6. 제1항에 있어서, 상기 가상 키보드는, 사용자 애플리케이션을 호출함 없이 상기 사용자 디바이스의 상기 운영 체제를 통해 상기 사용자 디바이스의 상기 디스플레이 상에 제시되는, 방법.
  7. 제1항에 있어서, 상기 사용자 디바이스는 상기 가상 키보드를 호출하기 전에 그리고 상기 가상 키보드가 상기 사용자 디바이스의 상기 디스플레이 상에 제시되는 시간 기간 동안 잠금되는, 방법.
  8. 시스템으로서,
    하나 이상의 프로세서; 및
    하나 이상의 명령어들의 시퀀스들을 포함하는 비일시적 컴퓨터 판독가능 매체를 포함하며, 상기 명령어들은, 상기 하나 이상의 프로세서에 의해 실행될 때,
    사용자 디바이스에 의해, 상기 사용자 디바이스 상에서 가상 키보드를 호출하도록 사용자에게 프롬프트하는 제1 통지를 제시하는 단계;
    상기 사용자 디바이스에 의해, 상기 제1 통지를 통해, 상기 사용자 디바이스 상에서 상기 가상 키보드를 호출하는 제1 사용자 입력을 수신하는 단계;
    상기 사용자 디바이스의 디스플레이 상에, 입력을 제공하기 위한 상기 가상 키보드를 제시하는 단계 - 상기 가상 키보드는 상기 사용자 디바이스 상의 임의의 사용자 애플리케이션과 구별되는 상기 사용자 디바이스의 운영 체제에 의해 제공됨 -; 및
    상기 사용자 디바이스를 통해, 적어도 하나의 명령을 상기 가상 키보드에 제공하는 사용자 음성 입력에 대응하는 데이터를 수신하는 단계를 유발하는, 시스템.
  9. 제8항에 있어서, 상기 명령어들은,
    상기 사용자 디바이스에 의해, 상기 사용자 음성 입력에 대응하는 상기 데이터를 수신하기 전에 상기 사용자 디바이스 상의 상기 가상 키보드의 음성 제어를 가능하게 하는 제2 사용자 입력을 수신하는 단계;
    상기 사용자 디바이스에 의해, 상기 사용자 음성 입력에 대응하는 상기 데이터로부터 상기 적어도 하나의 명령을 결정하는 단계; 및
    상기 사용자 디바이스에 의해, 상기 적어도 하나의 명령을 미디어 디바이스에 전송하는 단계를 유발하는, 시스템.
  10. 제8항에 있어서, 상기 명령어들은,
    상기 제1 통지를 제시하는 단계 전에, 상기 사용자 디바이스에 의해, 미디어 디바이스로부터 브로드캐스트된 상태 광고 메시지를 수신하는 단계; 및
    상기 상태 광고 메시지에 기초하여, 상기 사용자 디바이스에 의해, 상기 미디어 디바이스 상의 입력 제어부가 현재 선택된다고 결정하는 단계를 유발하고,
    상기 사용자 디바이스 상에서 상기 가상 키보드를 호출하도록 상기 사용자에게 프롬프트하는 상기 제1 통지는, 상기 미디어 디바이스 상의 상기 입력 제어부가 현재 선택된다는 결정에 응답하여 제시되는, 시스템.
  11. 제10항에 있어서, 상기 명령어들은,
    상기 사용자 디바이스에 의해, 상기 현재 선택된 입력 제어부의 목적을 설명하는 제어 정보를 수신하는 단계; 및
    상기 가상 키보드와 동시에 상기 제어 정보를 제시하는 단계를 유발하는, 시스템.
  12. 제8항에 있어서, 상기 가상 키보드는 미디어 디바이스 상에서 선택된 입력 제어부에 입력을 제공하도록 구성되고, 상기 명령어들은,
    상기 사용자 디바이스 상에서 상기 제1 통지의 제1 선택에 응답하여, 상기 사용자 디바이스에 의해, 상기 미디어 디바이스와의 연결을 확립하는 단계;
    상기 사용자 디바이스에 의해, 상기 가상 키보드를 통해 하나 이상의 문자들 및/또는 그래픽 요소들을 선택하는 제2 사용자 입력을 수신하는 단계; 및
    상기 사용자 디바이스에 의해, 상기 제2 사용자 입력을 상기 미디어 디바이스에 전송하는 단계를 유발하는, 시스템.
  13. 제8항에 있어서, 상기 가상 키보드는 사용자 애플리케이션을 호출함 없이 상기 사용자 디바이스의 상기 운영 체제를 통해 상기 사용자 디바이스의 상기 디스플레이 상에 제시되는, 시스템.
  14. 제8항에 있어서, 상기 사용자 디바이스는 상기 가상 키보드를 호출하기 전에 그리고 상기 가상 키보드가 상기 사용자 디바이스의 상기 디스플레이 상에 제시되는 시간 기간 동안 잠금되는, 시스템.
  15. 하나 이상의 명령어들의 시퀀스들을 포함하는 비일시적 컴퓨터 판독가능 매체로서, 상기 명령어들은 하나 이상의 프로세서에 의해 실행될 때 상기 하나 이상의 프로세서로 하여금,
    사용자 디바이스에 의해, 상기 사용자 디바이스 상에서 가상 키보드를 호출하도록 사용자에게 프롬프트하는 제1 통지를 제시하고;
    상기 사용자 디바이스에 의해, 상기 제1 통지를 통해, 상기 사용자 디바이스 상에서 상기 가상 키보드를 호출하는 제1 사용자 입력을 수신하고;
    상기 사용자 디바이스의 디스플레이 상에, 입력을 제공하기 위한 상기 가상 키보드를 제시하고 - 상기 가상 키보드는 상기 사용자 디바이스 상의 임의의 사용자 애플리케이션과 구별되는 상기 사용자 디바이스의 운영 체제에 의해 제공됨 -;
    상기 사용자 디바이스를 통해, 적어도 하나의 명령을 상기 가상 키보드에 제공하는 사용자 음성 입력에 대응하는 데이터를 수신하게 하는, 비일시적 컴퓨터 판독가능 매체.
  16. 제15항에 있어서, 상기 명령어들은 상기 하나 이상의 프로세서로 하여금,
    상기 사용자 디바이스에 의해, 상기 사용자 음성 입력에 대응하는 상기 데이터를 수신하기 전에 상기 사용자 디바이스 상의 상기 가상 키보드의 음성 제어를 가능하게 하는 제2 사용자 입력을 수신하고;
    상기 사용자 디바이스에 의해, 상기 사용자 음성 입력에 대응하는 상기 데이터로부터 상기 적어도 하나의 명령을 결정하고;
    상기 사용자 디바이스에 의해, 상기 적어도 하나의 명령을 미디어 디바이스에 전송하게 하는, 비일시적 컴퓨터 판독가능 매체.
  17. 제15항에 있어서, 상기 명령어들은 상기 하나 이상의 프로세서로 하여금,
    상기 제1 통지를 제시하기 전에, 상기 사용자 디바이스에 의해, 미디어 디바이스로부터 브로드캐스트된 상태 광고 메시지를 수신하고;
    상기 상태 광고 메시지에 기초하여, 상기 사용자 디바이스에 의해, 상기 미디어 디바이스 상의 입력 제어부가 현재 선택된다고 결정하게 하고,
    상기 사용자 디바이스 상에서 상기 가상 키보드를 호출하도록 상기 사용자에게 프롬프트하는 상기 제1 통지는, 상기 미디어 디바이스 상의 상기 입력 제어부가 현재 선택된다는 결정에 응답하여 제시되는, 비일시적 컴퓨터 판독가능 매체.
  18. 제17항에 있어서, 상기 명령어들은 상기 하나 이상의 프로세서로 하여금,
    상기 사용자 디바이스에 의해, 상기 현재 선택된 입력 제어부의 목적을 설명하는 제어 정보를 수신하고;
    상기 가상 키보드와 동시에 상기 제어 정보를 제시하게 하는, 비일시적 컴퓨터 판독가능 매체.
  19. 제15항에 있어서, 상기 가상 키보드는 미디어 디바이스 상에서 선택된 입력 제어부에 입력을 제공하도록 구성되고, 상기 명령어들은 상기 하나 이상의 프로세서로 하여금,
    상기 사용자 디바이스 상에서 상기 제1 통지의 제1 선택에 응답하여, 상기 사용자 디바이스에 의해, 상기 미디어 디바이스와의 연결을 확립하고;
    상기 사용자 디바이스에 의해, 상기 가상 키보드를 통해 하나 이상의 문자들 및/또는 그래픽 요소들을 선택하는 제2 사용자 입력을 수신하고;
    상기 사용자 디바이스에 의해, 상기 제2 사용자 입력을 상기 미디어 디바이스에 전송하게 하는, 비일시적 컴퓨터 판독가능 매체.
  20. 제15항에 있어서, 상기 가상 키보드는 사용자 애플리케이션을 호출함 없이 상기 사용자 디바이스의 상기 운영 체제를 통해 상기 사용자 디바이스의 상기 디스플레이 상에 제시되는, 비일시적 컴퓨터 판독가능 매체.
  21. 제15항에 있어서, 상기 사용자 디바이스는 상기 가상 키보드를 호출하기 전에 그리고 상기 가상 키보드가 상기 사용자 디바이스의 상기 디스플레이 상에 제시되는 시간 기간 동안 잠금되는, 비일시적 컴퓨터 판독가능 매체.
KR1020207036339A 2016-06-10 2017-05-22 원격 키보드 서비스 제공 KR102407021B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020227018716A KR102581869B1 (ko) 2016-06-10 2017-05-22 원격 키보드 서비스 제공

Applications Claiming Priority (6)

Application Number Priority Date Filing Date Title
US201662348771P 2016-06-10 2016-06-10
US62/348,771 2016-06-10
US15/272,010 US10126945B2 (en) 2016-06-10 2016-09-21 Providing a remote keyboard service
US15/272,010 2016-09-21
KR1020207026720A KR102194753B1 (ko) 2016-06-10 2017-05-22 원격 키보드 서비스 제공
PCT/US2017/033870 WO2017213836A1 (en) 2016-06-10 2017-05-22 Providing a remote keyboard service

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
KR1020207026720A Division KR102194753B1 (ko) 2016-06-10 2017-05-22 원격 키보드 서비스 제공

Related Child Applications (1)

Application Number Title Priority Date Filing Date
KR1020227018716A Division KR102581869B1 (ko) 2016-06-10 2017-05-22 원격 키보드 서비스 제공

Publications (2)

Publication Number Publication Date
KR20200143525A true KR20200143525A (ko) 2020-12-23
KR102407021B1 KR102407021B1 (ko) 2022-06-08

Family

ID=60574046

Family Applications (5)

Application Number Title Priority Date Filing Date
KR1020207026720A KR102194753B1 (ko) 2016-06-10 2017-05-22 원격 키보드 서비스 제공
KR1020237031825A KR20230137485A (ko) 2016-06-10 2017-05-22 원격 키보드 서비스 제공
KR1020207036339A KR102407021B1 (ko) 2016-06-10 2017-05-22 원격 키보드 서비스 제공
KR1020187035143A KR102159443B1 (ko) 2016-06-10 2017-05-22 원격 키보드 서비스 제공
KR1020227018716A KR102581869B1 (ko) 2016-06-10 2017-05-22 원격 키보드 서비스 제공

Family Applications Before (2)

Application Number Title Priority Date Filing Date
KR1020207026720A KR102194753B1 (ko) 2016-06-10 2017-05-22 원격 키보드 서비스 제공
KR1020237031825A KR20230137485A (ko) 2016-06-10 2017-05-22 원격 키보드 서비스 제공

Family Applications After (2)

Application Number Title Priority Date Filing Date
KR1020187035143A KR102159443B1 (ko) 2016-06-10 2017-05-22 원격 키보드 서비스 제공
KR1020227018716A KR102581869B1 (ko) 2016-06-10 2017-05-22 원격 키보드 서비스 제공

Country Status (8)

Country Link
US (7) US10126945B2 (ko)
EP (2) EP3893100A1 (ko)
JP (4) JP6771045B2 (ko)
KR (5) KR102194753B1 (ko)
CN (2) CN109313535B (ko)
AU (4) AU2017277671B2 (ko)
BR (1) BR112018075304A8 (ko)
WO (1) WO2017213836A1 (ko)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10484459B2 (en) * 2015-09-03 2019-11-19 Nvidia Corporation Dynamically providing host input control for streaming applications
USD912682S1 (en) * 2016-03-29 2021-03-09 Beijing Sogou Technology Development Co., Ltd. Display screen or portion thereof with animated graphical user interface
US10126945B2 (en) 2016-06-10 2018-11-13 Apple Inc. Providing a remote keyboard service
TWI658401B (zh) * 2017-11-14 2019-05-01 財團法人工業技術研究院 基於虛擬化行動架構之行動通訊裝置及其相關輸入法切換方法
US11288347B2 (en) * 2019-03-07 2022-03-29 Paypal, Inc. Login from an alternate electronic device
US20230418466A1 (en) * 2020-10-26 2023-12-28 Emmanuel Proulx Keyboard mapped graphical user interface systems and methods
CN112491974A (zh) * 2020-11-11 2021-03-12 恒安嘉新(北京)科技股份公司 远程浏览方法、装置、存储介质、终端设备及服务器

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20140086227A (ko) * 2012-12-28 2014-07-08 (주)휴맥스 클라우드 서비스를 제공하기 위한 장치 및 방법, 이를 구비한 시스템
US20150189461A1 (en) * 2013-03-13 2015-07-02 Aliphcom Methods, systems and apparatus to affect rf transmission from a non-linked wireless client
KR20160006753A (ko) * 2013-06-07 2016-01-19 애플 인크. 모바일 디바이스를 이용한 미디어 디바이스의 제어
US20160048217A1 (en) * 2014-08-15 2016-02-18 Masami Sakita Mobile Keyboard

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10A (en) 1836-08-10 Gtttlslto andi
US20090161579A1 (en) * 2007-12-20 2009-06-25 Mika Saaranen Method, system, and apparatus for implementing network capable input devices
KR101058525B1 (ko) * 2009-10-09 2011-08-23 삼성전자주식회사 텍스트 입력방법 및 이를 적용한 디스플레이 장치
JPWO2012070682A1 (ja) * 2010-11-24 2014-05-19 日本電気株式会社 入力装置及び入力装置の制御方法
US10564791B2 (en) * 2011-07-21 2020-02-18 Nokia Technologies Oy Method and apparatus for triggering a remote data entry interface
JP2015038665A (ja) * 2012-01-06 2015-02-26 株式会社東芝 電子機器、及び電子機器の制御方法
JP2013162202A (ja) 2012-02-02 2013-08-19 Nec Casio Mobile Communications Ltd 情報処理装置、情報処理方法及びプログラム
JP2014068240A (ja) 2012-09-26 2014-04-17 Kyocera Corp 電子機器、制御方法、及び制御プログラム
JP6205568B2 (ja) * 2013-01-16 2017-10-04 株式会社日本デジタル研究所 リモートアクセス制御システム、方法、およびプログラム
US20150143234A1 (en) * 2013-10-22 2015-05-21 Forbes Holten Norris, III Ergonomic micro user interface display and editing
JP6314499B2 (ja) 2014-01-28 2018-04-25 ブラザー工業株式会社 操作支援プログラムおよび端末装置
US20160085430A1 (en) * 2014-09-24 2016-03-24 Microsoft Corporation Adapting user interface to interaction criteria and component properties
CN104391576A (zh) * 2014-11-24 2015-03-04 深圳市美贝壳科技有限公司 一种基于无线以太网的远程输入的方法和装置
US9514333B1 (en) * 2014-12-16 2016-12-06 Amazon Technologies, Inc. Secure remote application shares
JP6531427B2 (ja) 2015-02-27 2019-06-19 コニカミノルタ株式会社 処理システム、端末装置、処理装置、処理装置制御方法、およびコンピュータプログラム
US10126945B2 (en) 2016-06-10 2018-11-13 Apple Inc. Providing a remote keyboard service

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20140086227A (ko) * 2012-12-28 2014-07-08 (주)휴맥스 클라우드 서비스를 제공하기 위한 장치 및 방법, 이를 구비한 시스템
US20150189461A1 (en) * 2013-03-13 2015-07-02 Aliphcom Methods, systems and apparatus to affect rf transmission from a non-linked wireless client
KR20160006753A (ko) * 2013-06-07 2016-01-19 애플 인크. 모바일 디바이스를 이용한 미디어 디바이스의 제어
US20160048217A1 (en) * 2014-08-15 2016-02-18 Masami Sakita Mobile Keyboard

Also Published As

Publication number Publication date
AU2022202368A1 (en) 2022-04-28
JP2019526094A (ja) 2019-09-12
BR112018075304A8 (pt) 2023-01-31
JP6979497B2 (ja) 2021-12-15
AU2017277671A1 (en) 2018-11-22
US11868611B2 (en) 2024-01-09
US20200387303A1 (en) 2020-12-10
KR20200110474A (ko) 2020-09-23
US11204695B2 (en) 2021-12-21
US10126945B2 (en) 2018-11-13
EP3440537A1 (en) 2019-02-13
KR102407021B1 (ko) 2022-06-08
AU2022202368B2 (en) 2023-06-01
CN109313535B (zh) 2021-12-07
KR20190005192A (ko) 2019-01-15
WO2017213836A1 (en) 2017-12-14
US20240086062A1 (en) 2024-03-14
BR112018075304A2 (pt) 2019-03-19
JP7192079B2 (ja) 2022-12-19
US10331343B2 (en) 2019-06-25
KR102159443B1 (ko) 2020-09-23
US20200012422A1 (en) 2020-01-09
AU2023203215A1 (en) 2023-06-15
CN109313535A (zh) 2019-02-05
AU2020227074B2 (en) 2022-03-17
US20190050146A1 (en) 2019-02-14
US11561693B2 (en) 2023-01-24
AU2017277671B2 (en) 2020-07-02
KR20230137485A (ko) 2023-10-04
US10664161B2 (en) 2020-05-26
EP3440537B1 (en) 2021-07-28
JP2021007032A (ja) 2021-01-21
JP6771045B2 (ja) 2020-10-21
JP2022028802A (ja) 2022-02-16
JP2023036644A (ja) 2023-03-14
KR102581869B1 (ko) 2023-09-22
US20170357441A1 (en) 2017-12-14
KR102194753B1 (ko) 2020-12-23
CN114089905A (zh) 2022-02-25
AU2020227074A1 (en) 2020-09-24
KR20220081387A (ko) 2022-06-15
EP3893100A1 (en) 2021-10-13
US20230122528A1 (en) 2023-04-20
US20220066635A1 (en) 2022-03-03

Similar Documents

Publication Publication Date Title
KR102159443B1 (ko) 원격 키보드 서비스 제공
US10785221B2 (en) Credential delegation
EP3593537B1 (en) Transferring playback queues between devices

Legal Events

Date Code Title Description
A107 Divisional application of patent
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