KR20150049427A - 전자장치로 위치 기반 서비스를 제공하기 위한 방법 및 시스템 - Google Patents

전자장치로 위치 기반 서비스를 제공하기 위한 방법 및 시스템 Download PDF

Info

Publication number
KR20150049427A
KR20150049427A KR1020130130005A KR20130130005A KR20150049427A KR 20150049427 A KR20150049427 A KR 20150049427A KR 1020130130005 A KR1020130130005 A KR 1020130130005A KR 20130130005 A KR20130130005 A KR 20130130005A KR 20150049427 A KR20150049427 A KR 20150049427A
Authority
KR
South Korea
Prior art keywords
interest
electronic device
area
information
identifier
Prior art date
Application number
KR1020130130005A
Other languages
English (en)
Other versions
KR102160975B1 (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 KR1020130130005A priority Critical patent/KR102160975B1/ko
Priority to US14/529,071 priority patent/US9816833B2/en
Publication of KR20150049427A publication Critical patent/KR20150049427A/ko
Application granted granted Critical
Publication of KR102160975B1 publication Critical patent/KR102160975B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/02Services making use of location information
    • H04W4/021Services related to particular areas, e.g. point of interest [POI] services, venue services or geofences
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/26Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
    • G01C21/34Route searching; Route guidance
    • G01C21/36Input/output arrangements for on-board computers
    • G01C21/3679Retrieval, searching and output of POI information, e.g. hotels, restaurants, shops, filling stations, parking facilities
    • G01C21/3682Retrieval, searching and output of POI information, e.g. hotels, restaurants, shops, filling stations, parking facilities output of POI information on a road map

Landscapes

  • Engineering & Computer Science (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • Automation & Control Theory (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Telephone Function (AREA)

Abstract

본 발명은 전자장치로 위치 기반의 서비스를 제공하기 위한 방법 및 그 시스템에 관한 것이다.
본 발명의 일 실시예에 따른 방법은, 전자장치로 위치 기반 서비스를 제공하기 위한 방법으로, 상기 전자장치는 미리 설정된 조건이 충족될 시 관심지역 관리서버로 획득된 위치 정보를 제공하는 단계; 상기 관심지역 관리서버는 위치 정보 수신 시 미리 등록된 관심지역의 정보와 매칭되는가를 판별하여 미리 등록된 관심지역의 정보와 매칭될 시 상기 전자장치로 관심지역 식별정보를 제공하는 단계; 및 상기 전자장치는 상기 관심지역 관리서버로부터 관심지역 식별정보를 수신할 시 미리 매칭된 동작을 수행하는 단계를 포함할 수 있다.

Description

전자장치로 위치 기반 서비스를 제공하기 위한 방법 및 시스템{METHOD AND SYSTEM PROVIDING OF LOCATION BASED SERVICE TO A ELECTRONIC DEVICE}
본 발명은 전자장치로 위치 기반의 서비스를 제공하기 위한 방법 및 그 시스템에 관한 것이다.
휴대가 가능한 모바일 전자장치는 급속한 기술의 발전에 힘입어 최근 강력해진 컴퓨팅 파워를 가지게 되었다. 또한 전자장치는 보다 복잡하고 다양한 연산을 수행할 수 있을 뿐 아니라 다양한 센서를 통해 사용자에게 보다 많은 기능을 지원할 수 있는 형태로 발전하고 있다.
이러한 모바일 전자장치는 기존에 전자장치의 제조업체에서 제공하는 응용 프로그램(어플리케이션)만을 사용하던 형태에서 벗어나 다른 업체가 제작한 응용 프로그램(어플리케이션)을 다운로드하여 사용하거나 또는 사용자가 직접 제작한 형태의 응용 프로그램(어플리케이션)을 전자장치에 설치하여 사용할 수 있게 되었다.
이처럼 다양한 응용 프로그램들 중 하나로 사용자의 위치 기반 서비스도 등장하고 있다. 위치 기반 서비스들은 네비게이션이나 서로 다른 휴대 전자장치간 위치 추적 등 다양한 범주에서 사용되고 있다.
또한 위치 기반 서비스들에서 위치를 검사하는 방법의 대표적인 예는 범용 위치 시스템(Global Positioning System, GPS)이 있으며, 그 밖에 셀룰러 네트워크(Cellular network)의 셀 식별자(Cell-ID) 또는 와이파이 네트워크(Wifi network)의 식별자(Identifier)를 이용하여 위치를 검사하는 방법이 존재하고 있다.
전자장치에서 위치 기반 서비스(Location Based Service, LBS)를 제공하기 위한 위치 측량의 기준 방법들은 일반적으로 범용(Public)의 인프라-스트럭쳐(Infra-structure) 형태의 위치 측량 방법들을 사용하고 있다.
이처럼 범용의 인프라-스트럭쳐 형태의 방법으로 위치를 측량하고, 이를 이용하여 서비스를 제공하는 방법은 응용 프로그램들을 사용함에 있어 능동적으로 서비스를 제공할 수 없다는 문제가 있다. 또한 사용자의 개인적인(private) 위치 정보 또는 이동성을 제공하는(movable) 관심 영역(Point of Interest, POI)을 지정하여 사용하고자 하는 시도를 충족시키지 못하는 문제가 있다.
따라서 본 발명의 다양한 실시예에서는 전자장치에서 위치 기반 서비스를 제공함에 있어, 개인적인 위치 정보 또는 이동성을 제공하는 관심 영역(POI)을 지정할 수 있는 방법 및 시스템을 제공한다.
본 발명의 일 실시예에 따른 방법은, 전자장치로 위치 기반 서비스를 제공하기 위한 방법으로, 상기 전자장치는 미리 설정된 조건이 충족될 시 관심지역 관리서버로 획득된 위치 정보를 제공하는 단계; 상기 관심지역 관리서버는 위치 정보 수신 시 미리 등록된 관심지역의 정보와 매칭되는가를 판별하여 미리 등록된 관심지역의 정보와 매칭될 시 상기 전자장치로 관심지역 식별정보를 제공하는 단계; 및 상기 전자장치는 상기 관심지역 관리서버로부터 관심지역 식별정보를 수신할 시 미리 매칭된 동작을 수행하는 단계를 포함할 수 있다.
본 발명의 일 실시예에 따른 시스템은, 전자장치로 위치 기반 서비스를 제공하기 위한 시스템으로, 위치 정보를 획득하고, 관심지역 관리서버와 통신하기 위한 통신 모듈; 관심지역 정보를 저장하기 위한 메모리; 및 미리 설정된 조건이 충족될 시 상기 관심지역 관리서버로 획득된 위치 정보를 상기 통신 모듈을 통해 제공하도록 제어하고, 상기 관심지역 관리서버로부터 관심지역 식별정보를 수신할 시 미리 매칭된 동작을 수행하도록 제어하는 프로세서를 포함하는 전자장치; 및
상기 전자장치와 통신이 가능한 네트워크 통신부; 상기 관심지역 데이터를 저장하기 위한 관심지역 데이터베이스; 및 상기 네트워크 통신부를 통해 상기 전자장치의 위치 정보 수신 시 상기 관심지역 데이터베이스에 미리 등록된 관심지역 정보와 매칭되는가를 판별하여 미리 등록된 관심지역의 정보와 매칭될 시 상기 네트워크 통신부를 통해 상기 전자장치로 관심지역 식별정보를 제공하도록 제어하는 서버 제어부;를 포함하는 관심지역 관리서버;를 포함하여 구성할 수 있다.
본 발명의 다양한 실시예에 따른 전자장치는 위치 기반 서비스를 제공함에 있어, 개인적인 위치 정보 또는 이동성을 제공하는 관심 영역(POI)을 지정할 수 있다.
도 1은 본 발명의 실시예에 따른 전자장치에서 다양한 방법으로 위치 기반 서비스를 제공하기 위한 개념도,
도 2는 본 발명의 실시예에 따른 전자장치에 대한 블록도,
도 3은 본 발명의 실시예에 따른 전자장치의 하드웨어 200의 블록도,
도 4는 본 발명의 일 실시예에 따른 전자장치에 탑재될 수 있는 프로그래밍 모듈 300의 블록도,
도 5는 본 발명의 일 실시예에 따른 관심지역 관리서버 50의 블록 구성도
도 6은 본 발명의 실시예에 따른 전자장치에서 관심지역 컨트롤러가 활성화된 상태에서의 제어 흐름도,
도 7a 내지 도 7c는 본 발명의 일 실시에에 따라 관심지역을 등록하는 경우 디스플레이 모듈에 표시되는 사용자 인터페이스의 일 예시도,
도 8은 본 발명의 일 실시예에 따라 관심지역 관리서버를 두는 경우 전자장치가 관심지역의 등록 및 관심지역 식별 정보를 수신하는 경우의 신호 흐름도.
이하, 첨부된 도면들을 참조하여 다양한 실시예들을 상세히 설명한다. 이때, 첨부된 도면들에서 동일한 구성 요소는 가능한 동일한 부호로 나타내고 있음에 유의해야 한다. 또한 본 발명의 요지를 흐리게 할 수 있는 공지 기능 및 구성에 대한 상세한 설명은 생략할 것이다. 하기의 설명에서는 본 발명의 다양한 실시 예들에 따른 동작을 이해하는데 필요한 부분만이 설명되며, 그 이외 부분의 설명은 본 발명의 요지를 흩트리지 않도록 생략될 것이라는 것을 유의하여야 한다.
본 발명에서 가운데 사용될 수 있는"포함한다", "포함할 수 있다" 등의 표현은 본 발명에 개시된 해당 기능, 동작, 구성요소 등의 존재를 가리키며, 추가적인 하나 이상의 기능, 동작, 구성요소 등을 제한하지 않는다. 또한, 본 발명에서, "포함하다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
또한 본 발명에서 "및/또는" 등의 표현은 함께 나열된 단어들의 어떠한, 그리고 모든 조합을 포함한다. 예를 들어, A 및/또는 B는, A를 포함할 수도, B를 포함할 수도, 또는 A 와 B 모두를 포함할 수도 있다.
또한 본 발명에서 "제1", "제2", "첫째", "둘째" 등의 표현들이 본 발명의 다양한 구성요소들을 수식할 수 있지만, 해당 구성요소들을 한정하지 않는다. 예를 들어, 표현들은 해당 구성요소들의 순서 및/또는 중요도 등을 한정하지 않는다. 표현들은 한 구성요소를 다른 구성요소와 구분 짓기 위해 사용될 수 있다. 예를 들어, 제1사용자 기기와 제2사용자 기기는 모두 사용자 기기이며, 서로 다른 사용자 기기를 나타낸다. 예를 들어, 본 개시의 권리 범위를 벗어나지 않으면서 제1구성요소는 제2구성요소로 명명될 수 있고, 유사하게 제2구성요소도 제1구성요소로 명명될 수 있다.
어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해될 수 있어야 할 것이다. 본 발명에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다.
본 발명에 따른 전자장치는, 통신 기능이 포함된 장치일 수 있다. 예를 들면, 스마트 폰(smartphone), 태블릿 PC(tablet personal computer), 이동전화기(mobile phone), 화상전화기, 전자북 리더기(e-book reader), 데스크탑 PC(desktop personal computer), 랩탑 PC(laptop personal computer), 넷북 컴퓨터(netbook computer), PDA(personal digital assistant), PMP(portable multimedia player), MP3 플레이어, 모바일 의료기기, 전자 팔찌, 전자 목걸이, 전자 앱세서리(appcessory), 카메라(camera), 웨어러블 장치(wearable device), 전자 시계(electronic clock), 손목 시계(wrist watch), 가전 제품(home appliance)(예: 냉장고, 에어컨, 청소기, 오븐, 전자레인지, 세탁기, 공기 청정기 등), 인공 지능 로봇, TV, DVD(digital video disk) 플레이어, 오디오, 각종 의료기기(예: MRA(magnetic resonance angiography), MRI(magnetic resonance imaging), CT(computed tomography), 촬영기, 초음파기 등), 네비게이션(navigation) 장치, GPS 수신기(global positioning system receiver), EDR(event data recorder), FDR(flight data recorder), 셋톱 박스(set-top box), TV 박스(예를 들면, 삼성 HomeSyncTM, 애플TVTM, 또는 구글 TVTM), 전자 사전, 자동차 인포테인먼트(infotainment) 장치, 선박용 전자 장비(electronic equipment for ship, 예를 들면, 선박용 항법 장치, 자이로콤파스 등), 항공 전자기기(avionics), 보안 기기, 전자 의복, 전자 키, 캠코더(camcorder), 게임 콘솔(game consoles), HMD(head-mounted display), 평판표시장치(flat panel display device), 전자 액자, 전자 앨범, 통신 기능을 포함한 가구(furniture) 또는 건물/구조물의 일부, 전자 보드(electronic board), 전자 사인 입력장치(electronic signature receiving device) 또는 프로젝터(projector) 등의 다양한 장치들 중 하나 또는 그 이상의 조합일 수 있다. 본 발명에 따른 전자장치는 전술한 기기들에 한정되지 않음은 당업자에게 자명하다.
도 1은 본 발명의 실시예에 따른 전자장치에서 다양한 방법으로 위치 기반 서비스를 제공하기 위한 개념도이다.
도 1을 참조하면, 사용자에게 위치 기반 서비스를 제공하기 위한 전자장치 60, 전자장치로 위치 정보를 제공하기 위한 이동통신 네트워크의 기지국 10, 전자장치 10에서 위치 정보를 획득할 수 있도록 신호를 제공하는 인공위성 30, 전자장치로 위치 정보를 제공하기 위한 또 다른 형태의 무선 통신 장비인 액세스 포인트 20을 포함한다. 또한 전자장치 60은 소정의 네트워크 40을 통해 관심지역(Point of Interest, POI)을 관리하는 관심지역 관리서버 50과 통신할 수 있다.
전자장치 60은 휴대가 가능한 또는 이동이 가능한 전자장치가 될 수 있으며, 무선 통신이 가능한 전자장치이다. 전자장치 60에서 수행할 수 있는 무선 통신 방식을 예를 들면, 2G, 3G, LTE, LTE-A 등의 이동통신 네트워크를 통해 음성 또는/및 데이터 통신이 가능하다. 전자장치 60은 이처럼 이동통신 네트워크의 기지국 10을 통해 통신을 수행할 수 있다. 본 발명에 따른 위치 기반 서비스를 제공하기 위해 이동통신 네트워크의 기지국 10은 전자장치 60으로 기지국 10의 위치 정보를 제공할 수 있다. 기지국 10이 제공하는 위치 정보는 예컨대, 셀 식별자(Cell ID) 또는 기지국 식별자 또는 기지국의 섹터 식별자 등이 될 수 있다. 전자장치 60는 기지국 10으로부터 제공되는 위치 정보를 이용하여 위치 기반 서비스를 사용자에게 제공할 수 있다.
또한 전자장치 60은 이동통신 네트워크 이외의 다른 무선 통신 방식 예컨대, 와이파이(WiFi) 방식으로 데이터를 송/수신할 수 있다. 전자장치 60은 와이파이 방식의 액세스 포인트 20과 무선 통신이 가능하며, 액세스 포인트 20으로부터 위치 정보를 제공받을 수 있다. 전자장치 60은 액세스 포인트 20으로부터 제공받은 위치 정보를 토대로 위치 기반 서비스를 사용자에게 제공할 수 있다.
또한 전자장치 60은 인공위성 30으로부터 수신된 신호를 이용하여 전자장치 60의 위치를 계산할 수 있다. 인공위성 30은 도면에는 하나의 인공위성만을 도시하였으나, 실제로는 셋 이상의 인공위성이 될 수 있다. 전자장치 60은 인공위성 30으로부터 수신된 신호를 이용하여 위치를 계산하고, 사용자에게 위치 기반 서비스를 제공할 수 있다.
또한 전자장치 60은 위치 기반 서비스를 독자적으로 제공할 수도 있고, 소정의 네트워크 40을 통해 관심지역 관리서버 50과 통신을 할 수 있다. 이처럼 관심지역 관리서버 50과 통신을 수행하는 경우 관심지역 관리서버 50은 전자장치 60으로부터 수신된 신호 또는 데이터를 기반으로 하여 관심지역(POI)의 등록 및 관심지역(POI)에 진입 여부를 판별하도록 할 수 있다.
관심지역 관리서버 50은 개인 클라우드와 같은 개인적인(private) 서버일 수도 있고, 특정한 사업자 또는 공중망의 서버일 수도 있다. 관심지역 관리서버 50은 전자장치로 60으부터 관심지역(POI) 등록 요구 시 해당하는 전자장치 60에 대응한 관심지역 정보를 데이터베이스에 저장할 수 있다. 또한 관심지역 관리서버 50은 전자장치 60으로부터 주기적 또는 간헐적으로 수신되는 위치 정보를 바탕으로 관심지역(POI)에 진입했는지 여부를 판별할 수 있으며, 관심지역(POI)에 진입한 것으로 판별되는 경우 관심지역 관리서버 50은 전자장치 60으로 관심지역(POI)에 진입하였음을 소정의 네트워크 40을 통해 알릴 수 있다. 이처럼 관심지역(POI)에 진입하였음을 알리는 신호 또는 데이터를 수신하면, 전자장치 60은 필요한 또는 미리 설정된 동작 예컨대, 알람 또는 팝업 메시지 제공 또는 인터넷 접속 등의 다양한 서비스를 사용에게 제공할 수 있다. 이에 대한 보다 상세한 내용은 후술되는 도면들을 참조하여 더 살펴보기로 한다.
도 2는 본 발명의 실시예에 따른 전자장치에 대한 블록도를 도시한다.
도 2를 참조하면, 전자장치 100은 버스 110, 프로세서 120, 메모리 130, 사용자 입력 모듈 140, 디스플레이 모듈 150, 또는 통신 모듈 160을 포함할 수 있다.
버스 110은, 전술한 구성요소들을 서로 연결하고, 전술한 구성요소들 간의 통신(예: 제어 메시지)을 전달하는 회로일 수 있다.
프로세서 120은, 예를 들면, 버스 110을 통해 전술한 다른 구성요소들(예: 메모리 130, 사용자 입력 모듈 140, 디스플레이 모듈 150, 통신 모듈 160 등)로부터 명령을 수신하여, 수신된 명령을 해독하고, 해독된 명령에 따른 연산이나 데이터 처리를 실행할 수 있다.
메모리 130은, 프로세서 120 또는 다른 구성요소들(예: 사용자 입력 모듈 140, 디스플레이 모듈 150, 통신 모듈 160 등)로부터 수신되거나 프로세서 120 또는 다른 구성요소들에 의해 생성된 명령 또는 데이터를 저장할 수 있다. 메모리 130은, 예를 들면, 커널 131, 미들웨어 132, 어플리케이션 프로그래밍 인터페이스(API: application programming interface) 133 또는 어플리케이션 134 등의 프로그래밍 모듈들을 포함할 수 있다. 전술한 각각의 프로그래밍 모듈들은 소프트웨어, 펌웨어, 하드웨어 또는 이들 중 적어도 둘 이상의 조합으로 구성될 수 있다.
커널 131은 나머지 다른 프로그래밍 모듈들, 예를 들면, 미들웨어 132, API 133 또는 어플리케이션 134에 구현된 동작 또는 기능을 실행하는데 사용되는 시스템 리소스들(예: 버스 110, 프로세서 120 또는 메모리 130 등)을 제어 또는 관리할 수 있다.또한, 커널 131은 미들웨어 132, API 133 또는 어플리케이션 134에서 전자장치 100의 개별 구성요소에 접근하여 제어 또는 관리할 수 있는 인터페이스를 제공할 수 있다.
미들웨어 132는 API 133 또는 어플리케이션 134가 커널 131과 통신하여 데이터를 주고받을 수 있도록 중개 역할을 수행할 수 있다. 또한, 미들웨어 132는 (다수의) 어플리케이션들 134로부터 수신된 작업 요청들과 관련하여, 예를 들면, (다수의) 어플리케이션들 134들 중 적어도 하나의 어플리케이션에 전자장치 100의 시스템 리소스(예: 버스 110, 프로세서 120 또는 메모리 130 등)를 사용할 수 있는 우선순위를 배정하는 등의 방법을 이용하여 작업 요청에 대한 로드 밸런싱을 수행할 수 있다.
API 133은 어플리케이션 134가 커널 131 또는 미들웨어 132에서 제공하는 기능을 제어할 수 있는 인터페이스로, 예를 들면, 파일 제어, 창 제어, 화상 처리 또는 문자 제어 등을 위한 적어도 하나의 인터페이스 또는 함수를 포함할 수 있다.
사용자 입력 모듈 140은, 예를 들면, 사용자로부터 명령 또는 데이터를 입력받아 버스 110을 통해 프로세서 120 또는 메모리 130에 전달할 수 있다. 디스플레이 모듈 150은 사용자에게 화상, 영상 또는 데이터 등을 표시할 수 있다.
통신 모듈 160은 다른 전자장치 102와 전자장치 100간의 통신을 연결할 수 있다. 통신 모듈 160은 소정의 근거리 통신 프로토콜(예: Wifi(wireless fidelity), BT(Bluetooth), NFC(near field communication) 또는 소정의 네트워크 통신(예: Internet, LAN(local area network), WAN(wire area network), telecommunication network, cellular network, satellite network 또는 POTS(plain old telephone service) 등) 162를 지원할 수 있다. 전자장치 102, 104 각각은 전자장치 100과 동일한(예: 같은 타입의) 장치이거나 또는 다른(예: 다른 타입의) 장치일 수 있다.
도 3은 본 발명의 실시예에 따른 전자장치의 하드웨어 200의 블록도이다.
하드웨어 200은, 예를 들면, 도 1에 도시한 전자장치 60 또는 도 2에 도시된 전자장치 100일 수 있다. 도 3을 참조하면, 하드웨어 200은 하나 이상의 프로세서 210, SIM(subscriber identification module) 카드 214, 메모리 220, 통신 모듈 230, 센서 모듈 240, 사용자 입력 모듈 250, 디스플레이 모듈 260, 인터페이스 270, 오디오 코덱 280, 카메라 모듈 291, 전력관리 모듈 295, 배터리 296, 인디케이터 297 또는 모터 298을 포함할 수 있다.
프로세서 210(예: 프로세서 120)은 하나 이상의 어플리케이션 프로세서(AP: application processor) 211 또는 하나 이상의 커뮤니케이션 프로세서(CP: communication processor) 213을 포함할 수 있다. 프로세서 210은, 예를 들면, 도 2에 도시된 프로세서 120일 수 있다. 도 3에서는 AP 211 및 CP 213이 프로세서 210 내에 포함된 것으로 도시되었으나, AP 211과 CP 213은 서로 다른 IC 패키지들 내에 각각 포함될 수 있다. 다른 한 실시예에서는 AP 211 및 CP 213은 하나의 IC 패키지 내에 포함될 수 있다.
AP 211은 운영체제 또는 응용 프로그램을 구동하여 AP 211에 연결된 다수의 하드웨어 또는 소프트웨어 구성요소들을 제어하고, 멀티미디어 데이터를 포함한 각종 데이터 처리 및 연산을 수행할 수 있다. AP 211은, 예를 들면, SoC(system on chip)로 구현될 수 있다. 일 실시예에 따르면, 프로세서 210은 GPU(graphic processing unit, 미도시)를 더 포함할 수 있다.
CP 213은 하드웨어 200을 포함하는 전자장치(예: 전자장치 60, 100)와 네트워크로 연결된 다른 전자장치들 간의 통신에서 데이터 링크를 관리하고, 통신 프로토콜을 변환하는 기능을 수행할 수 있다. CP 213은, 예를 들면, SoC로 구현될 수 있다. 일 실시예에 따르면, CP 213은 멀티미디어 제어 기능의 적어도 일부를 수행할 수 있다. CP 213은, 예를 들면, 가입자 식별 모듈(예: SIM 카드 214)을 이용하여 통신 네트워크 내에서 단말의 구별 및 인증을 수행할 수 있다. 또한, CP 213은 사용자에게 음성 통화, 영상 통화, 문자 메시지 또는 패킷 데이터(packet data) 등의 서비스들을 제공할 수 있다.
또한, CP 213은 통신 모듈 230의 데이터 송수신을 제어할 수 있다. 도 3에서는, CP 213, 전력관리 모듈 295 또는 메모리 220 등의 구성요소들이 AP 211과 별개의 구성요소로 도시되어 있으나, 일 실시예에 따르면, AP 211이 전술한 구성요소들의 적어도 일부(예: CP 213)를 포함하도록 구현될 수 있다.
일 실시예에 따르면, AP 211 또는 CP 213은 각각에 연결된 비휘발성 메모리 또는 다른 구성요소 중 적어도 하나로부터 수신한 명령 또는 데이터를 휘발성 메모리에 로드(load)하여 처리할 수 있다. 또한, AP 211 또는 CP 213은 다른 구성요소 중 적어도 하나로부터 수신하거나 다른 구성요소 중 적어도 하나에 의해 생성된 데이터를 비휘발성 메모리에 저장(store)할 수 있다.
SIM 카드 214는 가입자 식별 모듈을 구현한 카드일 수 있으며, 전자장치의 특정 위치에 형성된 슬롯에 삽입될 수 있다. SIM 카드 214는 고유한 식별 정보(예: ICCID(integrated circuit card identifier)) 또는 가입자 정보(예: IMSI(international mobile subscriber identity))를 포함할 수 있다.
메모리 220은 내장 메모리 222 또는 외장 메모리 224를 포함할 수 있다. 메모리 220은, 예를 들면, 도 2에 도시된 메모리 130일 수 있다. 내장 메모리 222는, 예를 들면, 휘발성 메모리(예를 들면, DRAM(dynamic RAM), SRAM(static RAM), SDRAM(synchronous dynamic RAM) 등) 또는 비휘발성 메모리(non-volatile Memory, 예를 들면, OTPROM(one time programmable ROM), PROM(programmable ROM), EPROM(erasable and programmable ROM), EEPROM(electrically erasable and programmable ROM), mask ROM, flash ROM, NAND flash memory, NOR flash memory 등) 중 적어도 하나를 포함할 수 있다. 일 실시예에 따르면, 내장 메모리 222는 Solid State Drive(SSD)의 형태를 취할 수도 있다. 외장 메모리 224는 flash drive, 예를 들면, CF(compact flash), SD(secure digital), Micro-SD(micro secure digital), Mini-SD(mini secure digital), xD(extreme digital) 또는 MemoryStick 등을 더 포함할 수 있다.
통신 모듈 230은 무선 통신 모듈 231 또는 RF 모듈 234를 포함할 수 있다. 통신 모듈 230은, 예를 들면, 도 2에 도시된 통신 모듈 160일 수 있다. 무선 통신 모듈 231은, 예를 들면, WiFi 233, BT(bluetooth) 235, GPS 237 또는 NFC(near field communication) 239를 포함할 수 있다. 예를 들면, 무선 통신 모듈 231은 무선 주파수를 이용하여 무선 통신 기능을 제공할 수 있다. 추가적으로 또는 대체적으로, 무선 통신 모듈 231은 하드웨어 200을 네트워크(예: Internet, LAN(local area network), WAN(wire area network), telecommunication network, cellular network, satellite network 또는 POTS(plain old telephone service) 등)와 연결시키기 위한 네트워크 인터페이스(예: LAN card) 또는 모뎀 등을 포함할 수 있다.
RF 모듈 234는 데이터의 송수신, 예를 들면, RF 신호 또는 호출된 전자신호의 송수신을 담당할 수 있다. RF 모듈 234는, 도시되지는 않았으나, 예를 들면, 트랜시버(transceiver), PAM(power amp module), 주파수 필터(frequency filter) 또는 LNA(low noise amplifier) 등을 포함할 수 있다. 또한, RF 모듈234는 무선통신에서 자유공간상의 전자파를 송수신하기 위한 부품, 예를 들면, 도체 또는 도선 등을 더 포함할 수 있다.
센서 모듈 240은, 예를 들면, 제스처 센서 240A, 자이로 센서 240B, 기압 센서 240C, 마그네틱 센서 240D, 가속도 센서 240E, 그립 센서 240F, 근접 센서 240G, RGB(red, green, blue) 센서 240H, 생체 센서 240I, 온/습도 센서 240J, 조도 센서 240K 또는 UV(ultra violet) 센서 240M 중의 적어도 하나를 포함할 수 있다. 센서 모듈 240은 물리량을 계측하거나 전자장치의 작동 상태를 감지하여, 계측 또는 감지된 정보를 전기 신호로 변환할 수 있다. 추가적으로/대체적으로, 센서 모듈 240은, 예를 들면, 후각 센서(E-nose sensor, 미도시), EMG 센서(electromyography sensor, 미도시), EEG 센서(electroencephalogram sensor, 미도시), ECG 센서(electrocardiogram sensor, 미도시) 또는 지문 센서 등을 포함할 수 있다. 센서 모듈 240은 그 안에 속한 적어도 하나 이상의 센서들을 제어하기 위한 제어회로를 더 포함할 수 있다.
사용자 입력 모듈 250은 터치 패널(touch panel) 252, (디지털) 펜 센서(pen sensor) 254, 키(key) 256 또는 초음파 입력 장치 258을 포함할 수 있다. 사용자 입력 모듈 250은, 예를 들면, 도 2에 도시된 사용자 입력 모듈 140일수 있다. 터치 패널 252는, 예를 들면, 정전식, 감압식, 적외선 방식 또는 초음파 방식 중 적어도 하나의 방식으로 터치 입력을 인식할 수 있다. 또한, 터치 패널 252는 컨트롤러(미도시)를 더 포함할 수도 있다. 정전식의 경우, 직접 터치뿐만 아니라 근접 인식도 가능하다. 터치 패널 252는 택타일레이어(tactile layer)를 더 포함할 수도 있다. 이 경우, 터치 패널 252는 사용자에게 촉각 반응을 제공할 수 있다.
(디지털) 펜 센서 254는, 예를 들면, 사용자의 터치 입력을 받는 것과 동일 또는 유사한 방법 또는 별도의 인식용 쉬트(sheet)를 이용하여 구현될 수 있다. 키 256로서, 예를 들면, 키패드 또는 터치 키가 이용될 수 있다. 초음파 입력 장치 258은 초음파 신호를 발생하는 펜을 통해, 단말에서 마이크(예: 마이크 288)로 음파를 감지하여 데이터를 확인할 수 있는 장치로서, 무선 인식이 가능하다. 일 실시예에 따르면, 하드웨어 200은 통신 모듈 230을 이용하여 이와 연결된 외부 장치(예: 네트워크, 컴퓨터 또는 서버)로부터 사용자 입력을 수신할 수도 있다.
디스플레이 모듈 260은 패널 262 또는 홀로그램 264를 포함할 수 있다. 디스플레이 모듈 260은, 예를 들면, 도 2에 도시된 디스플레이 모듈 150일 수 있다. 패널 262는, 예를 들면, LCD(liquid-crystal display) 또는 AM-OLED(active-matrix organic light-emitting diode) 등일 수 있다. 패널262는, 예를 들면, 유연하게(flexible), 투명하게(transparent) 또는 착용할 수 있게(wearable) 구현될 수 있다. 패널 262는 터치 패널 252와 하나의 모듈로 구성될 수도 있다. 홀로그램 264는 빛의 간섭을 이용하여 입체 영상을 허공에 보여줄 수 있다. 일 실시예에 따르면, 디스플레이 모듈 260은 패널 262 또는 홀로그램 264를 제어하기 위한 제어회로를 더 포함할 수 있다.
인터페이스 270은, 예를 들면, HDMI(high-definition multimedia interface) 272, USB(universal serial bus) 274, 프로젝터 276 또는 D-sub(D-subminiature) 278을 포함할 수 있다. 추가적으로 또는 대체적으로, 인터페이스 270은, 예를 들면, SD(secure Digital)/MMC(multi-media card)(미도시) 또는 IrDA(infrared data association, 미도시)를 포함할 수 있다.
오디오 코덱 280은 음성과 전기신호를 쌍방향으로 변환시킬 수 있다. 오디오 코덱 280은, 예를 들면, 스피커 282, 리시버 284, 이어폰 286 또는 마이크 288 등을 통해 입력 또는 출력되는 음성 정보를 변환시킬 수 있다.
카메라 모듈 291은 화상 및 동영상을 촬영할 수 있는 장치로서, 일 실시예에 따르면, 하나 이상의 이미지 센서(예: 전면 렌즈 또는 후면 렌즈), ISP(image signal processor, 미도시) 또는 플래쉬 LED(flash LED, 미도시)를 포함할 수 있다.
전력관리 모듈 295는 하드웨어 200의 전력을 관리할 수 있다. 도시하지는 않았으나, 전력관리 모듈 295는, 예를 들면, PMIC(power management integrated circuit), 충전 IC(charger integrated circuit) 또는 배터리 게이지(battery fuel gauge)를 포함할 수 있다.
PMIC는, 예를 들면, 집적회로 또는 SoC 반도체 내에 탑재될 수 있다. 충전 방식은 유선과 무선으로 구분될 수 있다. 충전 IC는 배터리를 충전시킬 수 있으며, 충전기로부터의 과전압 또는 과전류 유입을 방지할 수 있다. 일 실시예에 따르면, 충전 IC는 유선 충전 방식 또는 무선 충전 방식 중 적어도 하나를 위한 충전 IC를 포함할 수 있다. 무선 충전 방식으로는, 예를 들면, 자기공명 방식, 자기유도 방식 또는 전자기파 방식 등이 있으며, 무선 충전을 위한 부가적인 회로, 예를 들면, 코일 루프, 공진 회로, 정류기 등의 회로가 추가될 수 있다.
배터리 게이지는, 예를 들면, 배터리 296의 잔량, 충전 중 전압, 전류 또는 온도를 측정할 수 있다. 배터리 296은 전기를 생성하여 전원을 공급할 수 있고, 예를 들면, 충전식 전지(rechargeable battery)일 수 있다.
인디케이터 297은 하드웨어 200 혹은 그 일부(예: AP 211)의 특정 상태, 예를 들면, 부팅 상태, 메시지 상태 또는 충전 상태 등을 표시할 수 있다. 모터 298은 전기적 신호를 기계적 진동으로 변환할 수 있다. MCU 299는, 센서 모듈 240을 제어할 수 있다.
도시되지는 않았으나, 하드웨어 200은 모바일 TV 지원을 위한 처리 장치(예: GPU)를 포함할 수 있다. 모바일 TV 지원을 위한 처리 장치는, 예를 들면, DMB(digital multimedia broadcasting), DVB(digital video broadcasting) 또는 미디어플로우(media flow) 등의 규격에 따른 미디어 데이터를 처리할 수 있다.본 발명에 따른 하드웨어의 전술한 구성요소들 각각은 하나 또는 그 이상의 부품(component)으로 구성될 수 있으며, 해당 구성 요소의 명칭은 전자장치의 종류에 따라서 달라질 수 있다. 본 발명에 따른 하드웨어는 전술한 구성요소 중 적어도 하나를 포함하여 구성될 수 있으며, 일부 구성요소가 생략되거나 또는 추가적인 다른 구성요소를 더 포함할 수 있다. 또한, 본 발명에 따른 하드웨어의 구성 요소들 중 일부가 결합되어 하나의 개체(entity)로 구성됨으로써, 결합되기 이전의 해당 구성 요소들의 기능을 동일하게 수행할 수 있다.
본 발명에서 사용된 용어"모듈"은, 예를 들어, 하드웨어, 소프트웨어 또는 펌웨어(firmware) 중 하나 또는 둘 이상의 조합을 포함하는 단위(unit)를 의미할 수 있다. "모듈"은 예를 들어, 유닛(unit), 로직(logic), 논리 블록(logical block), 부품(component) 또는 회로(circuit) 등의 용어와 바꾸어 사용(interchangeably use)될 수 있다. "모듈"은, 일체로 구성된 부품의 최소 단위 또는 그 일부가 될 수 있다. "모듈"은 하나 또는 그 이상의 기능을 수행하는 최소 단위 또는 그 일부가 될 수도 있다. "모듈"은 기계적으로 또는 전자적으로 구현될 수 있다. 예를 들면, 본 발명에 따른 "모듈"은, 알려졌거나 앞으로 개발될, 어떤 동작들을 수행하는 ASIC(application-specific integrated circuit) 칩, FPGAs(field-programmable gate arrays) 또는 프로그램 가능 논리 장치(programmable-logic device) 중 적어도 하나를 포함할 수 있다.
도 4는 본 발명의 일 실시예에 따른 전자장치에 탑재될 수 있는 프로그래밍 모듈 300의 블록도이다.
프로그래밍 모듈 300은 도 1에 도시한 전자장치 60 또는 도 2에 도시한 전자장치 100(예: 메모리 130)에 포함(예: 저장)될 수 있다. 프로그래밍 모듈 300의 적어도 일부는 소프트웨어, 펌웨어, 하드웨어 또는 이들 중 적어도 둘 이상의 조합으로 구성될 수 있다. 프로그래밍 모듈 300은 하드웨어(예: 하드웨어 200)에 구현되어 전자장치(예: 전자장치 60, 100)에 관련된 자원을 제어하는 운영체제(OS: operation system) 또는 운영체제 상에서 구동되는 다양한 어플리케이션(예: 어플리케이션 370)을 포함할 수 있다. 예를 들면, 운영체제는 안드로이드(Android), iOS, 윈도우즈(Windows), 심비안(Symbian), 타이젠(Tizen) 또는 바다(Bada) 등이 될 수 있다. 도 4를 참조하면, 프로그래밍 모듈 300은 커널 310, 미들웨어 330, API(application programming interface) 360 또는 어플리케이션 370을 포함할 수 있다.
커널 310(예: 커널 131)은 시스템 리소스 매니저 311 또는 디바이스 드라이버 312를 포함할 수 있다. 시스템 리소스 매니저 311은, 예를 들면, 프로세스관리부(미도시), 메모리관리부(미도시) 또는 파일시스템관리부(미도시) 등을 포함할 수 있다. 시스템 리소스 매니저 311은 시스템 리소스의 제어, 할당 또는 회수 등을 수행할 수 있다. 디바이스 드라이버 312는, 예를 들면, 디스플레이 드라이버(미도시), 카메라 드라이버(미도시), 블루투스 드라이버(미도시), 공유 메모리 드라이버(미도시), USB 드라이버(미도시), 키패드 드라이버(미도시), WiFi 드라이버(미도시) 또는 오디오 드라이버(미도시)을 포함할 수 있다. 또한, 일 실시예에 따르면, 디바이스 드라이버 312는 IPC(inter-process communication, 미도시) 드라이버를 포함할 수 있다.
미들웨어 330은 어플리케이션 370이 공통적으로 필요로 하는 기능을 제공하기 위해 미리 구현해 놓은 복수의 모듈들을 포함할 수 있다. 또한, 미들웨어 330은 어플리케이션 370이 전자장치 내부의 제한된 시스템 자원을 효율적으로 사용할 수 있도록 API 360을 통해 기능을 제공할 수 있다. 예를 들면, 도 4에 도시한 바와 같이, 미들웨어 330(예: 미들웨어 132)은 런타임 라이브러리 335, 어플리케이션 매니저(application manager) 341, 윈도우 매니저(window manager) 342, 멀티미디어 매니저(multimedia manager) 343, 리소스 매니저(resource manager) 344, 파워 매니저(power manager) 345, 데이터베이스 매니저(database manager) 346, 패키지 매니저 347, 연결 매니저(connectivity manager) 348, 통지 매니저(notification manager) 349, 위치 매니저(location manager) 350, 그래픽 매니저(graphic manager) 351 또는 보안 매니저(security manager) 352 중 적어도 하나를 포함할 수 있다.
런타임 라이브러리 335는, 예를 들면, 어플리케이션 370이 실행되는 동안에 프로그래밍 언어를 통해 새로운 기능을 추가하기 위해 컴파일러가 사용하는 라이브러리 모듈을 포함할 수 있다. 일 실시예에 따르면, 런타임 라이브러리 335는 입출력, 메모리 관리 또는 산술 함수에 대한 기능 등을 수행할 수 있다.
어플리케이션 매니저 341은, 예를 들면, 어플리케이션 370 중 적어도 하나의 어플리케이션의 생명주기(life cycle)를 관리할 수 있다. 윈도우 매니저 342는 화면에서 사용하는 GUI 자원을 관리할 수 있다. 멀티미디어 매니저 343은 다양한 미디어 파일들의 재생에 필요한 포맷을 파악하고, 해당 포맷에 맞는 코덱(codec)을 이용하여 미디어 파일의 인코딩(encoding) 또는 디코딩(decoding)을 수행할 수 있다. 리소스 매니저 344는 어플리케이션 370 중 적어도 어느 하나의 어플리케이션의 소스 코드, 메모리 또는 저장 공간 등의 자원을 관리할 수 있다.
파워 매니저 345는 바이오스(BIOS: basic input/output system) 등과 함께 동작하여 배터리(battery) 또는 전원을 관리하고, 동작에 필요한 전력 정보 등을 제공할 수 있다. 데이터베이스 매니저 346은 어플리케이션 370 중 적어도 하나의 어플리케이션에서 사용할 데이터베이스를 생성, 검색 또는 변경할 수 있도록 관리할 수 있다. 패키지 매니저 347은 패키지 파일의 형태로 배포되는 어플리케이션의 설치 또는 업데이트를 관리할 수 있다.
연결 매니저 348은, 예를 들면, WiFi 또는 블루투스 등의 무선 연결을 관리할 수 있다. 통지 매니저 349는 도착 메시지, 약속, 근접성 알림 등의 사건(event)을 사용자에게 방해되지 않는 방식으로 표시 또는 통지할 수 있다. 위치 매니저 350은 전자장치의 위치 정보를 관리할 수 있다. 그래픽 매니저 351은 사용자에게 제공될 그래픽 효과 또는 이와 관련된 사용자 인터페이스를 관리할 수 있다. 보안 매니저 352는 시스템 보안 또는 사용자 인증 등에 필요한 제반 보안 기능을 제공할 수 있다. 일 실시예에 따르면, 전자장치(예: 전자장치 60, 100)가 전화 기능을 구비한 경우에는, 미들웨어 330은 전자장치의 음성 또는 영상 통화 기능을 관리하기 위한 통화 매니저(telephony manager, 미도시)를 더 포함할 수 있다. 다른 일 실시예에 따르면, 전자장치(예: 전자장치 60, 100)가 위치 기반 서비스를 제공하기 위한 각종 통신 예컨대, 소정의 네트워크 40을 통해 관심지역 관리서버 40과의 통신 또는 위치 검출을 위한 각종 통신을 수행하기 위한 매니저를 더 포함할 수 있다.
미들웨어 330은 전술한 내부 구성요소 모듈들의 다양한 기능 조합을 통해 새로운 미들웨어 모듈을 생성하여 사용할 수 있다. 미들웨어 330은 차별화된 기능을 제공하기 위해 운영체제의 종류별로 특화된 모듈을 제공할 수 있다. 또한, 미들웨어 330은 동적으로 기존의 구성요소를 일부 삭제하거나 새로운 구성요소들을 추가할 수 있다. 따라서 본 발명의 실시예에 기재된 구성요소를 일부 생략하거나 다른 구성요소를 더 구비하거나 또는 유사한 기능을 수행하는 다른 명칭을 갖는 구성요소로 대체할 수 있다.
API 360(예: API 133)은 API 프로그래밍 함수들의 집합으로, 운영체제에 따라 다른 구성으로 제공될 수 있다. 예를 들면, 안드로이드 또는 iOS의 경우, 예를 들면, 플랫폼별로 하나의 API 셋을 제공할 수 있으며, 타이젠(Tizen)의 경우, 예를 들면, 두 개 이상의 API 셋을 제공할 수 있다.
어플리케이션 370(예: 어플리케이션 134)은, 예를 들면, 프리로드 어플리케이션(preloaded Application) 또는 제 삼자 어플리케이션(third party application)을 포함할 수 있다.
어플리케이션 370의 관심지역 컨트롤러 385는 본 발명에 따라 전자장치 60이 특정한 지역에 위치할 경우 위치 정보를 획득하고, 획득된 위치 정보를 전자장치 60에서 또는 관심지역 관리서버 50을 통해 미리 등록된 관심지역에 진입하였는가를 검사할 수 있다. 관심지역 컨트롤러 385는 전자장치 60의 센서 모듈 240을 이용하여 또는 통신모듈 230을 이용하여 위치 정보를 획득하고, 획득된 위치를 관심지역(POI, Point of Interest)으로 설정할 수 있다.
관심지역 컨트롤러 385에서 관심지역(POI)을 설정하는 방법을 살펴보자. 관심지역(POI)을 설정하는 동작은 사용자가 사용자 입력 모듈 250의 입력을 통해 관심지역을 직접 선택, 지정하거나 입력할 수도 있고, 전자장치 내부의 다른 특정한 프로그램으로부터 또는 관심지역 관리서버 40로부터 추천받을 수도 있다. 관심지역(POI)을 선택, 지정하거나 사용자가 직접 입력하는 방법으로는 지도, 캘린더, 일정, 카메라 또는 날씨와 같이 위치정보를 포함하는 여러 가지 애플리케이션을 이용할 수도 있고, SNS, 메일, 환경설정 등에 포함된 사용자 프로파일을 이용할 수도 있고, 사용자가 주소를 입력할 수도 있다. 예를 들어, 관심지역 컨트롤러 385는 사용자가 관심지역으로 지도 애플리케이션에서 특정 위치를 지정해 선택할 수도 있고, 캘린더 애플리케이션, 일정 애플리케이션, 날씨 애플리케이션에 포함되는 주소정보를 추출하거나 해당 애플리케이션에서 위치정보를 선택할 수도 있다.
또한 관심지역 컨트롤러 385는 카메라 모듈 291을 이용해서 주변 이미지를 촬영하고, 촬영된 이미지를 이용하여 위치를 파악함으로써 관심지역을 등록할 수도 있다. 촬영된 이미지를 이용하는 경우 전자장치의 메모리 220에 저장된 정보를 이용할 수도 있고, 통신 모듈 230을 통해 소정의 서버로 촬영된 이미지를 전송하고, 해당 서버에서 제공하는 위치 정보를 수신하여 위치 정보를 획득할 수도 있다. 또한 마이크 288로부터 입력된 주변 소리를 통해 파악된 위치를 이용할 수도 있다. 이때에도 소정의 서버로부터 위치 정보를 제공받을 수도 있다.
특정한 어플리케이션(이하 어플리케이션 또는 앱이라 함)에서 위치 정보를 선택하는 방법을 예를 들어 살펴보자. 가령, 캘린더, 일정 앱(App)에 "2013년 3월 4일 16시, 업무회의"가 등록되어있으면, 해당 날짜의 위치 정보는 회사일 가능성이 높다. 날씨 앱(App)에 저장된 주소는 자주 가는 곳의 위치 정보일 가능성이 높고, 관심지역으로 설정될 가능성도 높다.
또 다른 실시예로는, 전자장치의 사용로그를 분석하여 사용로그로 유추할 수 있는 사용자 컨텍스트(Context)를 바탕으로 자주 가는 곳을 관심지역으로 추천하도록 하거나 자동으로 관심지역으로 설정할 수도 있다. 가령, 전자장치는 일정기간(예를 들어, 일주일 또는 한 달)동안 이동패턴을 직접 또는 관심지역 관리서버 40을 통해 분석할 수 있다. 이때, 특정값 예컨대, 2시간 이상 시간 머물거나, 주 5회 이상 자주 방문하는 곳의 위치정보를 팝업 또는 토스트창 등의 방법을 통해 사용자에게 알려 주고 해당 위치정보를 관심지역으로 설정할지 여부를 물어 보도록 구성할 수 있다.
또 다른 실시예로, 전자장치의 일정기간동안 이동패턴을 분석하여, 오랜 시간 머물거나, 자주 방문하는 곳의 위치정보를 자동으로 관심지역으로 리스트업 할 수도 있다. 이처럼 설정, 저장, 또는 관리되는 관심지역은 앞서 설명한 바와 같이 전자장치에서 직접 수행할 수도 있고, 관심지역 관리서버 50에서 수행하도록 구성할 수도 있다.
프로그래밍 모듈 300의 적어도 일부는 컴퓨터로 읽을 수 있는 저장매체(computer-readable storage media)에 저장된 명령어로 구현될 수 있다. 명령어는, 하나 이상의 프로세서(예: 프로세서 210)에 의해 실행될 경우, 하나 이상의 프로세서가 명령어에 해당하는 기능을 수행할 수 있다. 컴퓨터로 읽을 수 있는 저장매체는, 예를 들면, 메모리 260이 될 수 있다. 프로그래밍 모듈 300의 적어도 일부는, 예를 들면, 프로세서 210에 의해 구현(implement)(예: 실행)될 수 있다. 프로그래밍 모듈 300의 적어도 일부는 하나 이상의 기능을 수행하기 위한, 예를 들면, 모듈, 프로그램, 루틴, 명령어 세트 (sets of instructions) 및/또는 프로세스 등을 포함할 수 있다.
본 발명에 따른 프로그래밍 모듈(예: 프로그래밍 모듈 300)의 구성요소들의 명칭은 운영체제의 종류에 따라서 달라질 수 있다. 본 발명에 따른 프로그래밍 모듈은 전술한 구성요소들 중 적어도 하나 이상을 포함하거나, 일부가 생략되거나, 또는 추가적인 다른 구성요소를 더 포함할 수 있다. 본 발명에 따른 프로그래밍 모듈 또는 다른 구성요소에 의해 수행되는 동작들은 순차적, 병렬적, 반복적 또는 휴리스틱(heuristic)한 방법으로 처리될 수 있으며, 또한 일부 동작이 생략되거나, 다른 동작이 추가될 수 있다.
도 5는 본 발명의 일 실시예에 따른 관심지역 관리서버 50의 블록 구성도이다.
도 5를 참조하면, 관심지역 관리서버는 서버 제어부 511, 네트워크 통신부 512, 관리자 입력부 513, 내부 메모리 514,l 그래픽 처리부 515, 관심지역 데이터베이스 520을 포함할 수 있다.
서버 제어부 511은 관심지역 관리서버 50의 전반적인 제어를 수행할 수 있다. 예컨대, 전자장치 60으로부터 관심지역 등록에 대한 정보가 수신될 시 관심지역 데이터베이스 520에 데이터를 저장하도록 제어하거나 전자장치 60으로부터 이동 지역에 대한 정보를 획득할 시 관심지역 데이터베이스 520에 기 저장된 정보와 대비하여 관심지역에 진입하였는지 여부를 판별하고, 관심지역에 진입한 경우 이를 알리기 위한 정보를 전자장치 60으로 제공할 수 있다.
앞서 설명한 바와 같이 관심지역 관리서버 50은 개인 클라우드와 같은 개인적인(private) 서버일 수도 있고, 특정한 사업자의 서버이거나 또는 공중망의 공용(public) 서버일 수도 있다.
네트워크 통신부 512는 도 1에 도시한 소정의 네트워크 40을 통해 전자장치 60과 데이터를 송/수신한다. 예컨대, 네트워크 통신부 512는 전자장치 60으로부터 관심지역 등록 정보를 수신하거나 전자장치 60의 위치 정보를 수신할 수 있으며, 서버 제어부 511로부터 특정 전자장치가 관심지역에 진입한 경우 미리 등록된 관심지역에 진입하였음을 알리는 데이터를 네트워크 40을 통해 해당하는 전자장치로 전송할 수 있다.
관리자 입력부 513은 관심지역 관리서버 50를 관리하는 관리자의 입력 장치로, 키보드, 마우스, 터치패드, 조이스틱 등 다양한 형태의 입력 장치들이 이용될 수 있다.
내부 메모리 514는 휘발성 메모리로 구성할 수 있으며, 서버 제어부 511의 제어에 필요한 데이터를 저장하고, 관심지역 데이터베이스 520에 저장할 데이터 또는 관심지역 데이터베이스 520에서 읽어온 데이터를 임시로 저장할 수 있다. 그 밖에 내부 메모리 514는 관리자가 구동시킨 응용 프로그램에 따른 데이터를 로드하거나 임시로 저장할 수도 있다.
그래픽 처리부 515는 관심지역 관리서버 50의 동작 상태를 모니터(미도시)를 통해 관리자에게 그래픽 또는 문자 또는 기호 등 다양한 형태로 제공할 수 있다.
관심지역 데이터베이스 520은 등록된 전자장치들마다 관심지역과 관심지역을 식별하기 위한 식별자 등을 저장할 수 있다. 관심지역 데이터베이스 520에 각 전자장치별로 저장된 데이터의 형식을 예를 들면 하기 <표 1>과 같이 예시할 수 있다.
Figure pat00001
<표 1>에 예시한 바와 같이 하나의 전자장치(User 1)는 서로 다른 여러 개의 관심지역들 예컨대, POI #01, POI #02, …들을 포함할 수 있다. 또한 하나의 관심지역에는 다수의 식별자들을 포함할 수 있다. 예컨대, 동일 지역(위치, 지점)이라 하더라도 이동통신 네트워크로부터 수신되는 기지국의 셀 식별자(Cell ID)와 인공위성 30으로부터 획득할 수 있는 위치 정보, 와이파이 네트워크의 액세스 포인트로부터 획득할 수 있는 정보, 특정 지역의 사진 정보, 해당 지역에서만 추출할 수 있는 소리 정보(가청음 뿐 아니라 고주파나 저주파의 음파를 포함할 수 있다.) 등 다양한 정보가 위치를 식별할 수 있는 식별자로 등록될 수 있다. 이러한 관심지역 식별 정보들은 하나의 관심지역에 하나의 식별 정보만을 포함할 수도 있고, 하나의 관심지역에 둘 이상의 식별 정보들을 포함할 수도 있다. 또한 관심지역 데이터베이스 520에는 각각의 전자장치마다 서로 다른 관심지역들이 저장될 수 있다.
도 6은 본 발명의 실시예에 따른 전자장치에서 관심지역 컨트롤러가 활성화된 상태에서의 제어 흐름도이다.
도 6을 설명함에 있어 기본적으로 도 1의 시스템 구성을 이용하여 설명할 것이며, 전자장치의 내부 구성은 도 2 및 도 3의 구성을 이용하여 설명하기로 한다. 또한 도 6의 흐름도는 관심지역 컨트롤러 385가 활성화된 상태에서의 동작들이 될 수 있다.
프로세서 210은 600단계에서 전자장치 60의 상태를 검사한다. 여기서 상태 검사란, 전자장치 60의 위치 측정하고, 현재 위치에서의 거주 시간 등의 검사 및 관심지역 관리서버 50으로부터 관심지역 식별자 수신 여부 등을 검사하는 것을 의미할 수 있다. 이처럼 상태를 검사하면서 프로세서 210은 602단계 내지 618단계에서 특정한 동작이 요구되는가를 검사한다.
먼저 602단계로 진행하면, 프로세서 210은 사용자로부터 직접 관심지역 등록이 요청되는가를 검사한다. 직접 등록이 요청은 사용자가 사용자 입력 모듈 250에 관심지역 등록을 요구하는 키 또는 관심지역 등록의 수행이 필요한 특정한 지점을 터치하는 형식 또는 음성인식 등 다양한 형식이 될 수 있다. 602단계의 검사결과 사용자로부터 직접 관심지역 등록이 요청되는 경우 프로세서 210은 604단계로 진행하고 그렇지 않은 경우 606단계로 진행한다.
먼저 604단계로 진행하면, 프로세서 210은 사용자가 직접 관심지역 등록을 수행하기 위한 과정이 이루어진다. 예컨대, 디스플레이 모듈 260에 지도 데이터를 표시하며, 동시에 사용자가 직접 주소를 입력하기 위한 창(window) 등을 표시하고, 이후 사용자 입력 모듈 250으로부터 사용자가 특정한 주소를 수신하거나 마이크 288 및 오디오 코덱 280을 통해 입력된 사용자의 음성 인식을 통해 사용자가 말하고 있는 특정한 주소를 수신하거나 또는 디스플레이 모듈 260에 지도 데이터를 표시하고 사용자가 터치하는 위치의 주소를 표시하는 등 다양한 형식으로 사용자가 직접 관심지역을 등록할 수 있다.
이를 첨부된 도 도 7a 내지 도 7c를 참조하여 살펴보기로 하자.
도 7a 내지 도 7c는 본 발명의 일 실시에에 따라 관심지역을 등록하는 경우 디스플레이 모듈에 표시되는 사용자 인터페이스의 일 예시도이다.
도 7a를 참조하면, 디스플레이 모듈 260에 사용자가 직접 주소를 입력하기 위한 키 패드 영역 701, 전자장치가 위치한 지역 또는 전자장치가 위치한 것으로 측정된 최후의 지역을 지도로 표시하기 위한 지도 영역 702, 키 패드 영역 701 또는 다른 특정한 키들을 이용하여 사용자가 입력하는 주소 정보를 표시하기 위한 주소 입력(zone location) 영역 703, 주소 입력 영역 703에 입력된 주소에 대응한 지역의 검색을 요구하는 검색 버튼(키) 영역 705, 현재 위치를 자동으로 검색하도록 하기 위한 현재 위치 검색 버튼(키) 영역 706, 설정된 위치에 대해 사용자가 이름을 입력하기 위한 이름(zone name) 설정 영역 704를 가질 수 있다.
이름 설정 영역 704를 통해 저장 가능한 형태를 예시하면, 회사(직장), 거래처 1, 우리 집, 단골 카페, 서점, 헬스장 등 사용자가 직관적으로 이해할 수 있는 형태의 이름들을 기재할 수 있다.
또한 주소 입력 영역 703에는 사용자가 키 패드 영역 701에 표시한 키들의 입력(터치)을 통해 주소를 입력하거나 또는 지도 영역 702의 특정 지점을 터치하는 경우 해당 위치에 대응한 주소를 주소 입력 영역 703에 표시하거나 또는 주소 입력을 위해 별도로 구비된 입력 장치를 통해 입력하는 등의 동작을 통해 주소를 입력하도록 구성할 수 있다.
또한 주소 입력이 완료되는 경우 검색 버튼 영역 705를 입력하여 해당하는 주소를 검색하도록 할 수 있다. 다른 예로 현재 위치 검색 버튼 영역 706을 입력(터치)하여 전자장치가 현재 위치한 지역을 지도 영역 702에 또는 지도 영역을 확장하여 표시하도록 할 수도 있다. 이처럼 지도 영역을 확장하여 표시하는 경우를 도 7b를 참조하여 살펴보기로 한다.
도 7b는 확장된 지도 영역 712를 도시하였다. 또한 도 7b에는 주소가 직접 입력된 경우 확장된 지도 영역 712에 해당 좌표 720이 표시할 수도 있으며, 현재 위치 검색 버튼이 입력되는 경우 전자장치가 획득 가능한 현재 위치를 확장된 지도 영역에서 획득된 위치에 대한 좌표 720를 표시할 수도 있다. 이때, 도 7b에 예시한 바와 같이 현재 위치에 대응하는 주소 정보를 주소 입력 영역 703에 함께 표시할 수도 있다.
만일 이상에서 설명한 바와 같이 획득한 특정한 위치에 대응한 정보를 저장하고자 하는 경우 지역 이름(zone name)을 등록할 수 있으며, 도 7c에는 이처럼 획득된 주소가 텍스트 형태로 주소 표시 영역 730에 표시하는 경우를 예시하였다.
또한 본 발명의 일 실시예에 따르면, 관심지역만을 저장하는 형식이 아닌 관심지역 데이터는 물론 관심지역 데이터와 함께 수행되어야 할 동작을 저장할 수 있다. 또한 수행되어야 할 동작은 특정한 지역 뿐 아니라 특정한 정보에 근거할 수도 있다. 가령, "업무회의"나 "전화약속" 등 사용자에게 알려야 하는 특정한 정보들이 될 수 있다. 이처럼 관심지역 및 관심지역에서 특정한 정보와 함께 수행되어야 할 동작이 저장된 예를 하기 <표 2>를 참조하여 살펴보기로 한다.
Figure pat00002
<표 2>를 참조하면, 특정한 지역의 코드와 매칭 정보에 대응하여 수행되어야 하는 동작을 미리 설정할 수 있도록 구성된 형태를 도시하였다. 가령, 관심지역 코드 "001"에 매칭된 형태에서 미리 설정된 특정한 매칭 정보 예컨대, 날자 및 시간을 포함하는 회의 정보나 날자 및 시간을 포함하는 전화 약속 등이 검출되면, 알람(소리 / 진동)을 발생하도록 설정할 수 있다. 관심지역 코드 "001"은 예컨대, 회사나 학교 등이 될 수 있다.
또한 관심지역 코드 "002"에는 요일 및 시간 대역 정보와 관심지역 코드가 일치하면 특정 웹(Web)이나 기타 할인권을 제공하는 서버로부터 할인권을 다운로드 하도록 설정할 수도 있다. 관심지역 코드 "002"는 예컨대, 음식점, 서점, 영화관 등이 될 수 있다.
또한 관심지역 코드 "003"에는 매칭 정보가 진입시 무조건인 경우가 될 수 있으며, 보안이 필요한 지역이 될 수 있다. 관심지역 코드 "003"은 예컨대, 회사 내에 진입하는 경우이거나 또는 회사 내에서 보안이 필요한 특정 지역이 될 수 있다.
또한 관심지역 코드 "004"에도 매칭 정보가 진입한 후 10분 이후부터 심박 수를 검사하도록 할 수도 있다. 관심지역 코드 "004"는 예컨대, 헬스클럽, 골프장, 수영장, 운동장, 미리 지정한 산 등이 될 수 있다.
이상에서는 <표 2>를 이용하여 관심지역 코드와 매핑 정보 및 특정한 동작이 함께 매핑되는 경우를 예시하였다. 하지만, 매핑 정보는 전자장치 또는 서버에 미리 추정할 수 있는 형태로 저장될 수도 있다. 따라서 본 발명의 다른 실시예에서는 <표 2>에 예시한 데이터 중 관심지역 코드와 특정한 동작만을 매핑할 수도 있다. 또한 본 발명의 또 다른 실시예에서는 <표 2>에 예시한 데이터보다 세밀한 정보들을 포함하도록 할 수도 있다.
또한 이처럼 등록된 관심지역에 관련된 모든 데이터는 앞서 설명한 바와 같이 전자장치 내부의 메모리 220에 저장될 수도 있고, 관심지역에 관련된 일부 데이터만 전자장치 내부의 메모리 220에 저장되고 나머지는 소정의 네트워크 40을 통해 관심지역 관리서버 50에 저장될 수도 있다.
602단계의 검사결과 직접 등록이 요구되지 않아 606단계로 진행하면, 프로세서 210은 팝업이 필요한가를 검사한다. 606단계의 검사결과 팝업이 필요한 경우 608단계로 진행하여 관심지역 등록을 위한 팝업을 디스플레이 모듈 260에 표시하여 관심지역 등록 과정을 수행하고, 그렇지 않은 경우 610단계로 진행한다.
606단계의 팝업이 필요한가를 검사하는 경우와 608단계에서 관심지역 등록을 위한 팝업을 디스플레이 모듈 260에 표시하여 관심지역을 등록하는 과정을 좀 더 살펴보기로 하자.
먼저 팝업이 필요한가를 검사하는 경우도 전자장치에서 자체적으로 이루어질 수도 있고, 관심지역 관리서버 50으로부터 수신할 수도 있다. 전자장치에서 자체적으로 이루어지는 경우와 관심지역 관리서버 50에서 이루어지는 경우 모두 동일한 조건일 수 있다. 예컨대, 팝업이 필요한 경우는 미리 설정된 시간 가령 2시간 이상 동안 한 지역에 머무르는 것으로 검사되고, 이러한 상태가 1주에 3회 이상 또는 1달에 20시간 이상인 경우 등과 같이 팝업을 통해 사용자에게 문의하기 위해 미리 설정된 조건일 수 있다. 팝업을 통해 사용자에게 문의하기 위해 미리 설정된 조건은 전자장치의 사용자마다 서로 다른 주기 또는 시간일 수 있고, 별도의 등록을 통해서 변경할 수도 있다. 또한 기본적으로 전자장치에 기본 값(default value)이 설정되어 있을 수도 있고, 관심지역 관리서버 50에 전자장치를 등록하는 경우 사용자가 설정하거나 기본 값(default value)으로 설정할 수도 있다. 그러므로 팝업이 필요한가의 검사는 이처럼 기본 값으로 설정된 또는 사용자가 직접 설정한 조건을 충족하는 경우 디스플레이 모듈 260에 관심지역 등록을 위한 팝업을 표시하도록 할 수 있다.
디스플레이 모듈 260에 관심지역 등록을 위한 팝업이 표시된 상태에서 관심지역을 등록하는 동작에 대하여 살펴보기로 하자. 관심지역 등록을 위한 팝업은 관심지역 등록 여부를 문의하는 팝업창을 디스플레이 모듈 260에 띄워 표시할 수 있다. 이때, 사용자가 관심지역 등록 여부를 문의하는 팝업창에 미리 구비된 관심지역 등록을 선택하면, 사용자 입력 모듈 250은 관심지역 등록 동작을 수행할 수 있다. 관심지역 등록 동작은 앞서 설명한 도 7a 내지 도 7c의 과정을 통해 관심지역을 등록할 수 있다. 또한 팝업이 표시된 경우에는 전자장치가 위치한 지역이 관심지역 등록 대상이므로, 도 7a 내지 도 7c의 과정 중 주소를 입력하기 위한 동작이 제외될 수도 있다. 반면에 관심지역 등록 여부를 문의하는 팝업창을 디스플레이 모듈 260에 띄워 표시한 상태에서 사용자가 관심지역 등록을 취소(무시 또는 안함) 등을 선택하면, 608단계를 종료하고, 600단계로 진행할 수 있다.
606단계의 검사결과 팝업이 필요하지 않은 경우 프로세서 210은 610단계로 진행하여 위치 보고가 필요한가를 검사한다. 610단계의 검사결과 위치보고가 필요한 경우 프로세서 210은 612단계로 진행하여 위치 보고를 위한 과정을 수행하고, 그렇지 않은 경우 614단계로 진행한다.
먼저 612단계에서와 같이 위치 보고를 수행해야 하는 경우에 대하여 살펴보기로 하자. 위치 보고를 수행해야 하는 경우는 기본적으로 관심지역 관리서버 50을 두는 경우가 될 수 있다. 이처럼 위치 정보를 보고하는 것은 아래의 여러 가지 기준들을 이용할 수 있다.
(1) 동일 또는 일정 지역에 미리 설정된 시간 이상동안 머무르는 경우
(2) 미리 설정된 시간 단위로 전자장치가 위치한 지역의 위치 정보를 송신하는 경우
(3) 위의 (1)과 (2)를 혼합한 경우
이처럼 위의 3가지 경우 이외에도 사용자가 필요로 하는 경우 보다 다양한 형태로 위치 정보를 관심지역 관리서버 50으로 전송하도록 할 수 있다. 그러면 위 3가지 경우들을 좀 더 상세히 살펴보기로 하자.
동일 또는 일정 지역에 미리 설정된 시간 이상동안 머무르는 경우를 예를 들면, 특정한 위치에 1시간 이상 또는 2시간 이상 등과 같이 미리 설정된 시간 동안 머무르고 있는지 여부를 판별할 수 있다. 이때, 동일 지역인가를 판별하기 위해서는 통신 모듈 230을 이용하여 동일 지역에 머무르고 있는가 여부를 판별할 수 있다. 가령, 10분 단위로 또는 지속적으로 기지국 식별자를 검사하여 미리 설정된 시간 동안 지속해서 동일한 기지국 식별자를 수신하는 경우 동일 지역에 머무르고 있는 경우가 될 수 있다. 다른 예로, 10분 단위 또는 20분 단위와 같이 소정의 시간 단위로 또는 지속적으로 GPS 237로부터 획득한 정보를 이용하여 전자장치가 미리 설정된 반경 가령 10~30m 이내에 미리 설정된 시간인 1시간 이상 또는 2시간 이상 계속 머무르고 있는 경우 동일 지역에 지속적으로 머무르고 있는 경우가 될 수 있다. 또 다른 예로, Wi-Fi 233으로부터 획득한 정보를 기반으로 10분 단위 또는 30분 단위와 같이 소정 시간 단위로 또는 지속적으로 획득한 위치 정보가 미리 설정된 1시간 이상 또는 2시간 이상 계속 머무르고 있는 경우 동일 지역에 지속적으로 머무르고 있는 경우가 될 수 있다.
다음으로 미리 설정된 시간 단위로 전자장치가 위치한 지역의 위치 정보를 송신하는 경우는 앞서 설명한 바와 같이 전자장치가 위치 정보를 미리 설정된 시간 예컨대, 10분 또는 20분 또는 30분 간격으로 관심지역 관리서버 50으로 전송하도록 설정된 경우가 될 수 있다. 세 번째 경우는 앞서 첫 번째 경우를 설명하면서 함께 설명하였으므로 더 설명하지 않기로 한다.
그러면 612단계의 위치 보고를 위한 과정에 대해여 살펴보기로 한다. 프로세서 210은 612단계에서 통신 모듈 230을 통해 획득한 위치 정보를 소정의 네트워크 40을 통해 관심지역 관리서버 50으로 제공할 수도 있다. 위치 정보의 획득은 GPS 237, Wi-Fi 233, RF 모듈 234로부터 수신된 기지국의 정보를 이용할 수도 있다.
또한 도 6에서는 획득한 위치 정보를 관심지역 관리서버 50으로 제공하는 경우를 예시하고 있으나, 관심지역 관리서버 50을 두지 않는 경우에는 전자장치 자체적으로 위치 정보를 이용할 수도 있다. 전자장치 자체적으로 위치 정보를 이용하는 경우에는 610단계 및 612단계를 포함하지 않을 수 있다.
610단계의 검사결과 위치 보고가 필요하지 않아 614단계로 진행하는 경우 프로세서 210은 관심지역 관리서버 50으로부터 관심지역 식별자를 수신하는가를 검사한다. 여기서 관심지역 식별자는 앞서 설명한 <표 1> 및 <표 2>에 예시한 식별자가 될 수 있다. 또한 관심지역 관리서버 50이 관심지역 식별자를 전송하는 경우는 <표 2>에서 예시한 바와 같이 특정한 매칭 정보와 매칭된 경우일 수도 있다. 다른 실시예에 따르면, 관심지역 관리서버 50은 해당지역에 진입하는 경우 단지 관심지역 식별자만을 송신하고, 매칭 정보와 매칭 정보에 따라 동작은 전자장치에서 이루어질 수도 있다.
위의 어떠한 경우에든 관심지역 관리서버 50은 관심지역 식별자를 전자장치로 제공할 수 있다.
614단계의 검사결과 관심지역 식별자를 수신하는 경우 프로세서 210은 616단계로 진행하고, 관심지역 식별자를 수신하지 않는 경우 프로세서 21은 618단계로 진행한다.
616단계로 진행하면, 프로세서 210은 <표 2>에 도시한 바와 같은 매핑 정보를 이용하여 해당 조건에 맞춰 설정된 동작을 자동으로 수행하도록 할 수 있다. 다른 예로 앞서 설명한 바와 같이 관심지역 관리서버 50이 매칭 정보를 미리 가지고 있어 매칭정보와 매칭된 경우에만 관심지역 식별자를 제공하는 경우 프로세서 210은 관심지역 식별자 정보에 대응하여 저장된 동작을 수행할 수 있다.
매칭된 동작은 앞서 예시한 <표 2>에 예시된 동작들이 될 수 있으며, 사용자의 선택에 따라 전자장치에서 수행할 수 있는 다른 동작들이 더 포함될 수도 있다. 예컨대, 특정한 채널의 방송을 자동으로 시청 또는 청취하도록 할 수도 있고, <표 2>에 예시하지 않은 특정한 어플리케이션이 자동으로 구동되도록 할 수도 있다. 본 발명에서는 이처럼 자동으로 수행되어야 하는 어플리케이션에 대하여 특별한 제한을 두지 않는다.
614단계의 검사결과 관심지역 관리서버 50으로부터 관심지역 식별자를 수신하지 못한 경우 프로세서 210은 618단계로 진행하여 사용자 입력 모듈 250을 통해 관심지역 컨트롤러 385의 종료가 요구되는가를 검사한다. 618단계의 검사결과 관심지역 컨트롤러 385의 종료가 요구되는 경우 프로세서 210은 도 6의 루틴을 종료한다. 반면에 관심지역 컨트롤러 385의 종료가 요구되지 않는 경우 프로세서 210은 600단계의 상태 검사를 지속적으로 수행한다.
이상에서 설명한 도 6의 동작을 전체적인 관점에서 다시 간략히 살펴보기로 하자. 먼저 사용자는 602단계 및 604단계를 통해 직접 관심지역을 등록할 수도 있으며, 606단계 내지 608단계를 통해 관심지역 팝업을 통해 관심지역을 등록할 수도 있다. 관심지역 등록 시 전자장치에만 관심지역의 정보를 저장하고, 관심지역에서 수행해야 할 특정 동작도 전자장치에만 저장하도록 할 수도 있다. 이는 관심지역 관리서버 50을 두지 않는 경우가 될 수 있다.
반면에 관심지역 관리서버 50을 두는 경우 전자장치에서 수행해야 하는 많은 부하(load)를 줄일 수 있다. 관심지역 관리서버 50은 <표 1>에 도시한 바와 같은 관심지역의 다양한 식별자들 저장하여 관리할 수 있으며, 필요한 경우 <표 2>에 도시한 바와 같이 관심지역 매칭 정보를 저장할 수도 있다. 이에 따라 관심정보 관리서버 50은 전자장치로부터 관심지역에 진입한 정보를 수신하고, 매칭 정보의 조건이 충족하는 경우 전자장치로 관심지역 식별자를 전송할 수 있다. 이에 따라 전자장치는 관심지역 식별자를 수신하면, 매칭된 동작을 수행하도록 할 수 있다.
다른 예로, 관심지역 관리서버 50은 <표 1>에 도시한 바와 같은 관심지역의 다양한 식별자들만을 저장하여 관리할 수도 있다. 이러한 경우 관심정보 관리서버 50은 전자장치로부터 관심지역에 진입한 정보를 수신하면, 전자장치로 관심지역 식별자를 전송할 수 있다. 이에 따라 전자장치는 관심지역 식별자와 함께 저장된 매칭 정보 예컨대, <표 2>와 같은 형태의 매칭 정보를 토대로 매칭 정보에 저장된 조건을 충족하는지 여부를 판별하고, 매칭 정보의 조건을 충족하는 경우 매칭된 동작을 수행하도록 할 수도 있다. 그러면 이처럼 관심정보 관리서버 50과 전자장치간의 신호 흐름 및 제어 동작을 첨부된 도면을 참조하여 다시 살펴보기로 하자.
도 8은 본 발명의 일 실시예에 따라 관심지역 관리서버를 두는 경우 전자장치가 관심지역의 등록 및 관심지역 식별 정보를 수신하는 경우의 신호 흐름도이다.
전자장치 60은 앞서 설명한 도 6의 과정을 통해 관심지역(Point of Interest, POI)을 등록할 수 있다. 이처럼 관심지역 등록은 전자장치 60에만 등록이 이루어질 수도 있고, 전자장치 60에 등록되는 정보와 관심지역 관리서버 50에 등록되는 정보로 구분될 수도 있다. 도 8은 관심지역 관리서버 50을 두는 경우이므로 이하에서는 관심지역 전자장치 60과 관리서버 50에 관심지역 정보가 등록되는 경우를 살펴보기로 한다.
전자장치 60은 800단계에서 관심지역을 등록한다. 이때, 관심지역 등록은 도 6에서 설명한 바와 같이 팝업창을 이용하거나 또는 사용자가 직접 입력할 수도 있다. 이처럼 입력이 이루어지면, 전자장치 60은 802단계에서 <표 1> 및 <표 2>의 정보 전체 또는 <표 1>의 정보와 <표 2>의 정보 중 일부를 관심지역 관리서버 50으로 전송할 수 있다. 관심지역 관리서버 50은 <표 1>의 정보와 <표 2>의 정보 전체 또는 <표 1>의 정보 전체와 <표 2>의 정보 중 일부를 수신하면, 804단계에서 이를 관심지역 데이터베이스 520에 해당하는 전자장치의 정보와 매칭시켜 저장한다.
이처럼 관심지역 관리서버 50에서 관심지역 데이터의 일부에 대해 관리가 이루어지는 경우 전자장치 60은 <표 2>의 일부 정보만을 메모리 220에 저장할 수도 있다. 관심지역 등록은 이후에도 지속적으로 갱신되거나 또는 추가될 수 있다.
이처럼 특정한 전자장치에 대해 하나 이상의 관심지역이 설정된 경우 전자장치 50은 미리 설정된 조건이 충족되면 810단계와 같이 소정의 네트워크 40을 통해 관심지역 관리서버 50으로 위치 정보를 송신할 수 있다. 여기서 미리 설정된 조건은 아래의 조건들이 될 수 있다.
(1) 미리 설정된 시간 단위(예를 들어 5분 또는 10분 또는 30분 등)로 위치 정보 송신
(2) 위치 정보 변경 시(예를 들어 기지국의 식별자 변경 시) 위치 정보 송신
(3) 특정 위치의 변경 없이 미리 설정된 시간 이상 머무르는 경우(예를 들어 1시간 이상 기지국의 식별자 변경이 없는 경우 또는 1시간 이상 동안 GPS로부터 획득한 위치 정보의 변화가 미리 설정된 범위 이내인 경우 또는 Wi-Fi로부터 획득한 위치 정보가 1시간 또는 2시간 이상 변화가 없는 경우 등) 위치 정보 송신
위치정보 관리서버 50은 810단계에서 특정한 전자장치로부터 위치 정보를 수신하면, 위치정보 관리서버 50은 812단계에서 해당하는 전자장치가 미리 등록한 관심지역에 매칭되는가를 검사한다. 이때, 앞서 설명한 바와 같이 <표 2>의 매칭 정보를 가지고 있는 경우 <표 2>의 매칭 정보에 부합하는지 여부를 함께 판별할 수도 있다.
위치정보 관리서버 50은 812단계의 검사결과 관심지역 정보와 매칭되는 경우 816단계를 수행하고, 관심지역 정보와 매칭되지 않는 경우 814단계에서 해당 위치 정보를 무시한다.
위치정보 관리서버 50은 816단계로 진행하면, 해당하는 관심지역 관리 식별자를 생성하고, 818단계로 진행하여 관심지역 식별자를 해당하는 전자장치로 전송한다. 위치정보 관리서버 50은 관심지역 식별자 생성 시 <표 1>의 정보만을 가진 경우와 <표 1>의 정보와 <표 2>의 정보 중 일부를 가진 경우 모두 동일한 형태일 수 있다.
전자장치 60은 818단계에서 관심지역 관리서버 50으로부터 전송되어 온 관심지역 식별자르 F수신하면, 830단계에서 매칭 동작이 존재하는가를 검사한다. 830단계를 두는 이유는 관심지역 관리서버 50이 <표 1>의 정보만을 갖는 경우와 <표 1>의 정보는 물론 <표 2>의 정보도 갖는 경우를 포함할 수 있기 때문이다. 따라서 전자장치 60은 830단계의 검사결과 매칭 동작이 존재하면, 832단계로 진행하여 매칭된 동작을 수행한다. 반면에 매칭된 동작이 존재하지 않거나 또는 <표 2>의 조건을 충족하지 못하는 경우 해당 관심지역 식별자를 무시할 수 있다.
그리고 이상에서 설명한 본 명세서와 도면에 개시된 실시 예들은 본 발명의 내용을 쉽게 설명하고, 이해를 돕기 위해 특정 예를 제시한 것일 뿐이며, 본 발명의 범위를 한정하고자 하는 것은 아니다. 따라서 본 발명의 범위는 여기에 개시된 실시 예들 이외에도 본 발명의 기술적 사상을 바탕으로 도출되는 모든 변경 또는 변형된 형태가 본 발명의 범위에 포함되는 것으로 해석되어야 한다.
10 : 이동통신 네트워크의 기지국 11 : 기지국의 통신 영역
20 : Wi-Fi 장치 21 : Wi-Fi 장치의 통신 영역
30 : 인공위성 40 : 네트워크
50 : 관심지역 관리서버
60, 100, 102, 104 : 전자장치 110 : 버스
120 : 프로세서 130 : 메모리
131, 310 : 커널 132, 330 : 미들웨어
133, 360 : 어플리케이션 프로그래밍 인터페이스(API)
134, 370 : 어플리케이션 140 : 사용자 입력 모듈
150 : 디스플레이 모듈 160 : 통신 모듈
162 : 네트워크 164 : 서버
200 : 하드웨어 210 : 프로세서
211 : 어플리케이션 프로세서(AP)
213 : 커뮤니케이션 프로세서(CP)
214 : SIM 카드 220 : 메모리
222 : 내장메모리 224 : 외장메모리
230 : 통신 모듈 231 : 무선 통신 모듈
233 : Wi-Fi 234 : RF 모듈
235 : BT 237 : GPS
239 : NFC 240 : 센서 모듈
240A : 제스쳐 센서 240B : 자이로 센서
240C : 기압 센서 240D : 마그네틱 센서
240E : 가속도 센서 240F : 그립 센서
240G : 근접 센서 240H : RGB 센서
240I : 생체 센서 240J : 온/습도 센서
240K : 조도 센서 240M : UV 센서
250 : 사용자 모듈 252 : 터치 패널
254 : 펜 센서 256 : 키
258 : 울트라 소닉 260 : 디스플레이 모듈
262 : 패널 264 : 홀로그램
270 : 인터페이스 272 : HDMI
274 : USB 276 : 프로젝터
278 : D-SUB 280 : 오디오 코덱
282 : 스피커 284 : 리시버
286 : 이어폰 288 : 마이크
291 : 카메라 모듈 295 : 전력 관리 모듈
296 : 배터리 297 : 인디케이터
298 : 모터 300 : 프로그래밍 모듈
311 : 시스템 리소스 매니저 312 : 디바이스 드라이버
335 : 런타임 라이브러리 341 : 어플리케이션 매니저
342 : 윈도우 매니저 343 : 멀티미디어 매니저
344 : 리소스 매니저 345 : 파워 매니저
346 : 데이터베이스 매니저 347 : 패키지 매니저
348 : 연결 매니저 349 : 통지 매니저
350 : 위치 매니저 351 : 그래픽 매니저
352 : 보안 매니저 371 : 홈
372 : 다이얼러 373 : SMS/MMS
374 : IM 375 : 브라우저
376 : 카메라 377 : 알람
378 : 컨택트 379 : 음성다이얼
380 : 이메일 381 : 달력
382 : 미디어 플레이어 383 : 앨범
384 : 시계 511 : 서버 제어부
512 : 네트워크 통신부 513 : 관리자 입력부
514 : 내부 메모리 515 : 그래픽 처리부
520 : 관심지역 데이터베이스
701 : 키 패드 영역 702 : 지도 영역
703 : 주소 입력 영역 704 : 이름 설정 영역
705 : 검색 버튼(키) 영역 706 : 현재 위치 검색 버튼(키) 영역
712 : 확장된 지도 영역 720 : 특정 위치(지점)
730 : 저장될 위치 주소 정보

Claims (20)

  1. 전자장치로 위치 기반 서비스를 제공하기 위한 방법에 있어서,
    상기 전자장치는 미리 설정된 조건이 충족될 시 관심지역 관리서버로 획득된 위치 정보를 제공하는 단계;
    상기 관심지역 관리서버는 위치 정보 수신 시 미리 등록된 관심지역의 정보와 매칭되는가를 판별하여 미리 등록된 관심지역의 정보와 매칭될 시 상기 전자장치로 관심지역 식별정보를 제공하는 단계; 및
    상기 전자장치는 상기 관심지역 관리서버로부터 관심지역 식별정보를 수신할 시 미리 매칭된 동작을 수행하는 단계를 포함하는, 전자장치로 위치 기반 서비스를 제공하기 위한 방법.
  2. 제1항에 있어서, 상기 미리 설정된 조건은,
    상기 위치 정보 송신을 위해 미리 설정된 시간 또는 상기 전자장치의 위치 정보 변경 시 또는 특정 위치의 변경 없이 미리 설정된 시간 이상 머무르는 경우 중 어느 하나인, 전자장치로 위치 기반 서비스를 제공하기 위한 방법.
  3. 제2항에 있어서, 상기 전자장치의 위치 정보 변경은,
    이동통신 네트워크 기지국의 식별자 변경 또는 GPS로부터 획득한 위치 정보의 변화가 미리 설정된 범위 이상으로 변화하는 경우 또는 액세스 포인트로부터 획득한 위치 정보의 변경 중 어느 하나인, 전자장치로 위치 기반 서비스를 제공하기 위한 방법.
  4. 제1항에 있어서, 상기 미리 등록된 관심지역의 정보는,
    각 전자장치마다 설정된 적어도 하나의 관심지역과 상기 관심지역에 대응한 하나 이상의 식별자 정보를 포함하는, 전자장치로 위치 기반 서비스를 제공하기 위한 방법.
  5. 제4항에 있어서, 상기 식별자 정보는,
    이동통신 네트워크 기지국의 식별자 또는 GPS로부터 획득한 위치 정보와 반경 또는 액세스 포인트의 식별자 중 하나를 포함하는, 전자장치로 위치 기반 서비스를 제공하기 위한 방법.
  6. 제4항에 있어서, 상기 미리 등록된 관심지역의 정보는,
    상기 전자장치의 특정 동작 구동을 위한 매핑 정보를 더 포함하는, 전자장치로 위치 기반 서비스를 제공하기 위한 방법.
  7. 제1항에 있어서, 상기 관심지역 식별정보는,
    이동통신 네트워크 기지국의 식별자 또는 GPS로부터 획득한 위치 정보와 반경 또는 액세스 포인트의 식별자 중 하나를 포함하는, 전자장치로 위치 기반 서비스를 제공하기 위한 방법.
  8. 제1항에 있어서,
    상기 전자장치는 상기 관심지역 관리서버로부터 관심지역 식별정보를 수신할 시 특정 동작 구동을 위한 매핑 정보를 검사하는 단계; 및
    상기 매핑 정보에 대응하여 미리 매칭된 동작을 수행하는 단계를 더 포함하는, 전자장치로 위치 기반 서비스를 제공하기 위한 방법.
  9. 제1항에 있어서,
    상기 전자장치에서 상기 관심지역에 대한 정보 및 관심지역에서 수행될 동작을 설정하는 단계;
    상기 설정된 상기 관심지역에 대한 정보의 전부 또는 일부를 상기 관심지역 관리서버로 제공하는 단계;를 더 포함하는, 전자장치로 위치 기반 서비스를 제공하기 위한 방법.
  10. 제9항에 있어서, 상기 관심지역에 대한 정보는,
    사용자가 입력한 관심지역의 주소 또는 이동통신 네트워크 기지국의 식별자 또는 GPS로부터 획득한 위치 정보와 반경 또는 액세스 포인트의 식별자 중 적어도 하나를 포함하는, 전자장치로 위치 기반 서비스를 제공하기 위한 방법.
  11. 전자장치로 위치 기반 서비스를 제공하기 위한 시스템에 있어서,
    위치 정보를 획득하고, 관심지역 관리서버와 통신하기 위한 통신 모듈;
    관심지역 정보를 저장하기 위한 메모리; 및
    미리 설정된 조건이 충족될 시 상기 관심지역 관리서버로 획득된 위치 정보를 상기 통신 모듈을 통해 제공하도록 제어하고, 상기 관심지역 관리서버로부터 관심지역 식별정보를 수신할 시 미리 매칭된 동작을 수행하도록 제어하는 프로세서를 포함하는 전자장치; 및
    상기 전자장치와 통신이 가능한 네트워크 통신부;
    상기 관심지역 데이터를 저장하기 위한 관심지역 데이터베이스; 및
    상기 네트워크 통신부를 통해 상기 전자장치의 위치 정보 수신 시 상기 관심지역 데이터베이스에 미리 등록된 관심지역 정보와 매칭되는가를 판별하여 미리 등록된 관심지역의 정보와 매칭될 시 상기 네트워크 통신부를 통해 상기 전자장치로 관심지역 식별정보를 제공하도록 제어하는 서버 제어부;를 포함하는 관심지역 관리서버;를 포함하여 구성되는, 전자장치로 위치 기반 서비스를 제공하기 위한 시스템.
  12. 제11항에 있어서, 상기 미리 설정된 조건은,
    상기 획득한 위치 정보를 송신하기 위해 미리 설정된 시간 또는 상기 전자장치의 위치 정보 변경 검출 시 또는 특정 위치의 변경 없이 미리 설정된 시간 이상 머무르는 경우 중 어느 하나인, 전자장치로 위치 기반 서비스를 제공하기 위한 시스템.
  13. 제12항에 있어서, 상기 위치 정보 변경 검출은,
    상기 통신부를 통해 이동통신 네트워크 기지국의 식별자 변경 또는 GPS로부터 획득한 위치 정보의 변화가 미리 설정된 범위 이상으로 변화하는 경우 또는 액세스 포인트로부터 획득한 위치 정보의 변경 중 어느 하나인, 전자장치로 위치 기반 서비스를 제공하기 위한 시스템.
  14. 제11항에 있어서, 상기 미리 등록된 관심지역의 정보는,
    각 전자장치마다 설정된 적어도 하나의 관심지역과 상기 관심지역에 대응한 하나 이상의 식별자 정보를 포함하는, 전자장치로 위치 기반 서비스를 제공하기 위한 시스템.
  15. 제14항에 있어서, 상기 식별자 정보는,
    이동통신 네트워크 기지국의 식별자 또는 GPS로부터 획득한 위치 정보와 반경 또는 액세스 포인트의 식별자 중 하나를 포함하는, 전자장치로 위치 기반 서비스를 제공하기 위한 시스템.
  16. 제14항에 있어서, 상기 미리 등록된 관심지역의 정보는,
    상기 전자장치의 특정 동작 구동을 위한 매핑 정보를 더 포함하는, 전자장치로 위치 기반 서비스를 제공하기 위한 시스템.
  17. 제11항에 있어서, 상기 관심지역 식별정보는,
    이동통신 네트워크 기지국의 식별자 또는 GPS로부터 획득한 위치 정보와 반경 또는 액세스 포인트의 식별자 중 하나를 포함하는, 전자장치로 위치 기반 서비스를 제공하기 위한 시스템.
  18. 제11항에 있어서,
    상기 전자장치의 프로세서는 상기 관심지역 관리서버로부터 관심지역 식별정보를 수신할 시 특정 동작 구동을 위한 매핑 정보를 검사하고, 상기 매핑 정보에 대응하여 미리 매칭된 동작을 수행하도록 제어하는, 전자장치로 위치 기반 서비스를 제공하기 위한 시스템.
  19. 제11항에 있어서,
    상기 전자장치의 프로세서는 상기 관심지역에 대한 정보 및 관심지역에서 수행될 동작을 설정하고, 상기 설정된 상기 관심지역에 대한 정보의 전부 또는 일부를 상기 통신부를 통해 상기 관심지역 관리서버로 제공하도록 제어하는, 전자장치로 위치 기반 서비스를 제공하기 위한 시스템.
  20. 제19항에 있어서, 상기 관심지역에 대한 정보는,
    사용자가 입력한 관심지역의 주소 또는 이동통신 네트워크 기지국의 식별자 또는 GPS로부터 획득한 위치 정보와 반경 또는 액세스 포인트의 식별자 중 적어도 하나를 포함하는, 전자장치로 위치 기반 서비스를 제공하기 위한 시스템.
KR1020130130005A 2013-10-30 2013-10-30 전자장치로 위치 기반 서비스를 제공하기 위한 방법 및 시스템 KR102160975B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020130130005A KR102160975B1 (ko) 2013-10-30 2013-10-30 전자장치로 위치 기반 서비스를 제공하기 위한 방법 및 시스템
US14/529,071 US9816833B2 (en) 2013-10-30 2014-10-30 Method and apparatus for providing location based service

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020130130005A KR102160975B1 (ko) 2013-10-30 2013-10-30 전자장치로 위치 기반 서비스를 제공하기 위한 방법 및 시스템

Publications (2)

Publication Number Publication Date
KR20150049427A true KR20150049427A (ko) 2015-05-08
KR102160975B1 KR102160975B1 (ko) 2020-09-29

Family

ID=52996320

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020130130005A KR102160975B1 (ko) 2013-10-30 2013-10-30 전자장치로 위치 기반 서비스를 제공하기 위한 방법 및 시스템

Country Status (2)

Country Link
US (1) US9816833B2 (ko)
KR (1) KR102160975B1 (ko)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20170004186A (ko) * 2015-07-01 2017-01-11 삼성전자주식회사 외부 전자 장치를 제어하기 위한 방법 및 그 방법을 처리하기 위한 전자 장치
KR20180026824A (ko) 2016-09-05 2018-03-14 주식회사 에피폴라 지역 분할과 파노라마 분할 기법을 이용한 위치기반 관심지점 정보 검색 시스템 및 방법
KR20180068932A (ko) 2018-06-12 2018-06-22 네이버랩스 주식회사 지역 분할과 파노라마 분할 기법을 이용한 위치기반 관심지점 정보 검색 시스템 및 방법

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10831982B2 (en) 2009-10-14 2020-11-10 Iplcontent, Llc Hands-free presenting device
US9330069B2 (en) 2009-10-14 2016-05-03 Chi Fai Ho Layout of E-book content in screens of varying sizes
US9400549B2 (en) 2013-03-08 2016-07-26 Chi Fai Ho Method and system for a new-era electronic book
CN105241463A (zh) * 2015-09-29 2016-01-13 小米科技有限责任公司 基于导航信息的业务处理方法及装置、电子设备
KR102454746B1 (ko) * 2015-10-01 2022-10-17 삼성전자주식회사 통신 시스템에서 미디어 리소스 식별 정보를 송수신하는 장치 및 방법
CN106412319A (zh) * 2016-10-31 2017-02-15 维沃移动通信有限公司 一种信息发送方法、信息接收方法及移动终端
CN108875757B (zh) * 2017-05-08 2023-04-21 腾讯科技(深圳)有限公司 一种信息审核方法、服务器及系统
CN110647691B (zh) * 2018-06-07 2023-04-18 斑马智行网络(香港)有限公司 一种数据处理方法、装置和机器可读介质
CN110740418A (zh) * 2018-07-03 2020-01-31 百度在线网络技术(北京)有限公司 用于生成用户到访信息的方法和装置
CN110839205A (zh) * 2019-11-08 2020-02-25 腾讯科技(深圳)有限公司 一种基于WiFi的资源推荐方法和装置

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101143968B1 (ko) * 2011-05-06 2012-05-09 팅크웨어(주) 오픈형 poi에 대한 실시간 검색을 지원하는 시스템 및 방법
US20130103306A1 (en) * 2010-06-15 2013-04-25 Navitime Japan Co., Ltd. Navigation system, terminal apparatus, navigation server, navigation apparatus, navigation method, and computer program product
JP2013140164A (ja) * 2013-02-04 2013-07-18 Kyocera Corp 移動通信端末、地図情報提供サーバ及び地図表示システム
US20130237204A1 (en) * 2009-02-17 2013-09-12 Lookout, Inc. System and method for uploading location information based on device movement

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7096030B2 (en) 2002-06-28 2006-08-22 Nokia Corporation System and method for initiating location-dependent applications on mobile devices
US20060112428A1 (en) * 2004-11-23 2006-05-25 Nokia Corporation Device having a locking feature and a method, means and software for utilizing the feature
JP5230652B2 (ja) * 2007-01-10 2013-07-10 トムトム インターナショナル ベスローテン フエンノートシャップ 交通遅滞を示す方法、コンピュータプログラムおよびナビゲーションシステム
JP5371572B2 (ja) 2009-06-22 2013-12-18 Kddi株式会社 類似度算出装置、推薦poi決定装置、poi推薦システム、類似度算出方法およびプログラム
KR101754304B1 (ko) 2010-12-22 2017-07-06 주식회사 케이티 Poi별 특화된 정보 서비스를 제공하는 방법 및 시스템

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130237204A1 (en) * 2009-02-17 2013-09-12 Lookout, Inc. System and method for uploading location information based on device movement
US20130103306A1 (en) * 2010-06-15 2013-04-25 Navitime Japan Co., Ltd. Navigation system, terminal apparatus, navigation server, navigation apparatus, navigation method, and computer program product
KR101143968B1 (ko) * 2011-05-06 2012-05-09 팅크웨어(주) 오픈형 poi에 대한 실시간 검색을 지원하는 시스템 및 방법
JP2013140164A (ja) * 2013-02-04 2013-07-18 Kyocera Corp 移動通信端末、地図情報提供サーバ及び地図表示システム

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20170004186A (ko) * 2015-07-01 2017-01-11 삼성전자주식회사 외부 전자 장치를 제어하기 위한 방법 및 그 방법을 처리하기 위한 전자 장치
KR20180026824A (ko) 2016-09-05 2018-03-14 주식회사 에피폴라 지역 분할과 파노라마 분할 기법을 이용한 위치기반 관심지점 정보 검색 시스템 및 방법
KR20180068932A (ko) 2018-06-12 2018-06-22 네이버랩스 주식회사 지역 분할과 파노라마 분할 기법을 이용한 위치기반 관심지점 정보 검색 시스템 및 방법

Also Published As

Publication number Publication date
US9816833B2 (en) 2017-11-14
US20150120180A1 (en) 2015-04-30
KR102160975B1 (ko) 2020-09-29

Similar Documents

Publication Publication Date Title
EP3358793B1 (en) Method for providing notification and electronic device thereof
KR102160975B1 (ko) 전자장치로 위치 기반 서비스를 제공하기 위한 방법 및 시스템
CN106055300B (zh) 用于控制声音输出的方法及其电子设备
US9832607B2 (en) Method of processing beacon of electronic device and electronic device thereof
CN107005807B (zh) 控制方法及其电子装置
KR102276272B1 (ko) 홈 스크린 페이지를 추가하는 전자 장치 및 방법
KR20150054413A (ko) 시선 데이터에 따라 컨텐츠의 위치를 결정하는 전자 장치 및 방법
KR20150025613A (ko) 애플리케이션의 관련 정보를 표시하는 전자 장치 및 방법
US20170289074A1 (en) Method for messenger operation based on location information and electronic device supporting the same
CN108351892B (zh) 用于提供对象推荐的电子装置和方法
KR20170071960A (ko) 전자 장치의 사용자 인터페이스 제공 방법 및 장치
EP3128771A1 (en) Electronic device and method for providing service in the electronic device
KR102290755B1 (ko) 인접 기반 정보를 제공하는 방법 및 장치
US9538248B2 (en) Method for sharing broadcast channel information and electronic device thereof
US10997268B2 (en) Method for providing push service using web push, and electronic device supporting same
KR20160101533A (ko) 지오펜스 설정 방법 및 그 전자 장치
KR20150057085A (ko) 전력 소모를 줄일 수 있는 전자 장치 및 방법
EP3425935B1 (en) Electronic apparatus and method for providing identification information
KR102460274B1 (ko) 연락처 정보 제공 방법 및 장치
US20160341569A1 (en) Method of calibrating geomagnetic sensor and electronic device adapted thereto
KR20150117968A (ko) 입력방향에 따라 기능을 전환하는 전자 장치 및 방법
US10075798B2 (en) Method for providing audio and electronic device adapted to the same
KR20150026257A (ko) 액세서리의 정보를 업 데이트하는 전자 장치 및 방법
KR102305117B1 (ko) 텍스트 입력 제어 방법 및 그 전자 장치
US20150052145A1 (en) Electronic device and method capable of searching application

Legal Events

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