KR101875050B1 - 위치 추적에 일반적으로 관련되는 방법, 하나 이상의 컴퓨터-판독가능한 비-일시적 저장 매체 및 장치 - Google Patents
위치 추적에 일반적으로 관련되는 방법, 하나 이상의 컴퓨터-판독가능한 비-일시적 저장 매체 및 장치 Download PDFInfo
- Publication number
- KR101875050B1 KR101875050B1 KR1020167023013A KR20167023013A KR101875050B1 KR 101875050 B1 KR101875050 B1 KR 101875050B1 KR 1020167023013 A KR1020167023013 A KR 1020167023013A KR 20167023013 A KR20167023013 A KR 20167023013A KR 101875050 B1 KR101875050 B1 KR 101875050B1
- Authority
- KR
- South Korea
- Prior art keywords
- user
- computing device
- mobile computing
- location
- predetermined
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01S—RADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
- G01S19/00—Satellite radio beacon positioning systems; Determining position, velocity or attitude using signals transmitted by such systems
- G01S19/01—Satellite radio beacon positioning systems transmitting time-stamped messages, e.g. GPS [Global Positioning System], GLONASS [Global Orbiting Navigation Satellite System] or GALILEO
- G01S19/13—Receivers
- G01S19/34—Power consumption
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01S—RADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
- G01S19/00—Satellite radio beacon positioning systems; Determining position, velocity or attitude using signals transmitted by such systems
- G01S19/38—Determining a navigation solution using signals transmitted by a satellite radio beacon positioning system
- G01S19/39—Determining a navigation solution using signals transmitted by a satellite radio beacon positioning system the satellite radio beacon positioning system transmitting time-stamped messages, e.g. GPS [Global Positioning System], GLONASS [Global Orbiting Navigation Satellite System] or GALILEO
- G01S19/42—Determining position
- G01S19/48—Determining position by combining or switching between position solutions derived from the satellite radio beacon positioning system and position solutions derived from a further system
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01S—RADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
- G01S5/00—Position-fixing by co-ordinating two or more direction or position line determinations; Position-fixing by co-ordinating two or more distance determinations
- G01S5/0009—Transmission of position information to remote stations
- G01S5/0018—Transmission from mobile station to base station
- G01S5/0027—Transmission from mobile station to base station of actual mobile position, i.e. position determined on mobile
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01S—RADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
- G01S5/00—Position-fixing by co-ordinating two or more direction or position line determinations; Position-fixing by co-ordinating two or more distance determinations
- G01S5/01—Determining conditions which influence positioning, e.g. radio environment, state of motion or energy consumption
- G01S5/011—Identifying the radio environment
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01S—RADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
- G01S5/00—Position-fixing by co-ordinating two or more direction or position line determinations; Position-fixing by co-ordinating two or more distance determinations
- G01S5/01—Determining conditions which influence positioning, e.g. radio environment, state of motion or energy consumption
- G01S5/017—Detecting state or type of motion
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01S—RADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
- G01S5/00—Position-fixing by co-ordinating two or more direction or position line determinations; Position-fixing by co-ordinating two or more distance determinations
- G01S5/02—Position-fixing by co-ordinating two or more direction or position line determinations; Position-fixing by co-ordinating two or more distance determinations using radio waves
- G01S5/0295—Proximity-based methods, e.g. position inferred from reception of particular signals
Landscapes
- Engineering & Computer Science (AREA)
- Radar, Positioning & Navigation (AREA)
- Remote Sensing (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Networks & Wireless Communication (AREA)
- Telephone Function (AREA)
- Telephonic Communication Services (AREA)
- Position Fixing By Use Of Radio Waves (AREA)
- Mobile Radio Communication Systems (AREA)
- User Interface Of Digital Computer (AREA)
Abstract
일실시예에서, 방법은 모바일 컴퓨팅 장치 상의 애플리케이션을 슬립 모드에서 각성시키고 애플리케이션이 모바일 컴퓨팅 장치의 위치 서비스를 기결정된 샘플링 기간 동안 활성화시키는 활성 신호를 기결정된 폴링 주파수로 전송하는 단계를 포함한다. 기결정된 폴링 주파수 및 기결정된 샘플링 기간은 모바일 컴퓨팅 장치의 이동을 감지함으로써 적어도 부분적으로 결정된다. 방법은 또한 기결정된 샘플링 기간 이후 모바일 컴퓨팅 장치로부터 위치 데이터를 수신하는 단계를 포함한다. 위치 데이터는 전송 신호에 응답한다.
Description
본 명세서는 일반적으로 위치 추적에 관한 것이다.
가령 스마트폰, 태블릿 장치, 랩톱 컴퓨터 등과 같은 모바일 전자장치는 일반적인 컴퓨팅 능력을 가진다. 모바일 전자장치는 예컨대 단문-메시지 서비스(SMS)를 통한 통신, 멀티미디어-메시징 서비스(MMS)를 통한 통신, 이메일 액세스, 인터넷 컨텐츠 액세스, 단거리 무선 통신(예컨대, 적외선 또는 BLUETOOTH)을 통한 통신, 비즈니스 애플리케이션, 게임 또는 모바일 전자장치로 통합된 카메라를 사용하는 사진촬영과 같은 하나 이상의 애플리케이션을 실행할 수 있다. 스마트폰은 지리적 영역 내에서 이동하면서 무선-주파수(RF) 통신 링크를 통해 제공되는 전신 능력을 가지는 모바일 전자장치의 특정 종류이다. 스마트폰은 디스플레이 스크린과 통합되는 터치 센서를 가질 수 있는데, 여기서 터치 센서는 터치 입력을 감지하고 디스플레이 스크린은 컨텐츠를 디스플레이한다. 스마트폰은 공중전화 네트워크 및 인터넷 컨텐츠에 액세스하기 위해 셀룰러 네트워크와 연결한다.
특정 실시예에서, 서버는 자동으로, 사용자의 어떠한 수동 입력 없이 모바일 컴퓨팅 장치의 위치를 추척할 수 있다. 서버는 모바일 컴퓨팅 장치에 기결정된 간격으로 핑을 보내 백그라운드 모드로 실행중인 모바일 컴퓨팅 디바이스의 애플리케이션을 통해 위치 정보를 획득할 수 있다. 서버는 모바일 장치가 이동중 혹은 정지했는지에 따라 GPS 데이터 수집 간격 및 길이를 적응적으로 조정할 수 있다. 모바일 컴퓨팅 장치가 이동중 혹은 정지했는지의 결정은 모바일 컴퓨팅 장치의 현재 위치와 모바일 컴퓨팅 장치의 센서로부터 이전에 읽거나 입력된 위치의 비교에 기반한다. 예를 들어, 만약 가독도 데이터에 기반하여 서버가 사용자가 이동중이라고 결정하면, 데이터 수집 간격 및 길이는 감소하여 덜 정확하지만 더 정확한 GPS 측정을 수집할 수 있다.
일실시예에서, 방법은 모바일 컴퓨팅 장치 상의 애플리케이션을 슬립 모드에서 각성시키고 애플리케이션이 모바일 컴퓨팅 장치의 위치 서비스를 기결정된 샘플링 기간 동안 활성화시키는 활성 신호를 기결정된 폴링 주파수로 전송하는 단계를 포함한다. 기결정된 폴링 주파수 및 기결정된 샘플링 기간은 모바일 컴퓨팅 장치의 이동을 감지함으로써 적어도 부분적으로 결정된다. 방법은 또한 기결정된 샘플링 기간 이후 모바일 컴퓨팅 장치로부터 위치 데이터를 수신하는 단계를 포함한다. 위치 데이터는 전송 신호에 응답한다.
본 발명의 내용 중에 포함되어 있다.
도 1은 소셜 네트워킹 시스템의 예시를 도시하고 있다.
도 2a는 주변-위치 추적을 위한 방법의 예시를 도시하고 있다.
도 2b는 이동-기반 간격 업데이트를 위한 방법의 예시를 도시하고 있다.
도 3은 모바일 장치의 예시를 도시하고 있다.
도 4는 모바일 장치의 예시의 내부 구성요소의 예시를 도시하고 있다.
도 5는 모바일 장치의 예시의 통신 구성요소의 예시를 도시하고 있다.
도 2a는 주변-위치 추적을 위한 방법의 예시를 도시하고 있다.
도 2b는 이동-기반 간격 업데이트를 위한 방법의 예시를 도시하고 있다.
도 3은 모바일 장치의 예시를 도시하고 있다.
도 4는 모바일 장치의 예시의 내부 구성요소의 예시를 도시하고 있다.
도 5는 모바일 장치의 예시의 통신 구성요소의 예시를 도시하고 있다.
도 1은 소셜 네트워킹 시스템의 예시를 도시하고 있다. 도 1의 예시에서, 소셜 네트워킹 시스템(30)과 외부 서버(32)는 네트워크(34)를 통해 연결되어 있다. 네트워크(34)는 일반적으로 소셜 네트워킹 시스템(30) 또는 외부 서버(32)가 모바일 장치(10)과 통신할 수 있는, 네트워크 또는 네트워크의 집합(예컨대 인터넷, 기업 인트라넷, 가상 사설 네트워크(VPN), 근거리 네트워크(LAN), 무선 LAN(WLAN), 셀룰러 네트워크, 광역 네트워크(WAN), 대도시 네트워크(MAN) 또는 2 이상의 이와 같은 네트워크의 조합)을 나타낸다.
사용자는 모바일 장치(10)를 사용하여 소셜 네트워킹 시스템(30)과 상호작용할 수 있다. 모바일 장치(10)는 모바일 장치(10)의 프로세서에서 실행되는 웹 브라우저 또는 네이티브 애플리케이션과 같은 애플리케이션을 통해 소셜 네트워킹 시스템(30)과 통신할 수 있다. 특정 실시예에서, 하나 이상의 모바일 장치(10)는 상술한 바와 같이 스마트폰일 수 있다. 예로서 제한 없이, 모바일 장치(10)와 소셜 네트워킹 시스템(30) 사이의 상호작용은 소셜 네트워킹 시스템(30)의 다른 사용자들의 프로필을 열람하기, 미디어 아이템에 기여하고 상호작용하기, 그룹에 가입하기, 이벤트로의 참여를 리스팅하고 확인하기, 위치로 체크인하기, 특정 페이지를 좋아요 하기, 페이지 생성하기 및 소셜 상호작용을 용이하게 하는 다른 업무를 수행하기를 포함할 수 있다.
소셜 네트워킹 시스템(30)은 소셜 네트워킹 환경에 표현된 사용자와 객체 및 사용자와 객체 사이의 관계에 대한 정보를 저장하는데 사용되는 컴포넌트를 포함한다. 소셜 네트워킹 시스템(30)은 하기에 기술되는 바와 같이 모바일 장치(10)와의 상호작용을 가능하게 하는 컴포넌트를 포함할 수 있다. 소셜 네트워킹 시스템(30)의 컴포넌트는 하나 이상의 서버에 호스팅될 수 있다. 본 명세서는 가령 소셜 네트워킹 시스템(30) 내부에 있는 서버나 외부 서버(32)와 같은 임의의 적절한 서버를 고려한다. 예로서 제한 없이, 하나 이상의 서버는 하나 이상의 광고 서버, 애플리케이션 서버, 카탈로그 서버, 통신 서버, 데이터베이스 서버, 교환 서버, 팩스 서버, 파일 서버, 게임 서버, 홈 서버, 메일 서버, 메시지 서버, 뉴스 서버, 네임 또는 DNS(domain-name) 서버, 프린트 서버, 프록시 서버, 사운드 서버, 단독실행형(standalone) 서버, 웹 서버 또는 웹-피드 서버를 각각 포함할 수 있다. 특정 실시예로, 서버는 서버의 기능을 제공하기 위한 하드웨어, 소프트웨어 또는 모두를 포함한다. 예로서 제한 없이, 웹 서버로서 동작하는 서버는 웹페이지나 웹페이지의 구성요소를 포함하는 웹사이트를 호스팅할 수 있고, 그렇게 하기 위한 적절한 하드웨어, 소프트웨어 또는 모두를 포함할 수 있다. 특정 실시예로, 웹 서버는 HTML(Hyper Text Markup Language) 또는 다른 적절한 파일을 호스팅할 수 있거나 요청한 대로 웹페이지에 대한 파일을 동적으로 생성하거나 구성할 수 있다. 모바일 장치(10)로부터의 HTTP(Hyper Text Transfer Protocol) 또는 다른 요청에 응답하여, 웹 서버는 하나 이상의 이런 파일을 모바일 장치(10)로 통신할 수 있다. 또 다른 예로, 데이터베이스 서버로서 동작하는 서버는 하나 이상의 데이터 스토어(가령, 예컨대, 하기에 기술되는 행위 스토어(38))와 상호작용하기 위한 인터페이스를 제공할 수 있다. 적절한 경우, 서버는 하나 이상의 서버를 포함할 수 있거나; 일체형 또는 분산형일 수 있거나; 다수의 위치에 걸쳐 있거나, 다수의 기계에 걸쳐 있거나; 다수의 데이터센터에 걸쳐 있거나; 하나 이상의 네트워크에 하나 이상의 클라우드 구성요소를 포함할 수 있는 클라우드에 상주할 수 있다.
소셜 네트워킹 시스템(30)의 소셜 그래프(36)는 각 사용자가 소셜 네트워킹 시스템(30)의 다른 사용자들과 맺은 연결들을 저장한다. 특정 실시예로, 소셜 그래프(36)는 또한 2차 연결을 저장할 수 있다. 연결은 직접적이거나 간접적일 수 있다. 예로서 제한 없이, 사용자 A가 사용자 B의 1차 연결이나 사용자 C의 1차 연결이 아니고 B가 C의 1차 연결이라면, 소셜 그래프(36)에서 C는 A의 2차 연결이다. 행위 스토어(38)는 행위와 관련된 시간의 표시 및 행위에 관한 임의의 객체에 대한 레퍼런스에 따라 소셜 네트워킹 시스템(30)의 사용자들에 의해 수행되었던 행위들을 저장한다. 행위 스토어(38)는 행위의 특화된 카테고리에 대한 통계를 저장할 수 있다. 예로서 제한 없이, 소정의 사용자에 대해 행위 스토어(38)는 사용자에 의한 30일 내 게시된 소식의 수, 30일 내 사용자에 의해 게시된 사진의 수 및 지난 30일 내 사용자의 코멘트를 수신한 특정 사용자의 수를 포함할 수 있다. 사용자 A와 사용자 B인 2명의 사용자 사이의 소정의 연결에 대해, 행위 스토어(38)는 A에서 B로의 프로필 페이지 열람의 수, A에서 B로의 사진 페이지 열람의 수 및 A와 B가 동일한 사진에 태깅되었던 횟수와 같은 행위들을 포함할 수 있으며, 이런 행위들은 타임스탬프와 관련될 수 있거나 컷오프(예컨대, 24시간, 90일 등)에 의해 필터링될 수 있다. 행위 스토어(38)에 기록된 행위들은 사용자에게 행위들의 제안된 선택을 제공하는 소셜 네트워킹 시스템(30)에 응답하여 사용자에 의해 수행되는 파밍된 행위들(farmed actions)일 수 있다.
예측 모듈(40)은 사용자가 해당 행위들의 세트를 수행할 것인지 여부를 예측하는 한 세트의 예측 함수를 계산하는 역할을 한다. 각 예측 함수는 예측 함수와 관련되는 특정 행위에 대한 사용자의 관심을 나타낼 수 있다. 사용자의 활동 이력은 동일한 활동에 대한 사용자의 장래 관심의 신호로서 사용될 수 있다. 특정 실시예로, 예측 함수는 행위와 관련된 사용자의 활동 이력을 사용하여 훈련된 기계 학습 알고리즘을 사용해 생성된다. 따라서, 예측 모듈(40)은 각각의 행위 세트에 대한 예측 함수를 제공하는데, 여기서 예측 함수는 사용자의 활동 이력을 입력으로 간주할 수 있고, 이후 예측 모듈은 사용자가 해당 활동에 관여할 가능성의 정도를 출력한다.
인증 관리자는 소셜 네트워킹 시스템(122)의 등록 사용자인 것으로 클라이언트 장치(130)상의 사용자를 인증한다. 인증 관리자는 사용자가 소셜 네트워킹 시스템(122)을 지원하는 애플리케이션을 가지는 임의의 클라이언트 장치(130)로부터 소셜 네트워킹 시스템으로 로그인하게 해줄 수 있다. API는 인증 관리자와 함께 외부 애플리케이션을 통해 사용자를 입증하도록 작동한다. 친밀성 모듈은 다른 행위들에 대한 예측 함수의 조합으로부터 도출되는 특정 행위에 대한 친밀도 또는 관련도를 제공한다. 다양한 프로세스는 친밀성 모듈로부터 친밀도를 요청할 수 있다. 예로서 제한 없이, 프로세스는 가령 뉴스피드 알고리즘, 광고-타겟팅 알고리즘 또는 친구-제안 알고리즘과 같은 소셜 네트워킹 시스템(122) 기능을 포함할 수 있다. 친밀도를 요청하는 다른 프로세서들은 소셜 네트워킹 시스템(122) 내에서 동작하는 애플리케이션들인 하나 이상의 플랫폼 애플리케이션에 의해 실행될 수 있으나, 소셜 네트워킹 시스템(122)의 운영자 이외의 제3자에 의해 제공될 수 있으며, 플랫폼 애플리케이션은 소셜 게임, 메시징 서비스 또는 소셜 네트워킹 시스템(122)에 의해 제공되는 소셜 플랫폼을 사용하는 임의의 적절한 애플리케이션을 포함할 수 있다. 친밀도의 결정 및 사용은 다음의 미국특허출원들: 2006년 8월 11일자로 출원된 발명의 명칭이 "Generating a Feed of Stories Personalized for Members of a Social Network"이며 미국특허 제7,827,208호로서 발행된 미국특허출원 제11/502,757호; 2009년 12월 23일자로 출원된 발명의 명칭이 "Selection and Presentation of Related Social Networking System Content and Advertisements"인 미국특허출원 제12/645,481호; 2011년 9월 28일자로 출원된 발명의 명칭이 "Instantaneous Recommendation of Social Interactions in a Social Networking System"인 미국특허출원 제13/247,825호; 2010년 12월 22일자로 출원된 발명의 명칭이 "Pricing Relevant Notifications Provided to a User Based on Location and Social Information"인 미국특허출원 제12/976,755호; 및 2010년 12월 23일자로 출원된 발명의 명칭이 "Contextually Relevant Affinity Prediction in a Social Networking System"인 미국특허출원 제12/978,265호에 더 상세히 논의되며, 이들 모두는 본 명세서에 참조로 통합된다.
인증 관리자(42)는 모바일 장치(10)의 사용자를 소셜 네트워킹 시스템(30)의 사용자로 인증한다. 인증 관리자(42)는 소셜 네트워킹 시스템(30)을 지원하는 애플리케이션을 통해 사용자가 모바일 장치(10)로부터 소셜 네트워킹 시스템(30)으로 로그인할 수 있게 해준다. 응용 프로그래밍 인터페이스(API)(44)는 외부 서버(32)에 저장된 외부 애플리케이션(46A-B)을 통해 사용자를 인가하도록 인증 관리자(42)와 함께 작동된다. 특정 실시예로, 후술되는 바와 같이 API(44)와 함께 인증 관리자(42)는 사용자의 계정 정보를 주기적으로 입증할 수 있다.
특정 실시예로, 소셜 네트워킹 시스템(30)은 소셜 네트워킹 시스템(30)에 의해 로그되거나, 예컨대 적절한 개인정보 설정을 설정하여 다른 시스템(예컨대, 제3자 시스템(32))과 공유되는 행위를 하는 사용자가 참여할 수 있거나 참여하지 못하게 해주는 인증 서버(또는 다른 적절한 컴포넌트(들))를 포함할 수 있다. 사용자의 개인정보 설정은 사용자와 연관된 어떤 정보가 로그될 수 있는지, 사용자와 연관된 정보가 어떻게 로그될 수 있는지, 사용자와 연관된 정보가 언제 로그될 수 있는지, 사용자와 연관된 정보를 누가 로그할 수 있는지, 사용자와 연관된 정보가 누구와 공유될 수 있는지 및 사용자와 연관된 정보가 어떤 목적으로 로그되거나 공유될 수 있는지를 결정할 수 있다. 인증 서버는 블로킹, 데이터 해싱, 익명화 또는 다른 적절한 기술을 통해 소셜 네트워킹 시스템(30)의 사용자의 하나 이상의 개인정보 설정을 강제할 수 있다.
친밀성 모듈(48)은 예측 함수를 사용하여 소셜 네트워킹 시스템(30)으로부터 사용자에 대한 입력 데이터를 기초로 친밀도를 제공한다. 다양한 프로세스는 친밀성 모듈(48)로부터 친밀도의 측정을 요청할 수 있다. 예로서 제한 없이, 프로세스는 예컨대 뉴스피드 알고리즘, 광고-타겟팅 알고리즘 또는 친구-제안 알고리즘과 같은 기본적인 소셜 네트워킹 시스템(30) 기능을 포함할 수 있다. 친밀도의 측정을 요청하는 다른 프로세스는 소셜 네트워킹 시스템(30) 내에서 동작하는 애플리케이션인 하나 이상의 플랫폼 애플리케이션(50A-B)에 의해 실행될 수 있으나, 소셜 네트워킹 시스템(30)의 운영자 이외의 제3자에 의해 제공될 수 있다. 플랫폼 애플리케이션(50A-B)은 소셜 게임, 메시징 서비스 또는 소셜 네트워킹 시스템(30)에 의해 제공된 소셜 플랫폼을 사용하는 임의의 적절한 애플리케이션을 포함할 수 있다.
특정 실시예로, 사용자에 대한 친밀도의 측정을 요청하는 프로세스는 외부 서버(32)에서 실행되는 하나 이상의 외부 애플리케이션(46A-B)을 포함할 수 있다. 외부 애플리케이션(46A-B)은 API(44)를 통해 소셜 네트워킹 시스템(30)과 상호작용할 수 있다. 외부 애플리케이션(46A-B)은 가령 사용자가 소셜 네트워킹 시스템(30)을 통해 메시지나 SMS 메시지를 서로 송신할 수 있게 하거나 소셜 네트워킹 시스템(30)을 통해 라우팅된 광고를 보여주는 것과 같이 API(44)에 의해 지원된 다양한 동작들을 수행할 수 있다. 본 명세서에서는, SMS 메시지에 대한 언급은 예컨대 이미지 또는 웹 컨텐츠로의 링크와 같은 텍스트 및 다른 형태의 컨텐츠의 메시지를 포함한다.
소셜 네트워킹 시스템(30)에서 실행되는 하나 이상 플랫폼 애플리케이션(50A-B) 또는 외부 서버(32)에서 실행되는 외부 애플리케이션(46A-B)은 자동으로 사용자로부터의 임의의 수동적인 입력 없이 모바일 장치(10)의 위치를 추적할 수 있다. 특정 실시예로, 소셜 네트워킹 시스템(30) 또는 외부 서버(32)는 위치 정보를 획득하도록 폴링 주파수(polling frequency)로 전송되는 활성 신호를 사용하여 모바일 장치(10)를 폴링하거나 "핑(pings)"한다. 특정 실시예로, 소셜 네트워킹 시스템(30)은 예컨대 WI-FI 또는 3세대 모바일 통신(3G)과 같은 무선 통신 프로토콜을 사용하여 네트워크(34)를 통해 활성 신호를 전송함으로써 위치 데이터에 대한 모바일 장치(10)의 애플리케이션을 폴링할 수 있다. 예로서 제한 없이, 소셜 네트워킹 시스템(30)은 배경 모드 또는 "휴면" 모드에서 실행하는 모바일 장치(10)의 애플리케이션을 주기적으로 폴링할 수 있다. 특정 실시예로, 애플리케이션은 소셜 네트워킹 시스템(30)이나 외부 서버(32)로부터의 활성 신호에 응답하는 이벤트-구동형 애플리케이션이다. 소셜 네트워킹 시스템(30)이나 외부 서버(32)는 모바일 장치(10)의 이동 거리에 따라 애플리케이션에 의해 수행되는 위치 결정의 폴링 주파수 및 기결정된 샘플링 기간을 적응적으로 조정할 수 있다. 예로서 제한 없이, 기결정된 샘플링 기간 및 폴링 주파수는 모바일 장치(10)가 이동중인지 고정형인지 여부에 적어도 일부를 기초로 하여 적응적으로 조정될 수 있다. 모바일 장치(10)가 이동중이고 이동 거리가 상대적으로 큰 경우, 소셜 네트워킹 시스템(30)은 더 빈번히 그러나 낮은 정확성으로 모바일 장치(10)의 애플리케이션으로부터 위치 데이터를 요청할 수 있다. 특정 실시예로, 모바일 장치(10)의 위치 서비스는 기결정된 샘플링 기간 동안 모바일 장치(10)의 애플리케이션을 활성 상태로 유지하는 하나 이상의 위치-서비스 활성 신호의 전송을 통해 기결정된 샘플링 기간 동안 활성화된다. 예로서 제한 없이, 모바일 장치(10)의 애플리케이션은 4분 마다 애플리케이션을 각성시키는 활성 신호 및 이동시 10초 동안 위치 서비스를 작동시키는 하나 이상의 위치-서비스 활성 신호를 수신할 수 있다. 모바일 장치(10)가 이동할 때, 빈번한 위치 측정은 움직임이 위치의 큰 변화를 계산하지 않고 모니터링되도록 할 수 있다. 모바일 장치(10)의 위치가 유동적이기 때문에, 모바일 장치(10)의 고도의 정확한 위치 결정은 상대적으로 덜 중요하다. 본 명세서가 애플리케이션을 각성시키고 애플리케이션이 모바일 장치의 위치 서비스를 활성화시키는 특정한 수의 신호를 기술하지만, 본 명세서는 애플리케이션을 각성시키고 애플리케이션이 위치 서비스를 활성화시키는 임의의 적절한 수의 신호를 고려한다.
또 다른 예로서, 모바일 장치(10)가 고정적이고 이동 거리가 상대적으로 작은 경우, 소셜 네트워킹 시스템(30)은 덜 빈번히 그러나 더 큰 정확성으로 모바일 장치(10)로부터 위치 데이터를 요청할 수 있다. 예로서 제한 없이, 모바일 장치(10)의 애플리케이션은 10분 마다 활성 신호를 수신하고 정적일 때 20초 동안 모바일 장치(10)의 위치 서비스를 활성화시키는 하나 이상의 위치-서비스 활성 신호를 수신할 수 있다. 모바일 장치(10)의 위치는 상대적으로 고정되어 있기 때문에, 빈번한 위치 측정이 추가적인 위치 정보를 제공하지 못할 수 있다. 모바일 장치(10)가 고정적인 경우, 높은 정확도로 모바일 장치(10)의 위치를 결정하는 것이 상대적으로 중요하다. 예로서 제한 없이, 가령 위치-기반 추천 또는 위치-기반 알림과 같은 특정한 소셜 네트워킹 기능들은 상대적으로 정확한 위치 측정에 의존할 수 있다.
소셜 네트워킹 시스템(30)은 모바일 장치(10)의 이동이 일어났는지 여부의 결정에 적어도 부분적으로 기반하여 기결정된 샘플링 기간 및 폴링 주파수를 적응적으로 조정할 수 있다. 본 명세서에서, 이동에 대한 참조는 공간 내의 한 위치에서 공간 내의 다른 위치로의 임의의 적절한 이동을 포함한다. 상술한 바와 같이, 모바일 장치(10)의 이동은 모바일 장치의 이동 거리, 모바일 장치(10)의 하나 이상의 센서에 의해 회득한 환경 데이터 또는 그들의 임의의 적절한 조합에 적어도 부분적으로 기반하여 결정될 수 있다. 특정 실시예에서, 소셜 네트워킹 시스템은 모바일 장치(10)이 처리한 환경 데이터에 적어도 부분적으로 기반한 모바일 장치(10)로부터의 신호에 기반하여 모바일 장치(10)의 이동을 결정할 수 있다. 예로서 제한 없이, 소셜 네트워킹 시스템(30)은 모바일 장치(10)의 센서로부터 수신한 모바일 장치(10)가 정지중임을 표시하는 데이터에 응답하여 모바일 장치(10)에 보다 낮은 폴링 주파수와 보다 큰 기결정된 샘플링 기간으로 활성 신호를 전송할 수 있다. 다른 예시로서, 소셜 네트워킹 시스템(30)은 모바일 장치(10)의 센서로부터 수신한 모바일 장치(10)가 이동중임을 표시하는 데이터에 응답하여 모바일 장치(10)에 보다 높은 폴링 주파수와 보다 낮은 기결정된 샘플링 기간으로 활성 신호를 전송할 수 있다. 본 명세서가 모바일 장치로부터 수신한 특정 데이터를 사용하여 모바일 장치의 움직임을 감지하는 것을 기술하지만, 본 명세서는 모바일 장치로부터 수신한 임의의 적절한 데이터 또는 데이터의 임의의 적절한 조합, 예컨대 위치 데이터 및 센서 데이터를 사용하여 모바일 장치의 움직임을 감지하는 것를 고려한다.
애플리케이션은 위치 서비스 활성 신호의 수신에 응답하여 모바일 장치(10)의 위치 서비스를 작동시킨다. 특정 실시예로, 모바일 장치(10)의 위치 서비스는 예컨대 하나 이상의 셀룰러 타워의 위치, WI-FI 핫스팟과 관련된 크라우드-소싱된(crowd-sourced) 위치 정보 또는 모바일 장치(10)의 GPS(global-positioning system) 기능을 사용하는 하나 이상의 위치 결정 방법을 사용할 수 있다. 특정 실시예로, 모바일 장치(10)의 애플리케이션은 예컨대 인접 셀룰러 타워로부터의 신호 강도와 같이 위치 데이터 및 다른 관련 데이터를 전송할 수 있다. 특정 실시예로, 모바일 장치(10)의 운영 시스템(OS)은 모바일 장치(10)의 위치 서비스에 의해 사용되는 다양한 방법으로 데이터의 수집을 중재할 수 있다. 예로서 제한 없이, 모바일 장치(10)의 위치 서비스에 의해 사용되는 방법은 위치 측정의 기결정된 샘플링 기간에 적어도 부분적으로 의존할 수 있다. 예로서 제한 없이, 애플리케이션은 적어도 부분적으로 모바일 장치(10)가 기결정된 샘플링 기간 내에 GPS 데이터를 획득할 수 있는지 여부에 따라 위치 정보의 1차 소스로서 GPS 데이터를 사용할 수 있다. 또 다른 예로서, 모바일 장치(10)가 기결정된 샘플링 기간 내에 GPS 데이터를 획득할 수 없다면, 애플리케이션은 하나 이상의 셀룰러 타워 또는 WI-FI 핫스팟을 사용하여 결정되는 위치를 사용할 수 있다. 본 명세서가 특정한 위치 결정 방법을 사용하는 위치 서비스를 기술하지만, 본 명세서는 임의의 적절한 위치 감지 방법이나 그 조합을 사용하는 위치 서비스를 고려한다.
애플리케이션에 의해 측정된 위치 데이터의 정확성은 모바일 장치(10)의 위치 서비스가 활성화되는 기결정된 샘플링 기간에 의해 적어도 부분적으로 결정된다. 모바일 장치(10)의 이동 거리의 계산은 모바일 장치(10)의 현재 위치를 이전 판독으로부터의 위치와 비교하는 것을 기초로 한다. 모바일 장치(10)의 이동 거리는 다음의 수식으로 근사화될 수 있다:
positiont는 가장 최근의 위치 판독에서의 모바일 장치(10)의 위치, positiont-1은 2번째로 가장 최근의 위치 판독에서의 모바일 장치(10)의 위치이다. 예로서 제한 없이, 모바일 장치(10)의 이동 거리가 기결정된 거리와 실질적으로 동일하거나 그 미만인 경우, 소셜 네트워킹 시스템(30) 또는 외부 서버(32)는 모바일 장치(10)가 고정되어 있다고 결정할 수 있다. 특정 실시예로, 기결정된 거리는 모바일 장치(10)의 GPS 기능의 측정 정확도일 수 있다. 본 명세서가 이동 거리를 기초로 특정한 수의 이산 설정(discrete settings)으로 폴링 주파수와 샘플링 기간을 조정하는 것을 기술하지만, 본 명세서는 이동 거리를 기초로 임의의 적절한 수의 이산 설정이나 연속 설정(continuum of settings)으로 폴링 주파수와 샘플링 기간을 조정하는 것을 고려한다.
특정 실시예로, 모바일 장치(10)에서 실행되는 애플리케이션은 휴면 모드로부터 애플리케이션을 각성시키고 기결정된 샘플링 기간(예컨대, 10초) 동안 모바일 장치(10)의 위치 서비스를 작동시키는 활성 신호를 네트워크(34)를 통해 수신한다. 상술한 바와 같이, 소셜 네트워킹 시스템(30) 또는 외부 서버(32)는 모바일 장치(10)의 이동 거리에 따라 폴링 주파수(즉, 신호 전송 간의 시간 간격) 및 샘플링 기간을 조정할 수 있다. 상술한 바와 같이, 기결정된 샘플링 기간은 위치 데이터의 소정의 정확성에 적어도 부분적으로 의존한다. 기결정된 샘플링 기간이 증가하면 GPS 데이터를 획득할 확률이 더 높은 애플리케이션이나 더 상세한 GPS 데이터를 획득할 수 있는 위치 서비스에 적어도 부분적으로 기인하여 모바일 장치(10)의 위치의 정확성이 증가한다. 특정 실시예로, 기결정된 샘플링 기간은 모바일 장치(10)의 배터리 레벨에 의해 적어도 부분적으로 결정될 수 있다. 예로서 제한 없이, 모바일 장치(10)는 모바일 장치(10)의 배터리 레벨을 표시하는 데이터를 전송할 수 있고, 기결정된 샘플링 기간은 모바일 장치(10)의 배터리 레벨이 낮은 경우 소셜 네트워킹 시스템(30)이나 외부 서버(32)에 의해 감소할 수 있다. 또 다른 예로서, 모바일 장치(10)의 배터리 레벨이 낮은 경우, 폴링 주파수는 감소할 수 있다.
특정 실시예로, 소셜 네트워킹 시스템(30)이나 외부 서버는 기결정된 샘플링 기간의 말미에 전송 신호를 애플리케이션으로 전송할 수 있다. 애플리케이션은 전송 신호의 수신에 응답하여 획득된 위치 데이터 및 다른 관련 데이터를 소셜 네트워킹 시스템(30)이나 외부 서버(32)로 전송한다. 애플리케이션이 위치 데이터를 전송한 후, 애플리케이션은 휴면 모드로 되돌아갈 수 있고, 상술한 바대로 위치-데이터-획득 시퀀스가 반복되도록 위치 서비스는 다음의 폴링 신호가 폴링 주파수에 따라 수신될 때까지 전원이 차단될 수 있다. 특정 실시예로, 추가적인 위치-서비스 활성 신호는 애플리케이션이 위치 데이터가 획득되기 전에 휴면 모드로 되돌아가는 것을 방지하도록 위치 데이터 획득 동안 모바일 장치(10)로 주기적으로 전송된다.
특정 실시예로, 애플리케이션에 의한 위치 데이터의 전송은 이벤트-구동형 소셜 네트워킹 기능을 작동시킬 수 있다. 예로서 제한 없이, 모바일 장치(10)로부터 위치 데이터를 수신한 후, 소셜 네트워킹 시스템(30)의 소셜 그래프(36)는 사용자의 친구가 사용자와 동일한 인근에 있는지를 결정하도록 접속될 수 있다. 또 다른 예로서, 소셜 네트워킹 시스템(30)은 소셜 네트워킹 시스템(30)의 행위 스토어(38)에 저장된 행위들을 기초로 유사한 관심사를 가지는 또 다른 사용자가 사용자와 동일한 위치에 있는지를 결정할 수 있다. 또 다른 예로서, 위치 데이터를 전송하여 소셜 네트워킹 시스템(30)에서 온라인에 있는 사용자의 상태를 업데이트할 수 있다. 특정 실시예로, 행위 스토어(36)는 소셜 네트워킹 시스템(30)이나 외부 서버(32)로 이루어진 위치 업데이트를 기초로 동일한 위치에 다른 사용자와 모바일 장치(10)의 사용자의 상호작용을 저장할 수 있다. 예로서 제한 없이, 소셜 네트워킹 시스템(30)은 동일한 위치에 있는 또 다른 사용자와의 회의를 확인하도록 사용자를 프롬프트할 수 있다. 특정 실시예로, 소셜 네트워킹 시스템(30)이나 외부 서버(32)는 모바일 장치(10)가 고정되어 있거나 이동중인지 여부를 기초로 모바일 장치(10)로 송신되는 데이터량을 조정할 수 있다. 예로서 제한 없이, 소셜 네트워킹 시스템(30)은 모바일 장치(10)가 이동중일 때 모바일 장치(10)가 다른 셀룰러 타워 사이에서 스위칭될 수 있고 더 낮은 대역폭 정보를 송신할 수 있다고 추론할 수 있다.
특정 실시예로, 애플리케이션은 컨텍스트를 모바일 장치(10)의 위치 데이터로 제공하도록 데이터를 획득할 수 있다. 애플리케이션은 환경 데이터를 수집하도록 모바일 장치(10)의 센서를 활성화시킬 수 있다. 예로서 제한 없이, 애플리케이션은 모바일 장치(10)의 마이크로폰을 작동시켜 주변 소음을 측정할 수 있다. 또 다른 예로서, 애플리케이션은 모바일 장치(10)의 가속도계를 폴링하여 운행 모드가 사용자에 의해 사용되는 것으로 결정할 수 있다.
도 2a는 주변 위치 추적에 대한 예시적인 방법을 도시한다. 이 방법은 단계 100에서 시작할 수 있는데, 휴면 모드로부터 모바일 장치의 애플리케이션을 각성시키고 애플리케이션이 기결정된 샘플링 기간 동안 모바일 장치의 위치 서비스를 활성화시킬 수 있는 활성 신호는 기결정된 폴링 주파수로 서버에 의해 전송된다. 특정 실시예로, 기결정된 폴링 주파수 및 기결정된 샘플링 기간은 모바일 장치의 이동 거리에 의해 적어도 부분적으로 결정된다. 다른 특정 실시예로, 기결정된 샘플링 기간은 모바일 장치가 고정되어 있거나 이동중에 있는지 여부에 따라 적어도 부분적으로 조정될 수 있다. 단계 102에서, 서버는 기결정된 샘플링 기간 이후 모바일 장치로부터 위치 데이터를 수신하며, 이 시점에서 방법이 종료할 수 있다. 위치 데이터는 전송 신호에 응답한다. 특정 실시예로, 단계 100-102는 회귀적으로 반복된다. 본 명세서가 도 2a의 방법의 특정 단계들을 특정 순서로 발생하는 것으로 기술하고 도시하지만, 본 명세서는 도 2a의 방법의 임의의 적절한 단계들을 임의의 적절한 순서로 발생하는 것으로 고려한다. 게다가, 본 명세서가 도 2a의 방법의 특정 단계들을 수행하는 특정 구성요소들을 기술하고 도시하지만, 본 명세서는 도 2a의 방법의 임의의 적절한 단계들을 수행하는 임의의 적절한 구성요소들의 임의의 적절한 조합을 고려한다.
도 2b는 이동-기반 간격 업데이트를 위한 방법의 예시를 도시하고 있다. 방법은 단계 110에서 시작할 수 있는데, 컴퓨팅 장치가 동적으로 모바일 컴퓨팅 장치의 이동을 수동적인 사용자 입력 없이 결정한다. 단계 112에서, 컴퓨터 장치는 모바일 컴퓨팅 장치의 이동에 기반하여 동적으로 모바일 컴퓨팅 장치에 의한 위치 판독의 빈도 또는 길이를 수동적인 사용자 입력 없이 조정하고, 단계는 종료할 수 있다. 위치 데이터는 전송 신호에 응답한다. 본 명세서가 도 2b의 방법의 특정 단계들을 특정 순서로 발생하는 것으로 기술하고 도시하지만, 본 명세서는 도 2b의 방법의 임의의 적절한 단계들을 임의의 적절한 순서로 발생하는 것으로 고려한다. 게다가, 본 명세서가 도 2b의 방법의 특정 단계들을 수행하는 특정 구성요소들을 기술하고 도시하지만, 본 명세서는 도 2b의 방법의 임의의 적절한 단계들을 수행하는 임의의 적절한 구성요소들의 임의의 적절한 조합을 고려한다.
도 3은 예시적인 모바일 장치를 도시한다. 본 명세서는 임의의 적절한 물리적 형태를 취하는 모바일 장치(10)를 고려한다. 본 명세서에서는, 모바일 장치에 대한 언급이 네트워크와 연결하고 지리적 위치를 결정할 수 있는 임의의 적절한 시스템을 포함한다. 예로서 제한 없이, 모바일 장치(10)는 단일-보드 컴퓨터 시스템(SBC)(예컨대, 컴퓨터-온-모듈(COM) 또는 시스템-온-모듈(SOM)), 랩톱 또는 노트북 컴퓨터 시스템, 모바일폰, 스마트폰, 개인 정보 단말기(PDA), 태블릿 컴퓨터 시스템 또는 이들의 2 이상의 조합일 수 있다. 특정 실시예로, 모바일 장치(10)는 입력 구성요소로서 터치 스크린(12)을 가질 수 있다. 도 3의 예에서, 터치 스크린(12)은 모바일 장치(10)의 전면에 통합된다. 정전용량식 터치 센서의 경우, 송신하고 수신하는 2개의 타입의 전극이 있을 수 있다. 이런 전극은 전기 펄스를 가진 송신 전극을 구동하고 터치나 인접 입력으로 유발된 수신 전극으로부터 정전용량의 변화를 측정하도록 설계된 제어기와 연결될 수 있다. 도 3의 예에서, 하나 이상의 안테나(14A-C)는 모바일 장치(10)의 하나 이상의 측면에 통합될 수 있다. 안테나(14A-C)는 전류를 전파로 변환하고 그 역도 가능한 구성요소이다. 신호의 송신 중에, 송신기는 발진하는 무선주파수(RF) 전류를 안테나(14A-C)의 단자에 인가하고, 안테나(14A-C)는 전자기(EM) 파로서 인가된 전류의 에너지를 방사한다. 신호의 수신 중에, 안테나(14A-C)는 유입하는 EM 파의 전력을 안테나(14A-C)의 단자에서 전압으로 변환한다. 전압은 증폭을 위해 수신기로 송신될 수 있다.
도 4는 예시적인 모바일 장치의 예시적인 내부 구성요소를 도시한다. 적절한 경우, 하나 이상의 모바일 장치(10)는 본 명세서에 기술되거나 도시되는 하나 이상의 방법의 하나 이상의 단계를 실질적으로 공간적 또는 시간적 제한 없이 수행할 수 있다. 예로서 제한 없이, 하나 이상의 모바일 장치(10)는 본 명세서에 기술되거나 도시되는 하나 이상의 방법의 하나 이상의 단계를 실시간으로 또는 일괄 모드로 수행할 수 있다. 특정 실시예로, 하나 이상의 모바일 장치(10)는 본 명세서에 기술되거나 도시되는 하나 이상의 방법의 하나 이상의 단계를 수행한다. 특정 실시예로, 하나 이상의 모바일 장치(10)는 본 명세서에 기술되거나 도시되는 기능을 제공한다. 특정 실시예로, 하나 이상의 모바일 장치(10)에서 실행하는 소프트웨어는 본 명세서에 기술되거나 도시되는 하나 이상의 방법의 하나 이상의 단계를 수행하거나, 본 명세서에 기술되거나 도시되는 기능을 제공한다. 특정 실시예는 하나 이상의 모바일 장치(10)의 하나 이상의 부분을 포함한다.
특정 실시예로, 모바일 장치(10)는 프로세서(16), 메모리(18), 저장소(22), 입력/출력(I/O) 인터페이스(24), 통신 구성요소(20) 및 버스(26)를 포함한다. 본 명세서가 특정 배열로 특정한 수의 특정 구성요소를 갖는 특정 모바일 장치를 기술하고 도시하지만, 본 명세서는 임의의 적절한 구성으로 임의의 적절한 수의 임의의 적절한 구성요소를 갖는 임의의 적절한 모바일 장치를 고려한다. 특정 실시예로, 프로세서(16)는 가령 컴퓨터 프로그램이나 애플리케이션을 구성하는 명령어와 같은 명령어를 실행하기 위한 하드웨어를 포함한다. 예로서 제한 없이, 명령어를 실행하기 위해, 프로세서(16)는 내부 레지스터, 내부 캐시, 메모리(18) 또는 저장소(22)로부터 명령어를 검색(또는 페치(fetch))할 수 있고; 명령어를 디코딩하고 실행한 후; 하나 이상의 결과를 내부 레지스터, 내부 캐시, 메모리(18) 또는 저장소(22)에 기록할 수 있다.
특정 실시예로, 프로세서(16)는 데이터용, 명령어용 또는 주소용 하나 이상의 내부 캐시를 포함할 수 있다. 적절한 경우, 본 명세서는 임의의 적절한 수의 임의의 적절한 내부 캐시를 포함하는 프로세서(16)를 고려한다. 예로서 제한 없이, 프로세서(16)는 하나 이상의 명령어 캐시, 하나 이상의 데이터 캐시 및 하나 이상의 변환 참조 버퍼(translation look-aside buffers, TLBs)를 포함할 수 있다. 명령어 캐시에서 명령어는 메모리(18) 또는 저장소(22)에서 명령어의 사본일 수 있고, 명령어 캐시는 프로세서(16)에 의해 이들 명령어의 검색 속도를 높일 수 있다. 데이터 캐시에서 데이터는 프로세서(16)에서 실행하는 이어지는 명령어에 의해 접근하거나 메모리(18)나 저장소(22)로 기록하기 위해 프로세서(16)에서 실행된 이전 명령어의 결과를 운영하거나; 다른 적절한 데이터를 운영하도록 프로세서(16)에서 실행하는 명령어를 위한 메모리(18)나 저장소(22) 내의 데이터의 사본일 수 있다. 데이터 캐시는 프로세서(16)에 의한 읽기 또는 쓰기 동작의 속도를 높일 수 있다. TLB들을 프로세서(16)에 대한 가상-주소 변환의 속도를 높일 수 있다. 특정 실시예로, 프로세서(16)는 데이터용, 명령어용 또는 주소용 하나 이상의 내부 레지스터를 포함할 수 있다. 적절한 경우, 본 명세서는 임의의 적절한 수의 임의의 적절한 내부 레지스터를 포함하는 프로세서(16)를 고려한다. 적절한 경우, 프로세서(16)는 하나 이상의 산술 논리 유닛(ALUs)을 포함할 수 있거나; 멀티-코어 프로세서일 수 있거나; 하나 이상의 프로세서를 포함할 수 있다. 본 명세서가 특정 프로세서를 기술하고 도시하지만, 본 명세서는 임의의 적절한 프로세서를 고려한다.
특정 실시예로, 프로세서(16)에 의해 실행되는 소프트웨어는 운영 시스템(OS)을 포함할 수 있다. OS는 모바일 장치(10)의 하나 이상의 하드웨어 구성요소에 해당하는 커널 또는 임의의 수의 장치 드라이버를 포함할 수 있다. 예로서 제한 없이, 모바일 장치(10)가 스마트폰이라면, OS는 예컨대 WINDOWS Phone, ANDROID, Symbian, IOS 또는 Bada와 같은 모바일 운영 시스템일 수 있다. 특정 실시예로, 하나 이상의 소프트웨어 애플리케이션은 모바일 장치(10)에서 실행될 수 있다. 특정 실시예로, 애플리케이션은 모바일 장치(10)에 설치되고 상주하는 네이티브 애플리케이션일 수 있다. 예로서 제한 없이, 애플리케이션(예컨대, GOOGLE MAPS)은 터치 스크린에 지도를 디스플레이하거나, 주소나 사업체를 검색하거나, 지리적 위치로 방향을 제공할 수 있고; 제2 애플리케이션은 이메일로의 원격 접속을 제공할 수 있고; 제3 애플리케이션(즉, 웹 브라우저)은 장치 사용자가 인터넷을 브라우징하고 검색하게 할 수 있고; 제4 애플리케이션은 카메라를 제어하여 사진을 찍거나 비디오를 녹화할 수 있고; 제5 애플리케이션은 장치 사용자가 VoIP(voice-over Internet Protocol) 또는 셀룰러 네트워크 호출을 수신하고 개시하게 할 수 있다. 소프트웨어 애플리케이션은 사용자 인터페이스(UI)를 가질 수 있고, 하나 이상의 특정한 기능을 구현할 수 있다. 소프트웨어 애플리케이션은 특정한 기능을 구현하는 하나 이상의 소프트웨어 모듈을 포함할 수 있다. 소프트웨어 애플리케이션의 실행가능한 코드는 모바일 장치(10)의 메모리(18)나 저장소(22)에 저장될 수 있다.
특정 실시예로, 메모리(18)는 프로세서(16)가 실행하는 명령어 또는 프로세서(16)가 운영하는 데이터를 저장하기 위한 메인 메모리를 포함한다. 예로서 제한 없이, 모바일 장치(10)는 저장소(22)나 또 다른 소스(가령, 예컨대 또 다른 모바일 장치(10))에서 메모리(18)로 명령어를 로딩할 수 있다. 프로세서(16)는 이후 메모리(18)로부터 내부 레지스터나 내부 캐시로 명령어를 로딩할 수 있다. 명령어를 실행하기 위해, 프로세서(16)는 내부 레지스터나 내부 캐시로부터 명령어를 검색하고 이들을 디코딩할 수 있다. 명령어의 실행 중 또는 실행 후, 프로세서(16)는 (중간 결과 또는 최종 결과일 수 있는) 하나 이상의 결과를 내부 레지스터나 내부 캐시로 기록할 수 있다. 이후, 프로세서(16)는 하나 이상의 이런 결과를 메모리(18)에 기록할 수 있다. 특정 실시예로, 프로세서(16)는 (저장소(22) 또는 다른 곳과는 대조적으로) 하나 이상의 내부 레지스터나 내부 캐시에서 또는 메모리(18)에서 단지 명령어만을 실행하며, (저장소(22) 또는 다른 곳과는 대조적으로) 하나 이상의 내부 레지스터나 내부 캐시에서 또는 메모리(18)에서 단지 데이터만을 운영한다.
(주소 버스 및 데이터 버스를 각각 포함할 수 있는) 하나 이상의 메모리 버스는 프로세서(16)를 메모리(18)로 연결할 수 있다. 하기에 기술되는 바와 같이, 버스(26)는 하나 이상의 메모리 버스를 포함할 수 있다. 특정 실시예로, 하나 이상의 메모리 관리 유닛(MMUs)은 프로세서(16)와 메모리(18) 사이에 상주하며, 프로세서(16)에 의해 요청되는 메모리(18)로의 접근을 용이하게 한다. 특정 실시예로, 메모리(18)는 랜덤 액세스 메모리(RAM)를 포함한다. 적절한 경우, 이런 RAM은 휘발성 메모리일 수 있다. 적절한 경우, 이런 RAM은 동적 RAM(DRAM) 또는 정적 RAM(SRAM)일 수 있다. 게다가, 적절한 경우, 이런 RAM은 단일 포트형 또는 다중-포트형 RAM일 수 있다. 본 명세서는 임의의 적절한 RAM을 고려한다. 적절한 경우, 메모리(18)는 하나 이상의 메모리를 포함할 수 있다. 본 명세서가 특정 메모리를 기술하고 도시하지만, 본 명세서는 임의의 적절한 메모리를 고려한다.
특정 실시예로, 저장소(22)는 데이터용 또는 명령어용 대용량 저장소를 포함한다. 예로서 제한 없이, 저장소(22)는 HDD, 플로피 디스크 드라이브, 플래시 메모리 또는 이들의 2 이상의 조합을 포함할 수 있다. 적절한 경우, 저장소(22)는 착탈식 또는 비-착탈식(또는 고정) 매체를 포함할 수 있다. 적절한 경우, 저장소(22)는 모바일 장치(10)의 내부 또는 외부에 있을 수 있다. 특정 실시예로, 저장소(22)는 비휘발성, 고체-상태(solid-state) 메모리이다. 특정 실시예로, 저장소(22)는 읽기 전용 메모리(ROM)를 포함한다. 적절한 경우, 이런 ROM은 마스크-프로그램화된 ROM, 프로그램가능 ROM(PROM), 소거가능 PROM(EPROM), 전기적 소거가능 PROM(EEPROM), 전기적 변경가능 ROM(EAROM), 플래시 메모리 또는 이들의 2 이상의 조합일 수 있다. 본 명세서는 임의의 적절한 물리적 형태를 취하는 대용량 저장소(22)를 고려한다. 적절한 경우, 저장소(22)는 프로세서(16)와 저장소(22) 사이의 통신을 용이하게 하는 하나 이상의 저장소 제어 유닛을 포함할 수 있다. 적절한 경우, 저장소(22)는 하나 이상의 저장소(22)를 포함할 수 있다. 본 명세서가 특정 저장소를 기술하고 도시하지만, 본 명세서는 임의의 적절한 저장소를 고려한다.
특정 실시예로, I/O 인터페이스(24)는 모바일 장치(10)와 하나 이상의 I/O 장치 사이의 통신을 위한 하나 이상의 인터페이스를 제공하는 하드웨어, 소프트웨어 또는 이들 모두를 포함한다. 적절한 경우, 모바일 장치(10)는 하나 이상의 이들 I/O 장치를 포함할 수 있다. 하나 이상의 이들 I/O 장치는 사용자와 모바일 장치(10) 사이의 통신을 가능하게 할 수 있다. 예로서 제한 없이, I/O 장치는 키보드, 키패드, 하나 이상의 센서, 터치 스크린, 마이크로폰, 모니터, 마우스, 프린터, 스캐너, 스피커, 디지털 스틸 카메라, 스타일러스(stylus), 트랙볼(trackball), 비디오 카메라, 또 다른 적절한 I/O 장치 또는 이들의 2 이상의 조합을 포함할 수 있다. 본 명세서는 임의의 적절한 I/O 장치 및 이에 대한 임의의 적절한 I/O 인터페이스(24)를 고려한다. 적절한 경우, I/O 인터페이스(24)는 프로세서(16)가 하나 이상의 이들 I/O 장치를 구동할 수 있도록 하는 하나 이상의 장치 또는 소프트웨어 드라이버를 포함할 수 있다. 적절한 경우, I/O 인터페이스(24)는 하나 이상의 I/O 인터페이스(24)를 포함할 수 있다. 본 명세서가 특정 I/O 인터페이스를 기술하고 도시하지만, 본 명세서는 임의의 적절한 I/O 인터페이스를 고려한다.
특정 실시예로, 통신 구성요소(20)는 모바일 장치(10)와 하나 이상의 다른 모바일 장치(10)나 하나 이상의 네트워크 사이의 통신(가령, 예컨대 패킷-기반 통신)을 위한 하나 이상의 인터페이스를 제공하는 하드웨어, 소프트웨어 또는 이들 모두를 포함한다. 예로서 제한 없이, 통신 구성요소(20)는 이더넷이나 다른 유선-기반 네트워크로 통신하기 위한 네트워크 인터페이스 제어장치(NIC)나 네트워크 어댑터 또는 예컨대 3세대 모바일 통신(3G) 또는 LTE(Long Term Evolution) 네트워크와 같은 셀룰러 네트워크와 통신하기 위한 WI-FI 네트워크나 모뎀과 같이 무선 네트워크와 통신하기 위한 무선 NIC(WNIC)나 무선 어댑터를 포함할 수 있다. 본 명세서는 임의의 적절한 네트워크 및 이에 대한 임의의 적절한 통신 구성요소(20)를 고려한다. 예로서 제한 없이, 모바일 장치(10)는 애드 혹 네트워크(ad hoc network), 개인 영역 네트워크(PAN), 근거리 네트워크(LAN), 광역 네트워크(WAN), 대도시 네트워크(MAN), 인터넷의 하나 이상의 부분 또는 2 이상의 이런 네트워크들의 조합으로 통신할 수 있다. 하나 이상의 이런 네트워크의 하나 이상의 부분은 유선 또는 무선일 수 있다. 또 다른 예로서, 모바일 장치(10)는 무선 PAN(WPAN)(가령, 예컨대 BLUETOOTH WPAN), WI-FI 네트워크, WI-MAX 네트워크, 셀룰러폰 네트워크(가령, 예컨대 GSM(Global System for Mobile Communication) 네트워크, 3G 네트워크 또는 LTE(Long Term Evolution) 네트워크), 다른 적절한 무선 네트워크 또는 2 이상의 이런 네트워크들의 조합으로 통신할 수 있다. 적절한 경우, 모바일 장치(10)는 임의의 이들 네트워크에 대한 임의의 적절한 통신 구성요소를 포함할 수 있다. 적절한 경우, 통신 구성요소(20)는 하나 이상의 통신 구성요소를 포함할 수 있다. 본 명세서가 특정한 통신 구성요소를 기술하고 도시하지만, 본 명세서는 임의의 적절한 통신 구성요소를 고려한다.
특정 실시예로, 버스(26)는 모바일 장치(10)의 구성요소를 서로 연결하는 하드웨어, 소프트웨어 또는 이들 모두를 포함한다. 예로서 제한 없이, 버스(26)는 그래픽 버스, EISA(Enhanced Industry Standard Architecture) 버스, FSB(front-side bus), HT(HYPERTRANSPORT) 인터커넥트, ISA(Industry Standard Architecture) 버스, INFINIBAND 인터커넥트, LPC(low-pin-count) 버스, 메모리 버스, MCA(Micro Channel Architecture) 버스, SATA(serial advanced technology attachment) 버스, VLB(Video Electronics Standard Association local) 버스 또는 또 다른 적절한 버스 또는 2 이상의 이런 버스의 조합을 포함할 수 있다. 적절한 경우, 버스(26)는 하나 이상의 버스(26)를 포함할 수 있다. 본 명세서가 특정한 버스를 기술하고 도시하지만, 본 명세서는 임의의 적절한 버스나 인터커넥트를 고려한다.
특정 실시예에서, 모바일 장치(10)은 하나 이상의 센서, 예컨대 가속도계, 자이로스코프, 근접 센서, 광 센서 또는 생체인식 센서를 포함할 수 있다. 특정 실시예에서, 센서는 모바일 장치(10)의 이동을 감지할 수 있다. 예로서 제한 없이, 가속도계는 모바일 장치(10)이 이동중인지 여부와 이동 속도를 감지하도록 설정될 수 있다. 다른 예로서, 자이로스코프는 모바일 장치(10)의 방향의 측정을 통해 모바일 장치(10)의 이동을 감지하도록 설정될 수 있다. 특정 실시예에서, 센서 허브는 모바일 장치(10)에 포함될 수 있다. 모바일 장치(10)의 센서들은 센서를 제어하거나, 센서의 전력을 관리하거나, 센서 입력을 처리하거나, 센서 데이터를 종합하거나 특정 센서 기능을 수행하는 프로세서일 수 있는 센서 허브에 연결될 수 있다. 특정 실시예에서, 모바일 장치(10)의 센서 허브는 센서로부터 획득한 환경 데이터를 처리하여 모바일 장치(10)의 이동을 결정할 수 있다. 본 명세서가 특정한 센서로 모바일 장치의 움직임의 감지를 기술하지만, 본 명세서는 임의의 적절한 센서 또는 센서들의 조합으로 모바일 장치의 움직임의 감지를 고려한다.
상술한 바와 같이, 소셜 네트워킹 시스템에서 전송된 신호는 모바일 장치(10)의 하나 이상의 센서를 활성화하여 환경 데이터를 수집할 수 있다. 예로서 제한 없이, 모바일 장치(10)의 애플리케이션으로 전송된 활성 신호는 모바일 장치(10)의 하나 이상의 센서를 활성화하여 환경 데이터를 획득할 수 있다. 대안적으로, 모바일 장치(10)의 하나 이상의 센서는 자동으로 소셜 네트워킹 시스템으로부터의 입력 없이 환경 데이터를 소셜 네트워킹 시스템으로 주기적 업데이트로서, 모바일 장치(10)의 환경의 변화에 응답하여 또는 이들의 조합에 의하여 전송할 수 있다. 특정 실시예에서, 모바일 장치(10)의 하나 이상의 센서에 의하여 수집된 환경 데이터는 모바일 장치(10)의 이동을 감지할 수 있다. 예로서 제한 없이, 가속도계는 모바일 장치(10)의 예컨대 휴식에서 이동으로와 같은 가속도의 변화를 감지하고 자동으로 모바일 장치(10)의 이동과 관련된 환경 데이터를 소셜 네트워킹 시스템으로 전송할 수 있다. 다른 예로서, 자이로스코프는 모바일 장치(10)의 이동을 가리키는 모바일 장치(10)의 방향의 변화를 감지하고 모바일 장치(10)의 이동과 관련된 데이터를 소셜 네트워킹 시스템으로 전송할 수 있다. 상술한 바와 같이, 센서로부터의 환경 데이터와 모바일 장치(10)의 위치 서비스로부터의 위치 데이터는 소셜 네트워킹 시스템으로 전송될 수 있다. 특정 실시예에서, 센서 허브는 환경 데이터에 기반하여 모바일 장치의 이동을 감지하고 모바일 장치(10)의 이동이 일어났음을 가리키는 신호를 소셜 네트워킹 시스템으로 전송할 수 있다. 상술한 바와 같이, 소셜 네트워킹 시스템은 기결정된 샘플링 기간 및 모바일 장치(10)의 애플리케이션으로 신호가 보내지는 폴링 주파수를 동적으로 모바일 장치(10)의 센서로부터 획득한 환경 데이터 또는 모바일 장치(10)로부터의 이동이 일어났음을 가리키는 신호에 적어도 부분적으로 기반하여 조정할 수 있다.
도 5는 예시적인 모바일 장치의 예시적인 통신 구성요소를 도시한다. 상술한 바와 같이, 모바일 장치의 통신 구성요소(20)는 하나 이상의 안테나(14A-E) 및 무선 통신에 대한 하나 이상의 통신 인터페이스를 포함할 수 있다. 예로서 제한 없이, 안테나(14A-E)는 모바일 장치(10)에 의해 예컨대 3G, LTE, BLUETOOTH, WI-FI, GPS(global-positioning system) 등과 같은 무선 통신 프로토콜의 사용을 지원한다. 각각의 다양한 무선 통신 프로토콜은 특정한 주파수 범위 내에서 동작하려고 한다. 본 명세서는 특정한 무선 통신 프로토콜을 지원하는 안테나를 기술하고 도시하지만, 본 명세서는 임의의 적절한 무선 통신 프로토콜을 지원하는 안테나를 고려한다. 모뎀(28)은 안테나(14A-E)와 연결되며, 적절한 무선 프로토콜과 관련된 특정 주파수(즉, 공진 주파수)에서 동작하도록 안테나(14A-E)를 구성한다. 모뎀(28)은 안테나(14A-E)에 의해 수신된 무선 통신 신호를 처리하도록 구성된다. 본 명세서에서, 모뎀에 대한 언급은 아날로그나 디지털 무선 신호를 처리하거나 무선 통신 신호의 보정을 수행하는 임의의 적절한 신호 처리 구성요소를 포함한다. 모뎀(28)은 통신 구성요소(16)의 로직(30) 또는 모바일 장치의 프로세서와 연결될 수 있다.
상술한 바와 같이, 안테나(14A-E)는 수신된 EM 신호를 안테나(14A-E)의 단자에서 전기 신호로 변환하도록 구성된다. 안테나(14A-E)의 단자에서 전기 신호는 모뎀(28)으로 송신된다. 특정 실시예로, 모바일 장치가 3G 또는 LTE 데이터 네트워크를 통해 인터넷에 접속하는 경우, 1차 안테나(14A) 및 2차 안테나(14B)는 사용된다. 모뎀(28)은 하나 이상의 무선 프로토콜과 함께 사용하기 위해 안테나(14A-B)를 구성한다. 모뎀(28)은 하기에 기술되는 바와 같이 모바일 장치에 의해 사용되는 무선 프로토콜과 관련된 주파수 범위 내에서 안테나와 모뎀 사이의 전력 전달의 효율성을 최적화하도록 구성된다. 특정 실시예로, 모뎀(28)은 모바일 장치에 의해 수신된 신호에서 응답 변이를 인코딩한 데이터를 로직(30)으로 송신한다. 로직(30)은 모뎀(28)으로부터 수신되는 인코딩된 응답-변이 데이터를 처리하고 수신된 응답-변이 데이터를 기초로 모바일 장치의 구성에 대한 변경을 개시하도록 구성될 수 있다.
본 명세서에서, 컴퓨터 판독가능한 저장매체나 매체들에 대한 언급은 하나 이상의 반도체 기반 또는 다른 집적회로(IC)(가령, 예컨대 FPGA(field-programmable gate array) 또는 ASIC(application-specific IC)), 하드 디스크 드라이브(HDDs), 하이브리드 하드 디스크(HHDs), 광학 디스크, 광학 디스크 드라이브(ODDs), 자기-광학 디스크, 자기-광학 드라이브, 플로피 디스크나 디스켓, 플로피 디스크 드라이브(FDDs), 자기 테이프, 고체-상태 드라이브(SSDs), RAM 드라이브, SECURE DIGITAL 카드나 드라이브, 임의의 다른 적절한 컴퓨터-판독가능한 비일시적 저장매체 또는, 적절한 경우, 2 이상의 이들의 조합을 포함할 수 있다. 적절한 경우, 컴퓨터-판독가능한 비일시적 저장매체는 휘발성, 비휘발성 또는 휘발성과 비휘발성의 조합일 수 있다.
본 명세서에서, "또는"은 명시적으로 다르게 지시하거나 문맥상 달리 지시되지 않는 한, 포괄적인 것이며 배타적인 것이 아니다. 따라서, 본 명세서에서 "A 또는 B"는 명시적으로 다르게 지시하거나 문맥상 달리 지시되지 않는 한, "A, B 또는 둘 모두"를 의미한다. 게다가, "및"은 명시적으로 다르게 지시하거나 문맥상 달리 지시되지 않는 한, 공동 및 별개 모두이다. 따라서, 본 명세서에서 "A 및 B"는 명시적으로 다르게 지시하거나 문맥상 달리 지시되지 않는 한, "A 및 B가 공동이든 별개이든 상관없이 모두"를 의미한다.
본 명세서는 당업자가 이해할 수 있는 본 명세서의 예시적인 실시예에 대한 모든 변화, 치환, 변형, 대체 및 변경을 포함한다. 게다가, 본 명세서는 특정 컴포넌트, 구성요소, 기능, 동작 또는 단계를 포함하는 것으로 본 명세서의 각각의 실시예들을 기술하고 도시하지만, 임의의 이런 실시예들은 당업자가 이해할 수 있는 본 명세서에 어디든 기술되거나 도시되는 임의의 컴포넌트, 구성요소, 기능, 동작 또는 단계의 임의의 조합이나 치환을 포함할 수 있다. 게다가, 첨부된 청구범위에서 특정 기능을 수행하도록 설계되거나, 배치되거나, 할 수 있거나, 구성되거나, 할 수 있게 하거나, 동작할 수 있거나, 동작하는 장치나 시스템 또는 장치나 시스템의 구성요소에 대한 언급은 장치, 시스템 또는 구성요소가 그렇게 설계되거나, 배치되거나, 할 수 있거나, 구성되거나, 가능하거나, 동작할 수 있거나 동작하는 한, 장치, 시스템, 구성요소, 그 또는 그러한 특정 기능이 활성화되었는지, 턴온 되었는지, 잠금 해제되었는지 여부를 포함한다.
Claims (18)
- 서버에 의해, 제1 사용자의 모바일 컴퓨팅 장치상의 애플리케이션을 슬립 모드에서 각성시키고, 애플리케이션으로 하여금 모바일 컴퓨팅 장치의 위치 서비스를 기결정된 샘플링 지속시간의 시간 범위 동안 활성화하도록 하는 활성 신호를 기결정된 폴링 주파수에서 전송하는 단계;
서버에 의해, 기결정된 샘플링 지속시간 이후 모바일 컴퓨팅 장치로부터 위치 데이터를 수신하는 단계;
서버에 의해, 소셜 네트워킹 시스템의 소셜 그래프에 액세스하는 단계;
서버에 의해, 모바일 컴퓨팅 장치의 수신된 위치 데이터에 기반하여 한 명 이상의 제2 사용자들의 현재 위치가 제1 사용자로부터 기결정된 근접도 내에 있는지 여부를 결정하는 단계;
서버에 의해, 한 명 이상의 제2 사용자들 중 한 명의 제2 사용자의 현재 위치가 제1 사용자로부터 기결정된 근접도 내에 있다고 결정하는 단계;
서버에 의해, 소셜 네트워킹 시스템의 행위 스토어에 액세스하는 단계;
서버에 의해, 제2 사용자의 현재 위치가 제1 사용자로부터 기결정된 근접도 내에 있다고 결정될 때, 제1 사용자 및 제2 사용자에 의해 수행된 하나 이상의 행위, 하나 이상의 행위 각각과 연관된 시간, 및 하나 이상의 행위 각각에 대한 통계 정보에 기반하여 제1 및 제2 사용자 사이의 하나 이상의 유사한 관심사를 결정하는 단계; 및
서버에 의해, 제1 사용자가 제2 사용자와 하나 이상의 유사한 관심사를 갖는다고 결정될 때, 제1 사용자에게 제2 사용자의 위치를 알리는 단계를 포함하고,
기결정된 폴링 주파수 및 기결정된 샘플링 지속시간은 모바일 컴퓨팅 장치의 움직임을 감지함으로써 적어도 부분적으로 결정되며,
제1 사용자는 소셜 네트워킹 시스템의 사용자이고,
제2 사용자들은 소셜 네트워킹 시스템의 사용자들이며 소셜 그래프 내에서 제1 사용자에게 연결되며,
행위 스토어는 소셜 네트워킹 시스템의 제1 사용자 및 제2 사용자에 의해 수행된 행위, 행위 각각과 연관된 시간, 및 행위 각각에 대한 통계 정보를 포함하는 모바일 컴퓨팅 장치의 위치 추적 방법. - 제 1 항에 있어서,
모바일 컴퓨팅 장치로부터 위치 데이터를 수신한 이후, 애플리케이션을 슬립 모드로 돌려보내고, 기결정된 폴링 주파수에 기반하여 다음 활성 신호가 전송될 때까지 모바일 컴퓨팅 장치의 위치 서비스를 비활성화시키는 단계를 더 포함하는 모바일 컴퓨팅 장치의 위치 추적 방법. - 제 1 항에 있어서,
서버에 의해, 모바일 컴퓨팅 장치의 배터리 레벨을 결정하는 단계를 더 포함하고,
상기 배터리 레벨이 기결정된 레벨보다 더 낮을 때, 기결정된 샘플링 지속시간의 시간 범위를 감소시키는 모바일 컴퓨팅 장치의 위치 추적 방법. - 제 1 항에 있어서,
모바일 컴퓨팅 장치의 움직임을 감지하는 것은:
서버에 의해, 수신된 위치 데이터에 기반하여 모바일 컴퓨팅 장치의 이동 거리를 결정하는 것; 및
서버에 의해, 모바일 컴퓨팅 장치의 결정된 이동 거리에 적어도 부분적으로 기반하여 기결정된 폴링 주파수 및 기결정된 샘플링 지속시간을 적응적으로 조정하는 것을 더 포함하는 모바일 컴퓨팅 장치의 위치 추적 방법. - 제 4 항에 있어서,
이동 거리가 기결정된 이동 거리보다 더 크다고 결정될 때, 더 낮은 대역폭 정보를 모바일 컴퓨팅 장치로 전송하는 모바일 컴퓨팅 장치의 위치 추적 방법. - 제 1 항에 있어서,
이동 거리는 모바일 컴퓨팅 장치의 가속도계 또는 자이로스코프의 출력에 적어도 부분적으로 기반하여 결정되고,
위치 서비스는 셀룰러 타워의 위치, WI-FI 핫스팟의 위치, 또는 모바일 컴퓨팅 장치의 GPS 기능을 폴링하는 것을 포함하는 모바일 컴퓨팅 장치의 위치 추적 방법. - 하나 이상의 모바일 컴퓨팅 장치의 위치 추적을 위한 컴퓨터-판독가능한 비-일시적 저장 매체로서,
제1 사용자의 모바일 컴퓨팅 장치상의 애플리케이션을 슬립 모드에서 각성시키고, 애플리케이션으로 하여금 모바일 컴퓨팅 장치의 위치 서비스를 기결정된 샘플링 지속시간의 시간 범위 동안 활성화하도록 하는 활성 신호를 기결정된 폴링 주파수에서 전송하고;
기결정된 샘플링 지속시간 이후 모바일 컴퓨팅 장치로부터 위치 데이터를 수신하며;
소셜 네트워킹 시스템의 소셜 그래프에 액세스하고;
모바일 컴퓨팅 장치의 수신된 위치 데이터에 기반하여 한 명 이상의 제2 사용자들의 현재 위치가 제1 사용자로부터 기결정된 근접도 내에 있는지 여부를 결정하고;
한 명 이상의 제2 사용자들 중 한 명의 제2 사용자의 현재 위치가 제1 사용자로부터 기결정된 근접도 내에 있다고 결정하고;
소셜 네트워킹 시스템의 행위 스토어에 액세스하고;
제2 사용자의 현재 위치가 제1 사용자로부터 기결정된 근접도 내에 있다고 결정될 때, 제1 사용자 및 제2 사용자에 의해 수행된 하나 이상의 행위, 하나 이상의 행위 각각과 연관된 시간, 및 하나 이상의 행위 각각에 대한 통계 정보에 기반하여 제1 및 제2 사용자 사이의 하나 이상의 유사한 관심사를 결정하고; 및
제1 사용자가 제2 사용자와 하나 이상의 유사한 관심사를 갖는다고 결정될 때, 제1 사용자에게 제2 사용자의 위치를 알리도록 실행시 구성되는 소프트웨어를 포함하며,
기결정된 폴링 주파수 및 기결정된 샘플링 지속시간은 모바일 컴퓨팅 장치의 움직임을 감지함으로써 적어도 부분적으로 결정되며,
제1 사용자는 소셜 네트워킹 시스템의 사용자이고,
제2 사용자들은 소셜 네트워킹 시스템의 사용자들이며 소셜 그래프 내에서 제1 사용자에게 연결되고,
행위 스토어는 소셜 네트워킹 시스템의 제1 사용자 및 제2 사용자에 의해 수행된 행위, 행위 각각과 연관된 시간, 및 행위 각각에 대한 통계 정보를 포함하는 모바일 컴퓨팅 장치의 위치 추적을 위한 컴퓨터-판독가능한 비-일시적 저장 매체. - 제 7 항에 있어서,
소프트웨어는, 모바일 컴퓨팅 장치로부터 위치 데이터를 수신한 이후, 애플리케이션을 슬립 모드로 돌려보내고, 기결정된 폴링 주파수에 기반하여 다음 활성 신호가 전송될 때까지 모바일 컴퓨팅 장치의 위치 서비스를 비활성화시키도록 또한, 구성되는 모바일 컴퓨팅 장치의 위치 추적을 위한 컴퓨터-판독가능한 비-일시적 저장 매체. - 제 7 항에 있어서,
소프트웨어는, 배터리 레벨이 기결정된 레벨보다 더 낮을 때, 기결정된 샘플링 지속시간의 시간 범위가 감소되게끔 모바일 컴퓨팅 장치의 배터리 레벨을 결정하도록 또한, 구성되는 모바일 컴퓨팅 장치의 위치 추적을 위한 컴퓨터-판독가능한 비-일시적 저장 매체. - 제 7 항에 있어서,
모바일 컴퓨팅 장치의 움직임을 감지하는 것은:
수신된 위치 데이터에 기반하여 모바일 컴퓨팅 장치의 이동 거리를 결정하는 것; 및
모바일 컴퓨팅 장치의 결정된 이동 거리에 적어도 부분적으로 기반하여 기결정된 폴링 주파수 및 기결정된 샘플링 지속시간을 적응적으로 조정하는 것을 더 포함하는 모바일 컴퓨팅 장치의 위치 추적을 위한 컴퓨터-판독가능한 비-일시적 저장 매체. - 제 10 항에 있어서,
이동 거리가 기결정된 이동 거리보다 더 크다고 결정될 때, 더 낮은 대역폭 정보를 모바일 컴퓨팅 장치로 전송하는 모바일 컴퓨팅 장치의 위치 추적을 위한 컴퓨터-판독가능한 비-일시적 저장 매체. - 제 7 항에 있어서,
이동 거리는 모바일 컴퓨팅 장치의 가속도계 또는 자이로스코프의 출력에 적어도 부분적으로 기반하여 결정되고,
위치 서비스는 셀룰러 타워의 위치, WI-FI 핫스팟의 위치, 또는 모바일 컴퓨팅 장치의 GPS 기능을 폴링하는 것을 포함하는 모바일 컴퓨팅 장치의 위치 추적을 위한 컴퓨터-판독가능한 비-일시적 저장 매체. - 저장소에 연결된 프로세서; 및
제1 사용자의 모바일 컴퓨팅 장치상의 애플리케이션을 슬립 모드에서 각성시키고, 애플리케이션으로 하여금 모바일 컴퓨팅 장치의 위치 서비스를 기결정된 샘플링 지속시간의 시간 범위 동안 활성화하도록 하는 활성 신호를 기결정된 폴링 주파수에서 전송하고;
기결정된 샘플링 지속시간 이후 모바일 컴퓨팅 장치로부터 위치 데이터를 수신하며;
소셜 네트워킹 시스템의 소셜 그래프에 액세스하고;
모바일 컴퓨팅 장치의 수신된 위치 데이터에 기반하여 한 명 이상의 제2 사용자들의 현재 위치가 제1 사용자로부터 기결정된 근접도 내에 있는지 여부를 결정하고;
한 명 이상의 제2 사용자들 중 한 명의 제2 사용자의 현재 위치가 제1 사용자로부터 기결정된 근접도 내에 있다고 결정하고;
소셜 네트워킹 시스템의 행위 스토어에 액세스하고;
제2 사용자의 현재 위치가 제1 사용자로부터 기결정된 근접도 내에 있다고 결정될 때, 제1 사용자 및 제2 사용자에 의해 수행된 하나 이상의 행위, 하나 이상의 행위 각각과 연관된 시간, 및 하나 이상의 행위 각각에 대한 통계 정보에 기반하여 제1 및 제2 사용자 사이의 하나 이상의 유사한 관심사를 결정하고; 및
제1 사용자가 제2 사용자와 하나 이상의 유사한 관심사를 갖는다고 결정될 때, 제1 사용자에게 제2 사용자의 위치를 알리도록 실행시 구성되는 소프트웨어를 포함하고 프로세서에 연결된 하나 이상의 컴퓨터-판독가능한 비-일시적 저장 매체를 포함하며,
기결정된 폴링 주파수 및 기결정된 샘플링 지속시간은 모바일 컴퓨팅 장치의 움직임을 감지함으로써 적어도 부분적으로 결정되며,
제1 사용자는 소셜 네트워킹 시스템의 사용자이고,
제2 사용자들은 소셜 네트워킹 시스템의 사용자들이며 소셜 그래프 내에서 제1 사용자에게 연결되고,
행위 스토어는 소셜 네트워킹 시스템의 제1 사용자 및 제2 사용자에 의해 수행된 행위, 행위 각각과 연관된 시간, 및 행위 각각에 대한 통계 정보를 포함하는 모바일 컴퓨팅 장치의 위치 추적 장치. - 제 13 항에 있어서,
소프트웨어는, 모바일 컴퓨팅 장치로부터 위치 데이터를 수신한 이후, 애플리케이션을 슬립 모드로 돌려보내고, 기결정된 폴링 주파수에 기반하여 다음 활성 신호가 전송될 때까지 모바일 컴퓨팅 장치의 위치 서비스를 비활성화시키도록 또한, 구성되는 모바일 컴퓨팅 장치의 위치 추적 장치. - 제 13 항에 있어서,
소프트웨어는, 배터리 레벨이 기결정된 레벨보다 더 낮을 때, 기결정된 샘플링 지속시간의 시간 범위가 감소되게끔 모바일 컴퓨팅 장치의 배터리 레벨을 결정하도록 또한, 구성되는 모바일 컴퓨팅 장치의 위치 추적 장치. - 제 13 항에 있어서,
모바일 컴퓨팅 장치의 움직임을 감지하는 것은:
수신된 위치 데이터에 기반하여 모바일 컴퓨팅 장치의 이동 거리를 결정하는 것; 및
모바일 컴퓨팅 장치의 결정된 이동 거리에 적어도 부분적으로 기반하여 기결정된 폴링 주파수 및 기결정된 샘플링 지속시간을 적응적으로 조정하는 것을 더 포함하는 모바일 컴퓨팅 장치의 위치 추적 장치. - 제 16 항에 있어서,
이동 거리가 기결정된 이동 거리보다 더 크다고 결정될 때, 더 낮은 대역폭 정보를 모바일 컴퓨팅 장치로 전송하는 모바일 컴퓨팅 장치의 위치 추적 장치. - 제 13 항에 있어서,
이동 거리는 모바일 컴퓨팅 장치의 가속도계 또는 자이로스코프의 출력에 적어도 부분적으로 기반하여 결정되고,
위치 서비스는 셀룰러 타워의 위치, WI-FI 핫스팟의 위치, 또는 모바일 컴퓨팅 장치의 GPS 기능을 폴링하는 것을 포함하는 모바일 컴퓨팅 장치의 위치 추적 장치.
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US13/760,692 US9088865B2 (en) | 2012-06-06 | 2013-02-06 | Global-positioning system (GPS) update interval based on sensor |
US13/760,692 | 2013-02-06 | ||
PCT/US2014/014827 WO2014123975A2 (en) | 2013-02-06 | 2014-02-05 | Global-positioning system (gps) update interval based on sensor |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020157024232A Division KR101652425B1 (ko) | 2013-02-06 | 2014-02-05 | 센서 데이터에 기반한 gps 업데이트 간격을 사용하는 위치 추적 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20160103178A KR20160103178A (ko) | 2016-08-31 |
KR101875050B1 true KR101875050B1 (ko) | 2018-07-05 |
Family
ID=51300247
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020167023013A KR101875050B1 (ko) | 2013-02-06 | 2014-02-05 | 위치 추적에 일반적으로 관련되는 방법, 하나 이상의 컴퓨터-판독가능한 비-일시적 저장 매체 및 장치 |
KR1020157024232A KR101652425B1 (ko) | 2013-02-06 | 2014-02-05 | 센서 데이터에 기반한 gps 업데이트 간격을 사용하는 위치 추적 |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020157024232A KR101652425B1 (ko) | 2013-02-06 | 2014-02-05 | 센서 데이터에 기반한 gps 업데이트 간격을 사용하는 위치 추적 |
Country Status (10)
Country | Link |
---|---|
EP (1) | EP2954348B1 (ko) |
JP (1) | JP2016513395A (ko) |
KR (2) | KR101875050B1 (ko) |
CN (1) | CN105122082A (ko) |
AU (2) | AU2014215033B2 (ko) |
BR (1) | BR112015018820A2 (ko) |
CA (2) | CA2914586C (ko) |
IL (2) | IL240264A (ko) |
MX (1) | MX354324B (ko) |
WO (1) | WO2014123975A2 (ko) |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106610665A (zh) * | 2015-10-22 | 2017-05-03 | 沈阳新松机器人自动化股份有限公司 | 一种基于gps的自主行进机器人 |
JP2017156257A (ja) * | 2016-03-03 | 2017-09-07 | Necプラットフォームズ株式会社 | 無線通信装置、位置情報通知システム、および位置情報通知方法、並びにコンピュータ・プログラム |
CN107422356A (zh) * | 2016-10-09 | 2017-12-01 | 北京摩拜科技有限公司 | 车辆定位方法和车辆定位系统 |
JP2018152762A (ja) * | 2017-03-14 | 2018-09-27 | 富士通コンポーネント株式会社 | 通信装置及び通信システム |
KR101985596B1 (ko) * | 2017-09-18 | 2019-06-03 | 이도훈 | 위치 기반 서비스를 위한 모바일 기기의 gps 제어 시스템 및 그 구동 방법 |
CN107809741A (zh) * | 2017-10-20 | 2018-03-16 | 广东华大互联网股份有限公司 | 一种具有实时监控功能的读写器 |
JP7195975B2 (ja) * | 2019-02-27 | 2022-12-26 | 株式会社日立国際電気 | 無線通信システム及び基地局 |
RU2746201C2 (ru) * | 2019-06-28 | 2021-04-08 | Акционерное общество "Лаборатория Касперского" | Система и способ невербальной активации сервиса на мобильном устройстве |
CN112035583B (zh) * | 2020-08-24 | 2024-08-09 | 浙江商汤科技开发有限公司 | 定位更新方法、装置和系统、移动设备控制方法及装置 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080070593A1 (en) | 2006-06-01 | 2008-03-20 | Altman Samuel H | Secure and private location sharing for location-aware mobile communication devices |
KR101143968B1 (ko) | 2011-05-06 | 2012-05-09 | 팅크웨어(주) | 오픈형 poi에 대한 실시간 검색을 지원하는 시스템 및 방법 |
JP2012231443A (ja) | 2010-12-20 | 2012-11-22 | Harman Internatl Industries Inc | ソーシャルネットワークにユーザの位置情報を自動的に掲示するためのシステムおよび方法 |
Family Cites Families (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2959191B2 (ja) * | 1991-06-20 | 1999-10-06 | ソニー株式会社 | 測位装置 |
JP3588747B2 (ja) * | 1998-04-15 | 2004-11-17 | 日本無線株式会社 | 間欠受信方式 |
US6975941B1 (en) * | 2002-04-24 | 2005-12-13 | Chung Lau | Method and apparatus for intelligent acquisition of position information |
JP2002156438A (ja) * | 2000-11-16 | 2002-05-31 | Matsushita Electric Ind Co Ltd | 衛星受信装置 |
US20040254980A1 (en) * | 2002-06-05 | 2004-12-16 | Masayuki Motegi | Server, mobile communication system, positional information managing method, radio base station, mobile station method for calling in mobile communication system, and mobile communication method |
US20040205151A1 (en) * | 2002-12-19 | 2004-10-14 | Sprigg Stephen A. | Triggering event processing |
JP2004233150A (ja) * | 2003-01-29 | 2004-08-19 | Nec Corp | 位置情報機能付き携帯電話、その測位システム、及びその制御プログラム |
JP4362453B2 (ja) * | 2005-03-02 | 2009-11-11 | Kddi株式会社 | 通信端末および位置監視方法 |
CN100454675C (zh) * | 2005-10-27 | 2009-01-21 | 鸿富锦精密工业(深圳)有限公司 | 电子设备组合装置 |
WO2007099471A1 (en) * | 2006-02-28 | 2007-09-07 | Koninklijke Philips Electronics N.V. | Method and apparatus for locating a portable device |
EP1986456A3 (en) * | 2007-04-26 | 2009-03-04 | Samsung Electronics Co., Ltd. | Providing location- based services in a mobile communication system |
US8467804B2 (en) * | 2007-10-16 | 2013-06-18 | Sony Corporation | Mobile terminals and methods for regulating power-on/off of a GPS positioning circuit |
GB0803931D0 (en) * | 2008-03-03 | 2008-04-09 | Mobile Tracking Ltd | Free tracking |
US8125377B2 (en) * | 2008-11-17 | 2012-02-28 | Andrew Llc | System and method for determining the location of a mobile device |
WO2011038269A1 (en) * | 2009-09-24 | 2011-03-31 | Illume Software, Inc. | System and method for determining sampling intervals for position readings |
US8754789B2 (en) * | 2009-11-24 | 2014-06-17 | Mitel Networks Corporation | Power management system and method for mobile applications using location based services |
US20110215903A1 (en) * | 2010-03-04 | 2011-09-08 | Nokia Corporation | Apparatus and Associated Methods |
JP2012103138A (ja) * | 2010-11-11 | 2012-05-31 | Sony Corp | 位置情報検出装置、通信装置、並びに通信システム |
CN110278523A (zh) * | 2012-06-06 | 2019-09-24 | 脸谱公司 | 用于通信的方法、设备和存储介质 |
-
2014
- 2014-02-05 AU AU2014215033A patent/AU2014215033B2/en not_active Ceased
- 2014-02-05 KR KR1020167023013A patent/KR101875050B1/ko active IP Right Grant
- 2014-02-05 BR BR112015018820A patent/BR112015018820A2/pt not_active Application Discontinuation
- 2014-02-05 CA CA2914586A patent/CA2914586C/en not_active Expired - Fee Related
- 2014-02-05 WO PCT/US2014/014827 patent/WO2014123975A2/en active Application Filing
- 2014-02-05 JP JP2015557016A patent/JP2016513395A/ja active Pending
- 2014-02-05 CA CA2899736A patent/CA2899736C/en not_active Expired - Fee Related
- 2014-02-05 KR KR1020157024232A patent/KR101652425B1/ko active IP Right Grant
- 2014-02-05 MX MX2015010059A patent/MX354324B/es active IP Right Grant
- 2014-02-05 CN CN201480019525.8A patent/CN105122082A/zh active Pending
- 2014-02-05 EP EP14749284.7A patent/EP2954348B1/en active Active
-
2015
- 2015-07-30 IL IL240264A patent/IL240264A/en active IP Right Grant
-
2016
- 2016-01-15 AU AU2016200233A patent/AU2016200233B2/en not_active Ceased
- 2016-06-16 IL IL246288A patent/IL246288B/en active IP Right Grant
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080070593A1 (en) | 2006-06-01 | 2008-03-20 | Altman Samuel H | Secure and private location sharing for location-aware mobile communication devices |
JP2012231443A (ja) | 2010-12-20 | 2012-11-22 | Harman Internatl Industries Inc | ソーシャルネットワークにユーザの位置情報を自動的に掲示するためのシステムおよび方法 |
KR101143968B1 (ko) | 2011-05-06 | 2012-05-09 | 팅크웨어(주) | 오픈형 poi에 대한 실시간 검색을 지원하는 시스템 및 방법 |
Also Published As
Publication number | Publication date |
---|---|
EP2954348A4 (en) | 2016-09-21 |
MX354324B (es) | 2018-02-26 |
BR112015018820A2 (pt) | 2017-07-18 |
MX2015010059A (es) | 2016-06-06 |
CA2914586A1 (en) | 2014-08-14 |
WO2014123975A3 (en) | 2014-10-16 |
CA2899736C (en) | 2016-03-15 |
IL240264A0 (en) | 2015-09-24 |
EP2954348B1 (en) | 2018-01-10 |
CA2914586C (en) | 2018-08-28 |
IL240264A (en) | 2016-07-31 |
AU2014215033A1 (en) | 2015-09-24 |
WO2014123975A2 (en) | 2014-08-14 |
CN105122082A (zh) | 2015-12-02 |
IL246288A0 (en) | 2016-07-31 |
JP2016513395A (ja) | 2016-05-12 |
IL246288B (en) | 2019-03-31 |
AU2016200233B2 (en) | 2018-02-15 |
EP2954348A2 (en) | 2015-12-16 |
AU2014215033B2 (en) | 2015-10-29 |
KR101652425B1 (ko) | 2016-08-30 |
AU2016200233A1 (en) | 2016-02-04 |
CA2899736A1 (en) | 2014-08-14 |
KR20160103178A (ko) | 2016-08-31 |
KR20150109489A (ko) | 2015-10-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9622038B2 (en) | Global-positioning system (GPS) update interval based on sensor data | |
KR101875050B1 (ko) | 위치 추적에 일반적으로 관련되는 방법, 하나 이상의 컴퓨터-판독가능한 비-일시적 저장 매체 및 장치 | |
JP6280278B2 (ja) | 一般に位置追跡に関連する方法、1つまたは複数の非一時的コンピュータ可読記憶媒体およびデバイス | |
US9179313B2 (en) | Mobile-device-based trust computing | |
US8875253B2 (en) | Trust metrics on shared computers | |
US9807193B2 (en) | Dynamic new user experience (NUX) | |
US9992640B2 (en) | Short-message service verification of account information |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A107 | Divisional application of patent | ||
E701 | Decision to grant or registration of patent right |