KR20150132312A - 네이티브 애플리케이션에 대한 웹 자산 액세스를 가능하게 하는 시스템 및 방법 - Google Patents

네이티브 애플리케이션에 대한 웹 자산 액세스를 가능하게 하는 시스템 및 방법 Download PDF

Info

Publication number
KR20150132312A
KR20150132312A KR1020157028643A KR20157028643A KR20150132312A KR 20150132312 A KR20150132312 A KR 20150132312A KR 1020157028643 A KR1020157028643 A KR 1020157028643A KR 20157028643 A KR20157028643 A KR 20157028643A KR 20150132312 A KR20150132312 A KR 20150132312A
Authority
KR
South Korea
Prior art keywords
wireless device
context
content
executable code
native application
Prior art date
Application number
KR1020157028643A
Other languages
English (en)
Other versions
KR101680509B1 (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 KR20150132312A publication Critical patent/KR20150132312A/ko
Application granted granted Critical
Publication of KR101680509B1 publication Critical patent/KR101680509B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
    • 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/445Program loading or initiating
    • G06F9/44505Configuring for program initiating, e.g. using registry, configuration files
    • G06F9/4451User profiles; Roaming
    • 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/46Multiprogramming arrangements
    • G06F9/54Interprogram communication

Abstract

네이티브 애플리케이션에 대한 웹 자산 액세스를 허용하는 방법은 무선 디바이스 상에 네이티브 애플리케이션을 제공하는 단계; 컨텐츠에 대한 요청을 전송하는 단계; 실행가능 코드를 포함하는 컨텐츠를 수신하는 단계; 무선 디바이스에 관련된 콘텍스트 정보에 액세스하기 위해 실행가능 코드를 실행하는 단계; 콘텍스트 정보를 전송하는 단계; 및 콘텍스트 정보에 기초하여 무선 디바이스에서 콘텍스트 컨텐츠를 수신하는 단계를 포함한다.

Description

네이티브 애플리케이션에 대한 웹 자산 액세스를 가능하게 하는 시스템 및 방법{SYSTEM AND METHOD TO ENABLE WEB PROPERTY ACCESS TO A NATIVE APPLICATION}
웹사이트들로부터의 컨텐츠의 형태의 정보는 통상적으로 많은 상이한 타입들의 디바이스들 및 사용자들에게 제공된다. 점점 더 많은 웹 컨텐츠를 증가적으로 수신하고 있는 하나의 타입의 디바이스 및 사용자는 무선 디바이스 및 모바일 사용자이다. 무선 디바이스는 휴대용 컴퓨팅 디바이스, 태블릿 컴퓨터, 스마트 폰, 또는 웹 컨텐츠를 브라우징하고 수신할 수 있는 임의의 다른 휴대용, 또는 무선 디바이스일 수 있다.
모바일 무선 컴퓨팅 디바이스 상의 웹 브라우저는 온라인으로 정보에 액세스하는 일차적인 방법을 제공한다. 일부 사용자들은 무선 디바이스 상에 하나 이상의 애플리케이션들을 설치할 수도 있지만, 대다수의 사용자들의 경우, 온라인 컨텐츠에 액세스하는 것은 통상 디바이스에 네이티브인 웹 브라우저, 또는 디바이스로 다운로드되는 웹 브라우저를 사용하여 행해진다. 웹 브라우저들은 W3C (World Wide Web consortium) 사용들에 따르고, 일부 웹 브라우저들은 추가적인 능력들을 포함할 수도 있다. 그러나, 웹 브라우저들은 그들이 설치되는 디바이스의 네이티브 애플리케이션 프로그램 인터페이스 (API) 를 완전히 브릿지하지 않으며, 따라서, 웹 애플리케이션들은 네이티브 애플리케이션들에 비해 기능성에 있어서 제한된다.
HTML 5 에 따라 동작하는 대부분의 웹 애플리케이션들에 의해 널리 활용되지 않았던 능력들 중 하나는 웹 소켓 인터페이스를 사용함으로써 브라우저가 실행되고 있는 동일한 플랫폼 상의 애플리케이션에 액세스하기 위해 실행가능 코드 (즉, 자바스크립트 코드) 를 인에이블하는 능력이다. 예를 들어, 웹 애플리케이션이 (사용자의 로케이션; 예를 들어, 집에서, 직장에서, 체육관에서, 학교에서 등과 같은) 사용자의 일상생활에 대해 그 웹 애플리케이션에 액세스하고 있는 사용자의 로케이션에 기초하여 그것의 거동을 적응시키는 것이 바람직하다면, 그것은 사용자의 로케이션을 능동적으로 모니터하고 시간의 경과에 따라 이들 로케이션들의 이력 또는 데이테베이스를 구축하는 능력을 요구할 것이다. 그러나, 이것은 사용자 로케이션이 능동적 웹 브라우징 동안만 액세스될 수 있고 "능동적 모니터링" 의 개념이 애플리케이션 및 브라우저 라이프사이클 제한들로 인해 HTML 5 하에서 웹 브라우저의 배경에서 작동하는 자바스크립트 코드에 의해 구현될 수 없기 때문에 현존하는 웹 브라우저들에게는 가능하지 않다. 예를 들어, HTML 5 애플리케이션은 그것의 작동자 (worker) 들 중 하나의 라이프사이클을 제어하지 않을 수도 있고, 그것은 자원 충돌들의 경우에 브라우저에 의해 어느 때라도 셧다운될 수도 있다. 용어 "작동자" 는 배경 프로세스로서 그 자신의 스레드에서 실행될 수 있는 HTML 5 내의 자바스크립트를 지칭한다. 따라서, 웹 사이트는 사용자가 디바이스를 지니고 사용함에 따라 시간의 경과에 따라 어그리게이트될 수 있는 정보를 사용하여 웹 사이트에 액세스하는 디바이스의 사용자에 관련된 중대한 상황 정보로부터 그것의 컨텐츠 전달을 적응시킬 수 없다.
단지 예를 들자면 야후 (www.yahoo.com) 와 같은 일부 대규모 웹 사이트들은 그 웹 사이트에서의 사용자의 경험을 최적화하기 위해 네이티브 애플리케이션을 다운로드하도록 그들의 사용자를 고무시키는 능력을 가진다. 불행하게도, 이들 웹 사이트들은 일반적으로 이메일, 뉴스, 순간 메시징과 같은 매우 특정의 서비스들을 제공하고, 그들은 여전히 네이티브 애플리케이션에서 캡쳐되지 않는 웹 자산들 (대상 웹 사이트와 동일한 도메인 아래의 다른 웹 사이트들) 을 갖는다.
따라서, 사용자에게 풍부한 경험을 제공하기 위해 사용자들이 그들의 사이트들에서 브라우징하고 있는 동안 사용자 특정의 및 개인적 정보에 액세스하는 웹 자산을 허용하는 것이 바람직할 것이다.
네이티브 애플리케이션에 대한 웹 자산 액세스를 허용하는 방법의 실시형태는 무선 디바이스 상에 네이티브 애플리케이션을 제공하는 단계, 컨텐츠에 대한 요청을 전송하는 단계, 실행가능 코드를 포함하는 컨텐츠를 수신하는 단계, 무선 디바이스에 관련된 상황 정보에 액세스하기 위해 그 실행가능 코드를 실행하는 단계, 상황 정보를 전송하는 단계, 및 상황 정보에 기초하여 무선 디바이스에서 상황 컨텐츠를 수신하는 단계를 포함한다.
무선 디바이스의 실시형태는 네이티브 애플리케이션, 실행가능 코드를 포함하는 컨텐츠에 대한 요청을 전송하고 그 컨텐츠를 수신하도록 구성된 웹 브라우저, 및 무선 디바이스 상에 위치된 상황 정보에 액세스하기 위해 실행가능 정보를 실행하도록 구성된 프로세서를 포함한다. 웹 브라우저는 상황 정보를 전송하도록 구성되고, 무선 디바이스는 상황 정보에 기초한 상황 컨텐츠를 수신하도록 구성된다.
도면들에서, 유사한 참조 번호들은 달리 표시되지 않는 한 여러 도면들에 걸쳐 유사한 부분들을 지칭한다. "102a" 또는 "102b" 와 같은 문자 지정들을 갖는 참조 번호들의 경우, 그 문자 지정들은 동일한 도면 내에 존재하는 2 개의 유사한 부분들 또는 엘리먼트들을 구별할 수도 있다. 참조 번호들에 대한 문자 지정들은 참조 번호가 모든 도면들 내의 동일한 참조 번호를 갖는 모든 부분들을 포함하는 것이 의도될 때 생략될 수도 있다.
도 1 은 웹 자산이 네이티브 애플리케이션에 액세스하는 것을 가능하게 하는 시스템의 실시형태를 도시하는 기능 블록도이다.
도 2 는 네이티브 애플리케이션에 대한 웹 자산 액세스를 가능하게 하는 방법의 실시형태를 도시하는 콜 흐름도이다.
도 3 은 네이티브 애플리케이션에 대한 웹 자산 액세스를 가능하게 하는 방법의 실시형태를 기술하는 플로우 챠트이다.
도 4 는 네이티브 애플리케이션에 대한 웹 자산 액세스를 가능하게 하는 방법의 대안적인 실시형태를 도시하는 콜 흐름도이다.
도 5 는 네이티브 애플리케이션에 대한 웹 자산 액세스를 가능하게 하는 방법의 대안적인 실시형태를 기술하는 플로우 챠트이다.
도 6 은 네이티브 애플리케이션에 대한 웹 자산 액세스를 가능하게 하는 시스템 및 방법이 구현될 수 있는 무선 디바이스의 예를 도시하는 블록도이다.
단어 "예시적인" 은 "예, 옛, 또는 설명으로서 작용하는" 을 의미하기 위해 여기서 사용된다. "예시적인" 것으로서 여기에 기술된 임의의 양태는 반드시 다른 양태들에 비해 바람직하다거나 이로운 것으로서 해석되지 않아야 한다.
본 설명에서, 용어 "애플리케이션" 은 또한 오브젝트 코드, 스크립트들, 바이트 코드, 마크업 언어 파일들, 및 패치들과 같은 실행가능 컨텐츠를 갖는 파일들을 포함할 수도 있다. 또한, 여기에서 언급된 "애플리케이션" 은 또한 오픈될 필요가 있을 수도 있는 문서들 또는 액세스될 필요가 있는 다른 데이터 파일들과 같은 특성상 실행가능하지 않은 파일들을 포함할 수도 있다.
용어 "컨텐츠" 는 또한 오브젝트 코드, 스크립트들, 바이트 코드, 마크업 언어 파일들, 및 패치들과 같은 실행가능 컨텐츠를 갖는 파일들을 포함할 수도 있다. 또한, 여기에서 언급된 "컨텐츠" 는 또한 오픈될 필요가 있을 수도 있는 문서들 또는 액세스될 필요가 있는 다른 데이터 파일들과 같은 특성상 실행가능하지 않은 파일들을 포함할 수도 있다.
본 설명에 사용되는 바와 같이, 용어들 "컴포넌트", "데이터베이스", "모듈", "시스템" 등은 하드웨어, 펌웨어, 하드웨어 및 소프트웨어의 조합, 소프트웨어, 또는 실행 중인 소프트웨어든 간에 컴퓨터 관련 엔티티를 지칭하도록 의도된다. 예를 들어, 컴포넌트는 프로세서 상에서 실행 중인 프로세스, 프로세서, 오브젝트, 실행가능물, 실행의 스레드, 프로그램, 및/또는 컴퓨터일 수도 있지만, 이들에 제한되지 않는다. 예시로써, 컴퓨팅 디바이스 상에서 실행하는 애플리케이션 및 컴퓨팅 디바이스 양자 모두가 컴포넌트일 수도 있다. 하나 이상의 컴포넌트들이 프로세스 및/또는 실행의 스레드 내에 상주할 수도 있고, 컴포넌트는 하나의 컴퓨터 상에 로컬화될 수도 있고 및/또는 둘 이상의 컴퓨터들 사이에 분포될 수도 있다. 또한, 이들 컴포넌트들은 저장된 여러 데이터 구조들을 갖는 여러 컴퓨터 판독가능 매체들로부터 실행할 수도 있다. 컴포넌트들은 하나 이상의 데이터 패킷들 (예를 들어, 로컬 시스템, 분포된 시스템에서, 및/또는 신호를 통해 다른 시스템들과 인터넷과 같은 네트워크를 가로질러 다른 컴포넌트와 상호작용하는 하나의 컴포넌트로부터의 데이터) 을 갖는 신호에 따라서와 같이 로컬 및/또는 원격 프로세스들을 통해 통신할 수도 있다.
여기에서 사용되는 바와 같이, 용어 "사용자 디바이스" 는 웹 사이트로부터 컨텐츠를 수신하고 웹사이트로 정보를 송신할 수 있는 디바이스를 포함한다. 사용자 디바이스는 고정 디바이스, 무선 디바이스 또는 이동 디바이스일 수 있다.
여기서 사용되는 바와 같이, 용어 "무선 디바이스" 는 웹 자산 또는 웹 사이트에 액세스할 수 있는 임의의 휴대용 또는 무선 컴퓨팅 디바이스를 지칭한다. 여기서 사용되는 바와 같이, 용어 "사용자 디바이스" 는 용어 "무선 디바이스" 와 상호 교환가능하다.
여기서 사용되는 바와 같이, 용어 "사용자" 는 사용자 디바이스 또는 무선 디바이스 상에서 컨텐츠를 수신하고 웹사이트로 정보를 송신하는 개인을 지칭한다.
여기서 사용되는 바와 같이, 용어 "콘텍스트" 는 물리적, 논리적, 사회적 및 다른 상황 정보와 같은, 사용자, 사용자 디바이스, 또는 무선 디바이스의 임의의 또는 모든 속성들을 지칭한다.
여기서 사용되는 바와 같이, 용어들 "콘텍스트 인식 메타데이터" 및 "콘텍스트 메타데이터" 는 사용자, 사용자 디바이스, 또는 무선 디바이스의 콘텍스트를 기술하거나 정의하는 메타데이터를 지칭한다.
여기서 사용되는 바와 같이, 용어 "콘텍스트 인식 컨텐츠" 는 사용자 디바이스 또는 무선 디바이스로 전달되고 사용자의 콘텍스트에 맞춰진 컨텐츠를 지칭한다.
여기서 사용되는 바와 같이, 용어 "웹 자산" 은 하나 이상의 웹 페이지들을 갖는 하나 이상의 웹사이트들을 갖는 엔티티를 지칭한다.
실시형태에서, 네이티브 애플리케이션에 대한 웹 자산 액세스를 가능하게 하는 시스템 및 방법은 네이티브 애플리케이션이 콘텍스트 인식 애플리케이션과 같은 시스템을 임베딩하는 것을 가능하게 하는 것, 및 네이티브 애플리케이션 (예를 들어, 야후) 의 개발자에 특정한 웹 자산들이 네이티브 기능들로부터 이익을 얻을 수 있도록 (네이티브 애플리케이션이 다운로드되는 무선 디바이스에 대해) 로컬인 웹 소켓 상호작용을 가능하게 하는 것을 포함한다. 예를 들어, 야후가 그들의 네이티브 애플리케이션에 콘텍스트 인식 애플리케이션을 임베딩하고 그 콘텍스트 인식 애플리케이션이 야후 자산 (웹 사이트) 이 그것에 액세스하는 것을 허용하기 위해 무선 디바이스 상에서 로컬 연결을 오픈하는 경우, 야후의 웹 자산들이 무선 디바이스와 (예를 들어, 웹 소켓 연결을 통해) 통신하기 위해 자바스크립트 코드와 같은 실행가능 코드를 임베딩한 경우, 그리고 무선 디바이스의 사용자가 (콘텍스트 인식 애플리케이션을 임베딩하는) 야후의 네이티브 애플리케이션을 설치한 경우, 야후의 웹 자산들은 사용자의 무선 디바이스로부터 사용자의 상황 데이터에 액세스할 수 있다. 사용자의 상황 데이터는 웹 자산이 무선 디바이스로 콘텍스트 인식 컨텐츠를 제공하는 것을 허용하기 위해 웹 자산에게 콘텍스트 인식 애플리케이션에 의해 이용가능하게 된다. 한 예로서 야후를 사용하면, 이것은 무선 디바이스의 사용자가 네이티브 야후 애플리케이션을 다운로드 및 론치한 후, 무선 디바이스로부터 액세스될 때 야후가 그들의 웹 사이트들 모두에 상황 광고들을 디스클레이하는 것을 허용할 것이다.
도 1 은 웹 자산이 네이티브 애플리케이션에 액세스하는 것을 가능하게 하는 시스템의 실시형태를 도시하는 기능 블록도이다. 시스템 (100) 은 네트워크 (104) 를 통해 웹 서버 (106) 에 연결되는 무선 디바이스 (102) 를 포함한다. 무선 디바이스 (102) 는 셀룰러 전화, 태블릿 컴퓨팅 디바이스, 또는 월드 와이드 웹에 액세스할 수 있는 임의의 다른 무선 디바이스와 같은 임의의 이동 컴퓨팅 디바이스일 수 있고, 통신 채널 (103) 을 통해 네트워크 (104) 에 연결될 수 있다. 무선 통신 채널로서 도시되지만, 통신 채널 (103) 은 임의의 통신 채널일 수 있다. 웹 서버 (106) 는 통신 채널 (105) 을 통해 네트워크 (104) 에 연결될 수 있다. 유선 통신 채널로서 도시되지만, 통신 채널 (105) 은 임의의 통신 채널일 수 있다. 웹 서버 (106) 는 네트워크 (104) 를 통해 웹 자산 (120) 으로부터 무선 디바이스 (102) 로 컨텐츠를 제공할 수 있는 하이퍼텍스트 전송 프로토콜 (HTTP) 일 수 있다. 실시형태에서, 웹 서버 (106) 는 하나 이상의 웹 페이지들 (108) 의 형태로 하나 이상의 웹 사이트들 (107) 로부터 컨텐츠를 유지하고 전달할 수 있다. 웹 페이지 (108) 는 HTMLL 컨텐츠를 포함하여, 여러 웹 기반 컨텐츠를 포함할 수 있고, 단일의 웹 페이지 (108) 가 도시되지만, 웹 자산 (120) 이 다수의 웹 페이지들 (108) 을 갖는 다수의 웹 사이트들을 포함할 수 있다는 것이 이해된다는 것이 이해된다. 네트워크 (104) 는 임의의 광역 또는 로컬 영역 네트워크일 수 있고, 일 실시형태에서, 월드 와이드 웹일 수 있다.
무선 디바이스 (102) 는 월드 와이드 웹에 액세스할 수 있는 고도로 단순화된 무선 디바이스로서 도 1 에서 도시된다. 본 기술에서 통상의 지식을 가진 자들은 무선 디바이스 (102) 가 단순성을 위해 도 1 로부터 생략되는 많은 추가적인 컴포넌트들을 포함한다는 것을 이해할 것이다. 무선 디바이스 (102) 는 웹 브라우저 (110) 및 네이티브 애플리케이션 (115) 을 포함한다.
일 예로서, 네이티브 애플리케이션 (115) 은 웹 자산 (120) 에 의해 또는 웹 사이트 (107) 에 의해 제공되고 무선 디바이스 (102) 로 다운로드되거나, 또는 다르게는 무선 디바이스 (102) 에 설치된 애플리케이션일 수도 있다. 일 예로서, 네이티브 애플리케이션 (115) 은 웹 서버 (106) 로부터 무선 디바이스 (102) 로 다운로드될 수도 있다. 네이티브 애플리케이션 (115) 은 웹 자산 (120) 또는 웹 사이트 (107) 에 의해 제공되거나, 그것에 링크되거나, 그것과 연관된 애플리케이션일 수도 있다. 일 예로서, 웹 사이트 (107) 는 웹 브라우저 (110) 가 웹 자산 (120), 웹 사이트 (107) 또는 웹 자산 (120) 에 의해 유지되는 웹 페이지 (108) 에 액세스하기 위해 사용되는 경우 무선 디바이스 (102) 의 사용자에게 풍부하거나 향상된 사용자 경험을 제공하는 방법으로서 무선 디바이스 (102) 에 네이티브 애플리케이션 (115) 을 제공할 수도 있다.
일 실시형태에서, 네이티브 애플리케이션 (115) 은 애플리케이션 프로그램 (117) 을 포함할 수도 있다. 일 실시형태에서, 애플리케이션 프로그램 (117) 은 콘텍스트 인식 모듈 또는 애플리케이션, 또는 무선 디바이스 (102) 에 관련한 및/또는 무선 디바이스 (102) 의 사용자에 관련한 상황 정보를 수집하고 유지할 수 있는 임의의 모듈 또는 애플리케이션일 수 있다. 이와 관련하여, 애플리케이션 프로그램 (117) 은 그것이 무선 디바이스 (102) 에 관련된 상황 정보에 액세스할 수 있다는 점에서 "리스너" 애플리케이션 또는 "콘텍스트" 애플리케이션으로서 지칭될 수 있다. 대안적인 구현에서, 네이티브 애플리케이션 (115) 은 별도의 애플리케이션 프로그램 (117) 을 사용하지 않고 무선 디바이스 (102) 에 관련한 상황 정보를 수집, 유지 및 액세스할 수 있는 기능성을 제공하는 별도의 또는 통합된 모듈을 포함할 수도 있다. 그러나, 여기에 기술된 실시형태에서, 애플리케이션 프로그램 (117) 은 네이티브 애플리케이션 (115) 에 포함되거나 다르게는 네이티브 애플리케이션 (115) 과 연관되는 콘텍스트 인식 애플리케이션일 수 있고, 콘텍스트 애플리케이션 프로그램 (117) 으로서 지칭될 것이다. 콘텍스트 애플리케이션 프로그램 (117) 은 무선 디바이스 (102) 및/또는 무선 디바이스 (102) 의 사용자에 관련된 상황 정보를 수집, 유지 및 액세스할 수 있다. 용어 "콘텍스트 정보" 는 무선 디바이스 (102) 의 사용자에 관련된 사용자 프로파일, 사용자 브라우징 습관들, 사용자 로케이션, 또는 임의의 다른 상황 정보에 관련한 임의의 정보를 지칭한다.
웹 사이트 (107) 또는 웹 페이지 (108) 는 또한 무선 디바이스 (102) 로 실행가능 코드 (112) 를 전송할 수도 있다. 일 실시형태에서, 실행가능 코드 (112) 는 자바스크립트 코드일 수 있다; 그러나 다른 실행가능 코드가 가능하다. 일 실시형태에서, 실행가능 코드 (112) 는 웹 브라우저 (110) 가 웹 페이지 (108) 에 액세스할 때 웹 사이트 (107) 에 의해 제공된 HTML 컨텐츠와 함께 웹 브라우저 (110) 로 제공된다. 웹 브라우저 (110) 는 또한 자바스크립트 엔진 (130) 을 포함한다. 자바스크립트 엔진 (130) 은 자바스크립트 코드와 같은 실행가능 코드 (112) 를 실행하도록 구성된다. 일 실시형태에서, 실행가능 코드 (112) 는 웹 브라우저 (110) 상의 자바스크립트 엔진 (130) 에 의해 실행되고, 네이티브 애플리케이션 (115) 이 네이티브 애플리케이션 (115) 에 대해 TCP (transmission control protocol) 포트를 오픈할 것을 요청함으로써 웹 브라우저 (110) 가 네이티브 애플리케이션 (115) 과 상호작용하는 것을 허용한다. 일 실시형태에서, 웹 브라우저 (110) 상의 자바스크립트 엔진 (130) 은 실행가능 코드 (112) 를 실행하고, 네이티브 애플리케이션 (115) 이 무선 디바이스 (102) 상의 콘텍스트 애플리케이션 프로그램 (117) 에 오픈된 웹 소켓 연결을 가지는 것을 허용하여 무선 디바이스 (102) 상의 콘텍스트 애플리케이션 프로그램 (117) 에 포함된 데이터에 액세스한다. 일 실시형태에서, 네이티브 애플리케이션 (115) 에 의해 액세스된 데이터는 콘텍스트 애플리케이션 프로그램 (117) 에 의해 유지된, 또는 다르게는 네이티브 애플리케이션 (115) 에 의해 유지된 상황 정보에 속한다.
대안적인 실시형태에서, 실행가능 코드 (112) 의 실행은 자바스크립트 엔진 (130) 이 콘텍스트 애플리케이션 프로그램 (117) 으로부터 추가적인 실행가능 코드 (125) 를 포함하는 페이지 (118) 를 다운로드하게 할 것이다. 그러한 구현은 무선 디바이스 (102) 의 보안과 타협할 수 있는 크로스-사이트 스크립팅 (XSS) 에 관련된 보안 침해들을 방지하는데 유용할 수도 있다. 그러한 실시형태에서, 실행가능 코드 (112) 는 웹 브라우저 (110) 가 웹 자산과 스트립트들을 교환하는 것 없이 콘텍스트 애플리케이션 프로그램 (117) 으로부터 직접 콘텍스트 정보를 획득하는 것을 허용한다. 일 실시형태에서, 실행가능 코드 (112) 는 추가적인 실행가능 코드 (125) 가 콘텍스트 애플리케이션 프로그램 (117) 으로부터 다운로드되는 것을 허용하는 명령들을 포함할 수 있다.
도 2 는 네이티브 애플리케이션에 대한 웹 자산 액세스를 가능하게 하는 방법의 실시형태를 도시하는 콜 흐름도 (200) 이다. 흐름도 (200) 는 참고로 도 1 에서의 다양한 엘리먼트들의 동작을 도시한다. 일 예로서, 콜 (202) 은 무선 디바이스 (102) 상의 웹 브라우저 (110) 가 웹 서버 (106) 로 웹 페이지 (108) 에 대한 HTTP 요청을 전송하는 것을 나타낸다.
콜 (204) 은 웹 서버 (106) 가 무선 디바이스 (102) 상의 웹 브라우저 (110) 로 실행가능 코드 (112) 를 포함하는 HTML 컨텐츠를 전송하는 것을 나타낸다. 일 실시형태에서, 그 HTML 컨텐츠와 함께 포함된 실행가능 코드 (112) 는 자바스크립트 코드이다. 실행가능 코드 (112) 는 무선 디바이스 (102) 상의 자바스크립트 엔진 (130) 에 의해 실행된다.
콜 (206) 은 웹 브라우저 (110) 로부터 무선 디바이스 (102) 상의 콘텍스트 애플리케이션 프로그램 (117) (또한 "로컬 호스트" 로서도 지칭됨) 으로 행해진 HTTP 콜을 나타낸다. 콜 (206) 은 실행가능 코드 (112) 의 실행이 웹 브라우저 (110) 로 하여금 웹 브라우저 (110) 가 콘텍스트 애플리케이션 프로그램 (117) 에 포함된 콘텍스트 데이터에 액세스하는 것을 허용하도록 네이티브 애플리케이션 (115) 이 무선 디바이스 (102) 상의 네이티브 애플리케이션 (115) 에 대한 TCP (transmission control protocol) 포트에의 웹 소켓 연결을 오픈할 것을 요청하게 하는 것을 나타낸다.
콜 (208) 은 네이티브 애플리케이션 (115) 이 무선 디바이스 (102) 상의 브라우저 (110) 에 대한 웹 소켓 연결을 오픈하는 것을 나타낸다.
콜 (210) 은 무선 디바이스 (102) 상의 웹 브라우저 (110) 가 실행가능 코드 (112) 를 실행하는 것을 나타내고, 웹 브라우저 (110) 가 콘텍스트 애플리케이션 프로그램 (117) 에 포함된 콘텍스트 데이터에 액세스하는 것을 허용하도록, 네이티브 애플리케이션 (115) 이 무선 디바이스 (102) 상의 네이티브 애플리케이션 (115) 에 대해 TCP 포트로의 웹 소켓 연결을 오픈할 것을 웹 브라우저 (110) 가 요청하는 것을 나타낸다. 콘텍스트 데이터는 웹 서버 (106) 로 전송된다.
콜 (212) 은 웹 서버 (106) 가 무선 디바이스 (102) 로부터 수신된 콘텍스트 정보에 기초하여 무선 디바이스 (102) 로 콘텍스트 컨텐츠를 서빙하는 것을 나타낸다.
도 3 은 네이티브 애플리케이션에 대한 웹 자산 액세스를 가능하게 하는 방법의 실시형태를 기술하는 플로우 챠트이다. 블록 (302) 에서, 무선 디바이스 (102) 가 웹 서버 (106) 로부터 웹 페이지 (108) 를 요청한다.
블록 (304) 에서, 웹 서버가 실행가능 코드를 포함하는 HTML 컨텐츠를 무선 디바이스 (102) 로 전송한다. 일 실시형태에서, HTML 컨텐츠는 자바스크립트 코드 (112) 를 포함한다.
블록 (306) 에서, 무선 디바이스 (102) 상의 웹 브라우저 (110) 가 실행가능 코드 (112) 를 실행하고, 웹 브라우저 (110) 가 무선 디바이스 (102) 상의 콘텍스트 애플리케이션 프로그램 (117) 에 포함되거나 콘텍스트 애플리케이션 프로그램 (117) 에 의해 액세스가능한 콘텍스트 컨텐츠 데이터에 액세스하는 것을 허용하도록 네이티브 애플리케이션 (115) 이 네이티브 애플리케이션 (115) 에 대한 TCP 포트에의 웹 소켓 연결을 오픈할 것을 요청한다.
블록 (308) 에서, 웹 브라우저가 무선 디바이스 (102) 상의 콘텍스트 애플리케이션 프로그램 (117) 으로부터 콘텍스트 정보를 추출하기 위해 네이티브 애플리케이션 (115) 과 상호작용한다. 일 실시형태에서, 네이티브 애플리케이션 (115) 은 항상 실행되고 있고 무선 디바이스 (102) 에 관련된 프로파일, 이력, 및 다른 실시간 데이터를 축적하고 있는 "리스너" 함수로서 지칭되는 것을 포함할 수 있다.
블록 (310) 에서, 무선 디바이스 (102) 상의 웹 브라우저 (110) 가 웹 서버 (106) 및 웹 사이트 (108) 로 콘텍스트 정보를 전송한다.
블록 (312) 에서, 웹 서버 (106) 가 무선 디바이스 (102) 에 관련한 콘텍스트 정보에 기초하여 무선 디바이스로 콘텍스트 컨텐츠를 서빙한다.
도 4 는 네이티브 애플리케이션에 대한 웹 자산 액세스를 가능하게 하는 방법의 대안적인 실시형태를 도시하는 콜 흐름도 (400) 이다. 흐름도 (400) 는 참고로 도 1 에서의 여러 엘리먼트들의 동작을 도시하고, 웹 자산과 스크립트들을 교환하지 않고 웹 브라우저 (110) 로 콘텍스트 정보의 전달을 허용하도록 추가적인 실행가능 코드 (125) (도 1) 가 콘텍스트 애플리케이션 프로그램 (117) 으로부터 웹 브라우저 (110) 로 제공되어, 스크립트들이 무선 디바이스와 웹 자산 사이에서 전달되는 크로스-사이트 스크립팅 (XSS) 으로 가능한 보안 침해들의 가능성을 최소화하는 실시형태를 참조한다.
일 예로서, 콜 (402) 은 무선 디바이스 (102) 상의 웹 브라우저 (110) 가 웹 서버 (106) 로 웹 페이지 (108) 에 대한 HTTP 요청을 전송하는 것을 나타낸다.
콜 (404) 은 웹 서버 (106) 가 무선 디바이스 (102) 상의 웹 브라우저 (110) 로 실행가능 코드 (112) 를 포함하는 HTML 컨텐츠를 전송하는 것을 나타낸다. 일 실시형태에서, HTML 컨텐츠와 함께 포함되는 실행가능 코드 (112) 는 자바스크립트 코드이다. 실행가능 코드 (112) 는 무선 디바이스 (102) 상의 자바스크립트 엔진 (130) 에 의해 실행된다. 일 실시형태에서, 실행가능 코드 (112) 는 추가적인 실행가능 코드 (125) 가 콘텍스트 애플리케이션 프로그램 (117) 으로부터 다운로드되는 것을 허용하는 명령들을 포함할 수 있다.
콜 (406) 은 무선 디바이스 (102) 상의 웹 브라우저 (110) 로부터 애플리케이션 프로그램 (117) (또한 "로컬 호스트" 로서도 지칭됨) 으로 행해진 콜이 추가적인 스크립트들의 형태로 추가적인 실행가능 코드를 요청하는 것을 나타낸다. 그러한 실시형태에서, 추가적인 스트립트들은 웹 브라우저 (110) 가 웹 자산과 스크립트들을 교환하지 않고 콘텍스트 애플리케이션 프로그램 (117) 으로부터 직접 콘텍스트 정보를 획득하는 것을 허용하는 실행가능 코드 (125) 의 형태일 수 있다.
콜 (408) 은 애플리케이션 프로그램 (117) 이 웹 브라우저 (110) 및 콘텍스트 애플리케이션 프로그램 (117) 이 크로스-사이트 스크립팅 (XSS) 으로 가능한 보안 침해들의 가능성을 최소화하면서 통신하는 것을 허용하는 추가적인 스크립트들의 형태로 추가적인 실행가능 코드 (125) (도 1) 로 웹 브라우저 (110) 로 응답하는 것을 나타낸다.
콜 (412) 은 무선 디바이스 (102) 상에서 웹 브라우저 (110) 로부터 애플리케이션 프로그램 (117) (또한 "로컬 호스트" 로서도 지칭됨) 으로 행해진 HTTP 콜을 나타낸다. 콜 (412) 은 실행가능 코드 (112) 의 실행이 웹 브라우저 (110) 로 하여금, 웹 브라우저 (110) 가 콘텍스트 애플리케이션 프로그램 (117) 에 포함된 콘텍스트 데이터에 액세스하는 것을 허용하도록 네이티브 애플리케이션 (115) 이 무선 디바이스 (102) 상의 네이티브 애플리케이션 (115) 에 대한 TCP (transmission control protocol) 포트에의 웹 소켓 연결을 오픈할 것을 요청하게 하는 것을 나타낸다.
콜 (414) 은 네이티브 애플리케이션 (115) 이 무선 디바이스 (102) 상의 브라우저 (110) 에게 웹 소켓 연결을 오픈하는 것을 나타낸다.
콜 (416) 은 무선 디바이스 (102) 상의 웹 브라우저 (110) 가 실행가능 코드 (112) 및 실행가능 코드 (125) 를 실행한느 것을 나타내며, 웹 브라우저 (110) 가 웹 브라우저 (110) 가 콘텍스트 애플리케이션 프로그램 (117) 에 포함된 콘텍스트 데이터에 액세스하는 것을 허용하도록 네이티브 애플리케이션 (115) 이 무선 디바이스 (102) 상의 네이티브 애플리케이션 (115) 에 대한 TCP 포트에의 웹 소켓 연결을 오픈할 것을 요청하는 것을 나타낸다. 콘텍스트 데이터는 웹 서버 (106) 에 전송된다.
콜 (418) 은 웹 서버 (106) 가 무선 디바이스 (102) 로부터 수신된 콘텍스트 정보에 기초하여 무선 디바이스 (102) 로 콘텍스트 컨텐츠를 서빙하는 것을 나타낸다.
도 5 는 네이티브 애플리케이션에 대한 웹 자산 액세스를 가능하게 하는 방법의 대안적인 실시형태를 기술하는 플로우 챠트이다. 블록 (502) 에서, 무선 디바이스 (102) 가 웹 서버 (106) 로부터 웹 페이지 (108) 를 요청한다.
블록 (504) 에서, 웹 서버가 실행가능 코드를 포함하는 HTML 컨텐츠를 무선 디바이스 (102) 로 전송한다. 일 실시형태에서, HTML 컨텐츠는 자바스크립트 코드 (112) 를 포함한다.
블록 (506) 에서, 웹 브라우저 (110) 가 실행가능 코드를 실행하고 콘텍스트 애플리케이션 프로그램 (117) 으로부터 추가적인 스크립트들의 형태로 추가적인 실행가능 코드를 요청한다.
블록 (508) 에서, 콘텍스트 애플리케이션 프로그램 (117) 이 크로스-사이트 스크립팅 (XSS) 으로 가능한 보안 문제들의 가능성을 최소화하면서 웹 브라우저 (110) 및 애플리케이션 프로그램 (117) 이 통신하는 것을 허용하는 추가적인 스크립트들의 형태로 추가적인 실행가능 코드 (125) (도 1) 를 갖는 페이지 (108) 로 웹 브라우저 (110) 에게 응답한다.
블록 (512) 에서, 무선 디바이스 (102) 상의 웹 브라우저 (110) 가 실행가능 코드 (112) 를 실행하고, 웹 브라우저 (110) 가 무선 디바이스 (102) 상의 콘텍스트 애플리케이션 프로그램 (117) 에 포함된 콘텍스트 컨텐츠 데이터에 액세스하는 것을 허용하도록 네이티브 애플리케이션 (115) 이 네이티브 애플리케이션 (115) 에 대한 TCP 포트에의 웹 소켓 연결을 오픈할 것을 요청한다.
블록 (514) 에서, 웹 브라우저 (110) 가 무선 디바이스 (102) 상의 애플리케이션 프로그램 (117) 으로부터 콘텍스트 정보를 추출하기 위해 네이티브 애플리케이션 (115) 과 상호작용한다. 일 실시형태에서, 네이티브 애플리케이션 (115) 은 항상 실행되고 있고 무선 디바이스 (102) 에 관련된 프로파일, 이력, 및 다른 실시간 데이터를 축적하고 있는 "리스너" 함수로서 지칭되는 것을 포함할 수 있다.
블록 (516) 에서, 무선 디바이스 (102) 상의 웹 브라우저 (110) 가 웹 서버 (106) 및 웹 사이트 (108) 로 콘텍스트 정보를 전송한다.
블록 (518) 에서, 웹 서버 (106) 가 무선 디바이스 (102) 에 관련한 콘텍스트 정보에 기초하여 무선 디바이스로 콘텍스트 컨텐츠를 서빙한다.
도 6 은 네이티브 애플리케이션에 대한 웹 자산 액세스를 가능하게 하는 시스템 및 방법이 구현될 수 있는 무선 디바이스 (600) 의 예를 도시하는 블록도이다. 일 실시형태에서, 무선 디바이스 (600) 는 "블루투스" 무선 통신 디바이스, 휴대용 셀룰러 전화, WiFi 가능 통신 디바이스일 수 있고, 또는 임의의 다른 통신 디바이스일 수 있다. 네이티브 애플리케이션에 대한 웹 자산 액세스를 가능하게 하는 시스템 및 방법의 실시형태들은 임의의 통신 디바이스에서 구현될 수 있다. 도 6 에 도시된 무선 디바이스 (600) 는 셀룰러 전화의 단순화된 예인 것으로 그리고 네이티브 애플리케이션에 대한 웹 자산 액세스를 가능하게 하는 시스템 및 방법이 구현될 수 있는 다수의 가능한 애플리케이션들 중 하나를 예시하는 것으로 의도된다. 본 기술에서 통상의 기술자는 휴대용 셀룰러 전화의 동작을 이해할 것이고, 따라서 구현 상세들은 생략된다. 일 실시형태에서, 무선 디바이스 (600) 는 시스템 버스 (632) 를 통해 함께 연결된 기저대역 서브시스템 (610) 및 RF 서브시스템 (620) 을 포함한다. 시스템 버스 (632) 는 상술된 엘리먼트들을 함께 커플링하고 그들의 상호 동작가능성을 가능하게 하는 물리적 및 로지컬 연결들을 포함할 수 있다. 일 실시형태에서, RF 서브시스템 (620) 은 무선 송수신기일 수 있다. 명확성을 위해 상세들은 도시되지 않지만, RF 서브시스템 (620) 은 일반적으로 송신을 위해 기저대역 정보 신호를 준비하는 변조, 샹향 변환 및 증폭 회로를 갖는 송신 모듈 (630) 을 포함하고, 데이터를 복구하기 위해 RF 신호를 수신하고 기저대역 정보 신호로 하향변환하는 증폭, 필터링 및 하향변환 회로를 갖는 수신 모듈 (640) 을 포함하며, 디플렉서 회로, 듀플렉서 회로, 또는 본 기술에서 통상의 기술자들에게 알려져 있는 바와 같은, 수신 신호로부터 송신 신호를 분리할 수 있는 임의의 다른 회로를 포함하는 프런트 엔드 모듈 (FEM) (650) 을 포함한다. 안테나 (660) 는 FEM (650) 에 연결된다.
기저대역 서브시스템 (610) 은 일반적으로 시스템 버스 (612) 를 통해 커플링된 범용 또는 특수 목적 마이크로프로세서일 수 있는 프로세서 (602), 메모리 (614), 애플리케이션 소프트웨어 (604), 아날로그 회로 엘리먼트들 (606), 및 디지털 회로 엘리먼트들 (608) 을 포함한다. 시스템 버스 (612) 는 상술된 엘리먼트들을 함께 커플링하고 그들의 상호 동작가능성을 가능하게 하는 물리적 및 로지컬 연결들을 포함할 수 있다.
입력/출력 (I/O) 엘리먼트 (616) 는 연결 (624) 를 통해 기저대역 서브시스템 (610) 에 연결되고, 메모리 엘리먼트 (618) 는 연결 (626) 을 통해 기저대역 서브시스템 (610) 에 커플링된다. I/O 엘리먼트 (616) 는 예를 들어 마이크로폰, 키패드, 스피커, 포인팅 디바이스, 사용자 인터페이스 제어 엘리먼트들, 및 사용자가 입력 커맨드들을 제공하고 무선 디바이스 (600) 로부터 출력들을 수신하는 것을 허용하는 임의의 다른 디바이스들 또는 시스템을 포함할 수 있다.
메모리 (618) 는 휘발성 또는 비휘발성 메모리의 임의의 타입일 수 있고, 일 실시형태에서는 플래시 메모리를 포함할 수 있다. 메모리 (618) 는 무선 디바이스 (600) 내에 영구적으로 설치될 수 있거나, 착탈가능 메모리 카드와 같은 착탈가능 메모리 엘리먼트일 수 있다.
프로세서 (602) 는 무선 디바이스 (600) 의 동작 및 기능성을 제어하기 위해 애플리케이션 소프트웨어 (604) 를 실행하는 임의의 프로세서일 수 있다. 메모리 (614) 는 휘발성 또는 비휘발성 메모리일 수 있고, 일 실시형태에서는 애플리케이션 소프트웨어 (604) 를 저장하는 비휘발성 메모리일 수 있다.
아날로그 회로 (606) 및 디지털 회로 (608) 는 I/O 엘리먼트 (616) 에 의해 제공된 입력 신호를 송신되어야 하는 정보 신호로 변환하는 신호 프로세싱, 신호 변환, 및 로직을 포함한다. 유사하게, 아날로그 회로 (606) 및 디지털 회로 (608) 는 수신 신호로부터 복원된 정보를 포함하는 정보 신호를 생성하는데 사용되는 신호 프로세싱 엘리먼트들을 포함한다. 디지털 회로 (608) 는 예를 들어 디지털 신호 프로세싱 (DSP), 필드 프로그래머블 게이트 어레이 (FPGA), 또는 임의의 다른 프로세싱 디바이스를 포함할 수 있다. 기저대역 서브시스템 (610) 은 아날로그 및 디지털 엘리먼트들 양자 모두를 포함하기 때문에, 그것은 혼합 신호 디바이스 (mixed signal device: MSD) 로서 지칭될 수 있다.
기저대역 서브시스템 (610) 은 또한 실행가능 코드 (112) 및 자바스크립트 엔진 (130) 의 인스턴스를 포함하는 웹 브라우저 (110) 의 인스턴스를 포함한다. 메모리 (614) 는 콘텍스트 애플리케이션 프로그램 (117) 의 인스턴스를 포함하는 네이티브 애플리케이션 (115) 의 인스턴스 및 데이터베이스 (642) 를 포함한다. 예시의 실시형태에서, 데이터베이스 (642) 는 콘텍스트 애플리케이션 프로그램 (117) 으로부터 획득된 무선 디바이스 (600) 에 관련된 콘텍스트 데이터를 저장한다. 네이티브 애플리케이션에 대한 웹 자산 액세스를 가능하게 하는 시스템 및 방법의 실시형태에서, 웹 브라우저 (110) 상의 자바스크립트 엔진 (130) 은 실행가능 코드 (112) 를 실행하고, 웹 브라우저 (110) 가 데이터베이스 (642) 에 포함된 콘텍스트 컨텐츠 데이터에 액세스하는 것을 허용하도록 네이티브 애플리케이션 (115) 이 네이티브 애플리케이션 (115) 에 대한 TCP 포트로의 웹 소켓 연결 (644) 을 오픈할 것을 요청한다. 이러한 상호작용은 화살표 (646) 를 사용하여 도 6 에 도시되고, 화살표 (652) 를 사용하여 콘텍스트 애플리케이션 프로그램 (117) 과 자바스크립트 엔진 (130) 사이의 직접 연결로서 도시된다. 포트는 네이티브 애플리케이션 (115) 및 콘텍스트 애플리케이션 프로그램 (117) 을 무선 디바이스 (600) 상의 웹 브라우저 (110) 또는 다른 엘리먼트에 노출시키는 TCP 포트 또는 다른 수단일 수 있다. 실행가능 코드 (112) 또는, 포함되는 경우, 추가적인 실행가능 코드 (125) 는 웹 자산과 스크립트들을 교환하지 않고 데이터베이스 (642) 에 저장된 그리고 콘텍스트 애플리케이션 프로그램 (117) 으로부터 획득된 콘텍스트 정보를 추출하기 위해 네이티브 애플리케이션 (115) 과 상호작용한다. 이러한 상호작용은 화살표 (648) 를 사용하여 도 6 에 도시된다. 일 실시형태에서, 네이티브 애플리케이션 (115) 은 항상 실행되고 있고 무선 디바이스 (600) 에 관련된 프로파일, 이력, 및 다른 실시간 데이터를 축적하고 있는 "리스너" 함수로서 지칭되는 것을 포함할 수 있다.
무선 디바이스 (600) 상의 웹 브라우저 (110) 는 그 후, 웹 사이트 (108) 가 콘텍스트 정보에 기초하여 무선 디바이스 (600) 로 콘텍스트 컨텐츠를 제공할 수 있도록, 웹 서버 (106) 및 웹 사이트 (108) 로 콘텍스트 정보를 전송한다.
상기의 개시에 비추어, 프로그래밍에 통상의 지식을 가진자들은 예를 들어 본 명세서 내의 플로우 챠트들 및 연관된 설명에 기초하여 어려움 없이 개시된 발명을 구현하기 위해 컴퓨터 코드를 기록하거나 적절한 하드웨어 및/또는 회로들을 식별할 수 있다. 따라서, 프로그램 코드 명령들 또는 상세화된 하드웨어 디바이스들의 특정의 세트의 개시는 본 발명을 실시하고 사용하는 방법에 대한 적당한 이해를 위해 필요한 것으로 고려되지 않는다. 청구된 컴퓨터 구현 프로세스들의 발명적 기능성은 여러 프로세스 흐름들을 도시할 수도 있는 도면들과 결합하여 그리고 상기 상세한 설명에 더욱 상세히 설명된다.
하나 이상의 예시적인 양태들에서, 기술된 기능들은 하드웨어, 소프트웨어, 펌웨어 또는 이들의 임의의 조합으로 구현될 수도 있다. 소프트웨어로 구현되는 경우, 그 기능들은 컴퓨터 판독가능 매체 상의 하나 이상의 명령들 또는 코드로서 저장 또는 송신될 수도 있다. 컴퓨터 판독가능 매체는 컴퓨터 저장 매체 및 한 곳에서 다른 곳으로 컴퓨터 프로그램의 전달을 용이하게 하는 임의의 매체를 포함하는 통신 매체 양자 모두를 포함한다. 저장 매체는 컴퓨터에 의해 액세스될 수 있는 임의의 이용가능한 매체들일 수도 있다. 제한이 아닌 예시로써, 그러한 컴퓨터 판독가능 저장 매체는 RAM, ROM, EEPROM, CD-ROM, 또는 다른 광디스크 기억장치, 자기 디스크 기억장치, 또는 다른 자기 저장 디바이스들, 플래시 메모리, 또는 명령들 또는 데이터 구조들의 형태로 원하는 프로그램 코드를 저장하는데 사용될 수 있고, 컴퓨터에 의해 액세스될 수 있는 임의의 다른 매체를 포함할 수 있다.
또한, 임의의 연결이 컴퓨터 판독가능 매체로 지칭될 수도 있다. 예를 들어, 소프트웨어가 동축 케이블, 광섬유 케이블, 트위스티드 페어, 디지털 가입자 라인 (DSL), 또는 적외선, 라디오 및 마이크로파와 같은 무선 기술들을 사용하여 웹사이트, 서버, 또는 다른 원격 소스로부터 송신되는 경우, 동축 케이블, 광섬유 케이블, 트위스티드 페어, DSL, 또는 적외선, 라디오 및 마이크로파와 같은 무선 기술들은 매체의 정의에 포함된다.
여기에서 사용되는 디스크 (disk) 및 디스크 (disc) 는 컴팩트 디스크 (CD), 레이저 디스크, 광디스크, DVD (digital versatile disc), 플로피 디스크, 및 블루레이 디스크를 포함하며, 여기서, 디스크 (disk) 는 보통 자기적으로 데이터를 재생하는 반면, 디스크 (disc) 는 레이저를 사용하여 광학적으로 데이터를 재생한다. 상기한 것의 조합들은 또한 컴퓨터 판독가능 매체의 범위 내에 포함되어야 한다.
선택된 양태들이 도시되고 상세히 기술되었지만, 여러 치환들 및 변경들이 다음의 청구범위에 의해 정의된 바와 같은, 본 발명의 사상 또는 범위로부터 일탈하지 않고 여기에서 행해질 수도 있다는 것이 이해될 것이다.

Claims (35)

  1. 네이티브 애플리케이션에 대한 웹 자산 액세스를 허용하는 방법으로서,
    무선 디바이스 상에 네이티브 애플리케이션을 제공하는 단계;
    컨텐츠에 대한 요청을 전송하는 단계;
    실행가능 코드를 포함하는 컨텐츠를 수신하는 단계;
    상기 무선 디바이스에 관련된 콘텍스트 정보에 액세스하기 위해 상기 실행가능 코드를 실행하는 단계;
    상기 콘텍스트 정보를 전송하는 단계; 및
    상기 콘텍스트 정보에 기초하여 상기 무선 디바이스에서 콘텍스트 컨텐츠를 수신하는 단계를 포함하는, 네이티브 애플리케이션에 대한 웹 자산 액세스를 허용하는 방법.
  2. 제 1 항에 있어서,
    상기 콘텍스트 정보를 전송하는 단계는 컨텐츠 제공자에게 상기 콘텍스트 정보를 전송하는 단계를 포함하는, 네이티브 애플리케이션에 대한 웹 자산 액세스를 허용하는 방법.
  3. 제 2 항에 있어서,
    상기 네이티브 애플리케이션은 상기 컨텐츠 제공자와 연관되고,
    상기 콘텍스트 컨텐츠를 수신하는 단계는 상기 컨텐츠 제공자로부터 상기 콘텍스트 컨텐츠를 수신하는 단계를 포함하는, 네이티브 애플리케이션에 대한 웹 자산 액세스를 허용하는 방법.
  4. 제 2 항에 있어서,
    상기 콘텍스트 정보에 액세스하기 위해 상기 실행가능 코드를 실행하는 단계는 상기 실행가능 코드가 실행되고 있는 상기 무선 디바이스 상의 포트를 오픈하는 단계 및 상기 네이티브 애플리케이션과 연관되는 콘텍스트 인식 모듈을 사용함으로써 상기 무선 디바이스 상에 저장된 콘텍스트 정보에 액세스하는 단계를 포함하는, 네이티브 애플리케이션에 대한 웹 자산 액세스를 허용하는 방법.
  5. 제 4 항에 있어서,
    상기 무선 디바이스 상의 포트를 오픈하는 단계는,
    상기 무선 디바이스 상에서, 콘텍스트 인식 애플리케이션으로 HTTP 요청을 포워드하는 단계; 및
    상기 무선 디바이스 상에서, 상기 네이티브 애플리케이션과 웹 브라우저 사이의 웹 소켓을 오픈하는 단계로서, 상기 웹 소켓은 상기 콘텍스트 인식 애플리케이션으로부터 상기 웹 브라우저로 상기 콘텍스트 정보의 전송을 허용하는, 상기 웹 소켓을 오픈하는 단계를 포함하는, 네이티브 애플리케이션에 대한 웹 자산 액세스를 허용하는 방법.
  6. 제 4 항에 있어서,
    상기 콘텍스트 인식 애플리케이션은 콘텍스트 정보에 대하여 상기 포트를 계속적으로 모니터하는, 네이티브 애플리케이션에 대한 웹 자산 액세스를 허용하는 방법.
  7. 제 1 항에 있어서,
    상기 네이티브 애플리케이션으로부터 추가적인 실행가능 코드를 수신하는 단계; 및
    상기 네이티브 애플리케이션으로부터 직접 상기 콘텍스트 정보에 액세스하기 위해 상기 추가적인 실행가능 코드를 실행하는 단계로서, 상기 추가적인 실행가능 코드는 상기 웹 자산과 스크립트들의 교환 없이 상기 네이티브 애플리케이션과의 상호작용을 허용하는, 상기 추가적인 실행가능 코드를 실행하는 단계를 더 포함하는, 네이티브 애플리케이션에 대한 웹 자산 액세스를 허용하는 방법.
  8. 네이티브 애플리케이션에 대한 웹 자산 액세스를 허용하는 방법으로서,
    컨텐츠에 대한 요청을 수신하는 단계;
    실행가능 코드를 포함하는 컨텐츠를 전송하는 단계;
    콘텍스트 정보를 수신하는 단계; 및
    상기 콘텍스트 정보에 기초하여 콘텍스트 컨텐츠를 전송하는 단계를 포함하는, 네이티브 애플리케이션에 대한 웹 자산 액세스를 허용하는 방법.
  9. 제 8 항에 있어서,
    상기 컨텐츠에 대한 요청은 컨텐츠 제공자에 관련된 네이티브 애플리케이션을 갖는 무선 디바이스로부터 수신되는, 네이티브 애플리케이션에 대한 웹 자산 액세스를 허용하는 방법.
  10. 제 9 항에 있어서,
    상기 실행가능 코드는 상기 무선 디바이스 상의 콘텍스트 정보에 대한 액세스를 허용하는, 네이티브 애플리케이션에 대한 웹 자산 액세스를 허용하는 방법.
  11. 제 10 항에 있어서,
    상기 콘텍스트 정보를 수신하는 단계는 상기 컨텐츠 제공자가 상기 무선 디바이스로 상기 콘텍스트 컨텐츠를 전송하는 것을 허용하는, 네이티브 애플리케이션에 대한 웹 자산 액세스를 허용하는 방법.
  12. 제 11 항에 있어서,
    상기 실행가능 코드는 상기 무선 디바이스 상의 웹 브라우저가 상기 무선 디바이스 상에 위치된 추가적인 실행가능 코드에 액세스하는 것을 허용하도록 구성된 추가적인 실행가능 코드를 더 포함하는, 네이티브 애플리케이션에 대한 웹 자산 액세스를 허용하는 방법.
  13. 무선 디바이스로서,
    네이티브 애플리케이션;
    컨텐츠에 대한 요청을 전송하고 상기 컨텐츠를 수신하도록 구성된 웹 브라우저로서, 상기 컨텐츠는 실행가능 코드를 포함하는, 상기 웹 브라우저;
    상기 무선 디바이스 상에 위치된 콘텍스트 정보에 액세스하기 위해 상기 실행가능 코드를 실행하도록 구성된 프로세서;
    상기 콘텍스트 정보를 전송하도록 구성된 상기 웹 브라우저; 및
    상기 콘텍스트 정보에 기초하여 콘텍스트 컨텐츠를 수신하도록 구성된 상기 무선 디바이스를 포함하는, 무선 디바이스.
  14. 제 13 항에 있어서,
    상기 콘텍스트 정보는 컨텐츠 제공자에게 전송되는, 무선 디바이스.
  15. 제 14 항에 있어서,
    상기 네이티브 애플리케이션은 상기 컨텐츠 제공자와 연관되고,
    상기 콘텍스트 컨텐츠를 수신하는 것은 상기 컨텐츠 제공자로부터 상기 콘텍스트 컨텐츠를 수신하는 것을 포함하는, 무선 디바이스.
  16. 제 14 항에 있어서,
    상기 네이티브 애플리케이션과 연관된 콘텍스트 인식 애플리케이션을 더 포함하고,
    상기 콘텍스트 정보에 액세스하기 위해 상기 실행가능 코드를 실행하는 것은 상기 무선 디바이스 상의 상기 네이티브 애플리케이션에 대한 포트를 오픈하는 것 및 상기 콘텍스트 인식 애플리케이션을 사용함으로써 상기 무선 디바이스 상에 저장된 콘텍스트 정보에 액세스하는 것을 포함하는, 무선 디바이스.
  17. 제 16 항에 있어서,
    상기 무선 디바이스 상의 상기 포트를 오픈하는 것은,
    상기 무선 디바이스 상에서, 콘텍스트 인식 애플리케이션으로 HTTP 요청을 포워드하는 것; 및
    상기 무선 디바이스 상에서, 상기 네이티브 애플리케이션과 웹 브라우저 사이의 웹 소켓을 오픈하는 것으로서, 상기 웹 소켓은 상기 콘텍스트 인식 애플리케이션으로부터 상기 웹 브라우저로 상기 콘텍스트 정보의 전송을 허용하는, 상기 웹 소켓을 오픈하는 것을 포함하는, 무선 디바이스.
  18. 제 16 항에 있어서,
    상기 콘텍스트 인식 애플리케이션은 콘텍스트 정보에 대하여 상기 포트를 계속적으로 모니터하는, 무선 디바이스.
  19. 제 16 항에 있어서,
    상기 네이티브 애플리케이션과 연관된 추가적인 실행가능 코드; 및
    상기 네이티브 애플리케이션으로부터 직접 상기 콘텍스트 정보에 액세스하기 위해 상기 추가적인 실행가능 코드를 실행하는 상기 프로세서로서, 상기 추가적인 실행가능 코드는 상기 웹 자산과 스크립트들의 교환 없이 상기 네이티브 애플리케이션과의 상호작용을 허용하는, 상기 프로세서를 더 포함하는, 무선 디바이스.
  20. 무선 디바이스로 하여금 동작들을 수행하게 하도록 구성된 서버 실행가능 명령들을 저장한 비일시적 서버 판독가능 매체로서,
    상기 동작들은,
    무선 디바이스 상에 네이티브 애플리케이션을 제공하는 것;
    컨텐츠에 대한 요청을 전송하는 것;
    실행가능 코드를 포함하는 컨텐츠를 수신하는 것;
    상기 무선 디바이스에 관련된 콘텍스트 정보에 액세스하기 위해 상기 실행가능 코드를 실행하는 것;
    상기 콘텍스트 정보를 전송하는 것; 및
    상기 콘텍스트 정보에 기초하여 상기 무선 디바이스에서 콘텍스트 컨텐츠를 수신하는 것을 포함하는, 비일시적 서버 판독가능 매체.
  21. 제 20 항에 있어서,
    상기 콘텍스트 정보를 전송하는 것은 컨텐츠 제공자에게 상기 콘텍스트 정보를 전송하는 것을 포함하는, 비일시적 서버 판독가능 매체.
  22. 제 21 항에 있어서,
    상기 네이티브 애플리케이션은 상기 컨텐츠 제공자와 연관되고,
    상기 콘텍스트 컨텐츠를 수신하는 것은 상기 컨텐츠 제공자로부터 상기 콘텍스트 컨텐츠를 수신하는 것을 포함하는, 비일시적 서버 판독가능 매체.
  23. 제 21 항에 있어서,
    상기 콘텍스트 정보에 액세스하기 위해 상기 실행가능 코드를 실행하는 것은 상기 실행가능 코드가 실행되고 있는 상기 무선 디바이스 상의 포트를 오픈하는 것 및 상기 네이티브 애플리케이션과 연관되는 콘텍스트 인식 모듈을 사용함으로써 상기 무선 디바이스 상에 저장된 콘텍스트 정보에 액세스하는 것을 포함하는, 비일시적 서버 판독가능 매체.
  24. 제 23 항에 있어서,
    상기 무선 디바이스 상의 포트를 오픈하는 것은,
    상기 무선 디바이스 상에서, 콘텍스트 인식 애플리케이션으로 HTTP 요청을 포워드하는 것; 및
    상기 무선 디바이스 상에서, 상기 네이티브 애플리케이션과 웹 브라우저 사이의 웹 소켓을 오픈하는 것으로서, 상기 웹 소켓은 상기 콘텍스트 인식 애플리케이션으로부터 상기 웹 브라우저로 상기 콘텍스트 정보의 전송을 허용하는, 상기 웹 소켓을 오픈하는 것을 포함하는, 비일시적 서버 판독가능 매체.
  25. 제 23 항에 있어서,
    상기 콘텍스트 인식 애플리케이션은 콘텍스트 정보에 대하여 상기 포트를 계속적으로 모니터하는, 비일시적 서버 판독가능 매체.
  26. 제 20 항에 있어서,
    상기 네이티브 애플리케이션으로부터 추가적인 실행가능 코드를 수신하는 것; 및
    상기 네이티브 애플리케이션으로부터 직접 상기 콘텍스트 정보에 액세스하기 위해 상기 추가적인 실행가능 코드를 실행하는 것으로서, 상기 추가적인 실행가능 코드는 상기 웹 자산과 스크립트들의 교환 없이 상기 네이티브 애플리케이션과의 상호작용을 허용하는, 상기 추가적인 실행가능 코드를 실행하는 것을 더 포함하는, 비일시적 서버 판독가능 매체.
  27. 웹 서버로 하여금 동작들을 수행하게 하도록 구성된 서버 실행가능 명령들을 저장한 비일시적 서버 판독가능 매체로서,
    상기 동작들은,
    컨텐츠에 대한 요청을 수신하는 것;
    실행가능 코드를 포함하는 컨텐츠를 전송하는 것;
    콘텍스트 정보를 수신하는 것; 및
    상기 콘텍스트 정보에 기초하여 콘텍스트 컨텐츠를 전송하는 것을 포함하는, 비일시적 서버 판독가능 매체.
  28. 제 27 항에 있어서,
    상기 컨텐츠에 대한 요청은 컨텐츠 제공자에 관련된 네이티브 애플리케이션을 갖는 무선 디바이스로부터 수신되는, 비일시적 서버 판독가능 매체.
  29. 제 28 항에 있어서,
    상기 실행가능 코드는 상기 무선 디바이스 상의 콘텍스트 정보에 대한 액세스를 허용하는, 비일시적 서버 판독가능 매체.
  30. 제 10 항에 있어서,
    상기 콘텍스트 정보를 수신하는 것은 상기 컨텐츠 제공자가 상기 무선 디바이스로 상기 콘텍스트 컨텐츠를 전송하는 것을 허용하는, 비일시적 서버 판독가능 매체.
  31. 제 30 항에 있어서,
    상기 실행가능 코드는 상기 무선 디바이스 상의 웹 브라우저가 상기 무선 디바이스 상에 위치된 추가적인 실행가능 코드에 액세스하는 것을 허용하도록 구성된 추가적인 실행가능 코드를 더 포함하는, 비일시적 서버 판독가능 매체.
  32. 무선 디바이스로서,
    네이티브 애플리케이션;
    컨텐츠에 대한 요청을 전송하고 상기 컨텐츠를 수신하는 웹 브라우징 수단으로서, 상기 컨텐츠는 실행가능 코드를 포함하는, 상기 웹 브라우징 수단;
    상기 무선 디바이스 상에 위치된 콘텍스트 정보에 액세스하기 위해 상기 실행가능 코드를 실행하는 프로세서 수단을 포함하고,
    상기 웹 브라우저 수단은 상기 콘텍스트 정보를 전송하고 상기 콘텍스트 정보에 기초하여 콘텍스트 컨텐츠를 수신하는, 무선 디바이스.
  33. 제 32 항에 있어서,
    상기 콘텍스트 정보는 컨텐츠 제공자에게 전송되는, 무선 디바이스.
  34. 제 33 항에 있어서,
    상기 네이티브 애플리케이션은 상기 컨텐츠 제공자와 연관되고,
    상기 콘텍스트 컨텐츠를 수신하는 것은 상기 컨텐츠 제공자로부터 상기 콘텍스트 컨텐츠를 수신하는 것을 포함하는, 무선 디바이스.
  35. 제 33 항에 있어서,
    상기 네이티브 애플리케이션과 연관된 콘텍스트 인식 애플리케이션을 더 포함하고,
    상기 콘텍스트 정보에 액세스하기 위해 상기 실행가능 코드를 실행하는 것은 상기 무선 디바이스 상의 상기 네이티브 애플리케이션에 대한 포트를 오픈하는 것 및 상기 콘텍스트 인식 애플리케이션을 사용함으로써 상기 무선 디바이스 상에 저장된 콘텍스트 정보에 액세스하는 것을 포함하는, 무선 디바이스.
KR1020157028643A 2013-03-13 2014-03-10 네이티브 애플리케이션에 대한 웹 자산 액세스를 가능하게 하는 시스템 및 방법 KR101680509B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US13/798,703 US9203891B2 (en) 2013-03-13 2013-03-13 System and method to enable web property access to a native application
US13/798,703 2013-03-13
PCT/US2014/022250 WO2014164391A1 (en) 2013-03-13 2014-03-10 System and method to enable web property access to a native application

Publications (2)

Publication Number Publication Date
KR20150132312A true KR20150132312A (ko) 2015-11-25
KR101680509B1 KR101680509B1 (ko) 2016-11-28

Family

ID=50543652

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020157028643A KR101680509B1 (ko) 2013-03-13 2014-03-10 네이티브 애플리케이션에 대한 웹 자산 액세스를 가능하게 하는 시스템 및 방법

Country Status (6)

Country Link
US (1) US9203891B2 (ko)
EP (1) EP2972822B1 (ko)
JP (1) JP6009714B2 (ko)
KR (1) KR101680509B1 (ko)
CN (1) CN105051685B (ko)
WO (1) WO2014164391A1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20190061050A (ko) * 2017-03-03 2019-06-04 구글 엘엘씨 클라이언트 디바이스들에서 실행되는 어플리케이션들에 의한 컨텐츠 아이템들의 제시의 부적절한 구현을 검출하기 위한 시스템 및 방법

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9189622B2 (en) * 2013-04-30 2015-11-17 Vmware, Inc. Static redirection for objective C
US9311407B2 (en) 2013-09-05 2016-04-12 Google Inc. Native application search results
US10949487B2 (en) * 2015-04-20 2021-03-16 Hyland Switzerland Sàrl Systems and methods for accessing computing device resources
JP6554350B2 (ja) * 2015-07-14 2019-07-31 株式会社Phone Appli サービスシステム
CN107133077A (zh) * 2016-02-29 2017-09-05 深圳秀豹科技有限公司 一种网页端调用本地应用功能的方法及装置
CN107370775B (zh) * 2016-05-11 2020-04-28 阿里巴巴集团控股有限公司 一种启动应用的方法和系统
CN107370778B (zh) * 2016-05-11 2020-06-30 阿里巴巴集团控股有限公司 一种启动应用的方法和系统
CN107015870B (zh) 2016-09-19 2020-11-03 创新先进技术有限公司 实现web页面与本地应用通信的方法、装置和电子设备
JP6451963B1 (ja) * 2017-10-09 2019-01-16 治 寺田 通信システム
US10826895B1 (en) * 2018-10-04 2020-11-03 State Farm Mutual Automobile Insurance Company System and method for secure authenticated user session handoff
US10630718B2 (en) * 2018-11-27 2020-04-21 BehavioSec Inc Detection of remote fraudulent activity in a client-server-system

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5752042A (en) 1996-06-07 1998-05-12 International Business Machines Corporation Server computer for selecting program updates for a client computer based on results of recognizer program(s) furnished to the client computer
AU2582401A (en) 1999-12-17 2001-06-25 Dorado Network Systems Corporation Purpose-based adaptive rendering
US7437312B2 (en) 2000-08-23 2008-10-14 Bizrate.Com Method for context personalized web browsing
US20030050964A1 (en) 2001-09-07 2003-03-13 Philippe Debaty Method and system for context manager proxy
US20040221021A1 (en) 2003-04-30 2004-11-04 Domer Jason A. High performance managed runtime environment application manager equipped to manage natively targeted applications
US7716651B2 (en) * 2005-01-26 2010-05-11 Microsoft Corporation System and method for a context-awareness platform
US7706739B2 (en) * 2005-03-11 2010-04-27 Openwave Systems Inc. Broadcast system and method for cellular networks
US7873710B2 (en) 2007-02-06 2011-01-18 5O9, Inc. Contextual data communication platform
US7962444B2 (en) * 2008-05-19 2011-06-14 Qualcomm Incorporated System and method for presenting a contextual action for an indicator
US20100082750A1 (en) * 2008-09-29 2010-04-01 Microsoft Corporation Dynamically transforming data to the context of an intended recipient
US8352967B2 (en) 2008-11-10 2013-01-08 Google Inc. Safe browser plugins using native code modules
US20110213655A1 (en) 2009-01-24 2011-09-01 Kontera Technologies, Inc. Hybrid contextual advertising and related content analysis and display techniques
US20100229045A1 (en) 2009-03-09 2010-09-09 Quantia Communications, Inc. Computer Method and Apparatus Providing Invocation of Device-Specific Application Through a Generic HTTP Link
US20100274823A1 (en) * 2009-04-23 2010-10-28 Sailesh Sathish Method, apparatus and computer program product for providing an adaptive context model framework
US8868637B2 (en) 2009-09-02 2014-10-21 Facebook, Inc. Page rendering for dynamic web pages
JP5682181B2 (ja) * 2010-08-25 2015-03-11 日本電気株式会社 通信制御機能を有する通信装置、方法、プログラム
FR2964766B1 (fr) 2010-09-09 2013-04-26 Mobilegov France Procede de generation de pages web personnalisees
KR20120067830A (ko) 2010-12-16 2012-06-26 한국전자통신연구원 모바일 웹 지도 서비스 시스템 및 이를 위한 서비스 단말
JP5857443B2 (ja) * 2011-05-12 2016-02-10 ソニー株式会社 コンテンツ共有システム
US9198038B2 (en) * 2011-06-13 2015-11-24 Qualcomm Incorporated Apparatus and methods of identity management in a multi-network system

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20190061050A (ko) * 2017-03-03 2019-06-04 구글 엘엘씨 클라이언트 디바이스들에서 실행되는 어플리케이션들에 의한 컨텐츠 아이템들의 제시의 부적절한 구현을 검출하기 위한 시스템 및 방법

Also Published As

Publication number Publication date
US9203891B2 (en) 2015-12-01
JP2016517571A (ja) 2016-06-16
EP2972822A1 (en) 2016-01-20
CN105051685B (zh) 2018-04-13
KR101680509B1 (ko) 2016-11-28
CN105051685A (zh) 2015-11-11
US20140280694A1 (en) 2014-09-18
EP2972822B1 (en) 2020-10-28
JP6009714B2 (ja) 2016-10-19
WO2014164391A1 (en) 2014-10-09

Similar Documents

Publication Publication Date Title
KR101680509B1 (ko) 네이티브 애플리케이션에 대한 웹 자산 액세스를 가능하게 하는 시스템 및 방법
US10776510B2 (en) System for managing personal data
CN106471466B (zh) 短暂应用
US9479929B1 (en) Selective regulation of information transmission from mobile applications to third-party privacy compliant target systems
US9235693B2 (en) System and methods thereof for tracking and preventing execution of restricted applications
US20140214921A1 (en) System and method for identification of an application executed on a mobile device
EP2570960A2 (en) Method of controlling information processing system, program for controlling apparatus
CN104683297A (zh) 一种资源访问的方法及装置、服务器及终端
US9230134B1 (en) Privacy setting metadata for application developers
US9755844B2 (en) Techniques to transform network resource requests to zero rated network requests
US9537807B2 (en) Automatically transitioning a user from a call to action to an enrollment interface
US9871873B2 (en) Adapter for communication between web applications within a browser
EP3188417B1 (en) Information display method, terminal and server
US20160378982A1 (en) Local environment protection method and protection system of terminal responding to malicious code in link information
US20150149582A1 (en) Sending mobile applications to mobile devices from personal computers
Kumar et al. Integrated Web of Things Interface for IoT Environment
KR20170050030A (ko) 부가 정보 관리 방법과 이를 수행하기 위한 장치 및 시스템
Tran User-driven data portability: A user-driven data portability approach utilizing web scraping techniques to liberate data
KR101484702B1 (ko) 사용자 다이알로그에 따른 서비스 제공 방법 및 다이알로그 에이전트 시스템
EP3023891A1 (en) Techniques to transform network resource requests to zero rated network requests
JP2017162481A (ja) 端末、アクセス制限方法およびプログラム
JP2014178727A (ja) 端末、アクセス制限方法およびプログラム

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20190924

Year of fee payment: 4