KR102621649B1 - 사용자의 활동 패턴과 관련된 타인의 활동 정보를 제공하는 방법 및 그 전자 장치 - Google Patents

사용자의 활동 패턴과 관련된 타인의 활동 정보를 제공하는 방법 및 그 전자 장치 Download PDF

Info

Publication number
KR102621649B1
KR102621649B1 KR1020170017459A KR20170017459A KR102621649B1 KR 102621649 B1 KR102621649 B1 KR 102621649B1 KR 1020170017459 A KR1020170017459 A KR 1020170017459A KR 20170017459 A KR20170017459 A KR 20170017459A KR 102621649 B1 KR102621649 B1 KR 102621649B1
Authority
KR
South Korea
Prior art keywords
electronic device
information
user
users
processor
Prior art date
Application number
KR1020170017459A
Other languages
English (en)
Other versions
KR20180092105A (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 KR1020170017459A priority Critical patent/KR102621649B1/ko
Priority to EP18750905.4A priority patent/EP3545522A1/en
Priority to CN201880010948.1A priority patent/CN110326276B/zh
Priority to US15/892,276 priority patent/US10321272B2/en
Priority to PCT/KR2018/001712 priority patent/WO2018147658A1/en
Publication of KR20180092105A publication Critical patent/KR20180092105A/ko
Application granted granted Critical
Publication of KR102621649B1 publication Critical patent/KR102621649B1/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/023Services making use of location information using mutual or relative location information between multiple location based services [LBS] targets or of distance thresholds
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M1/00Substation equipment, e.g. for use by subscribers
    • H04M1/72Mobile telephones; Cordless telephones, i.e. devices for establishing wireless links to base stations without route selection
    • H04M1/724User interfaces specially adapted for cordless or mobile telephones
    • H04M1/72403User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61BDIAGNOSIS; SURGERY; IDENTIFICATION
    • A61B5/00Measuring for diagnostic purposes; Identification of persons
    • A61B5/0002Remote monitoring of patients using telemetry, e.g. transmission of vital signals via a communication network
    • A61B5/0015Remote monitoring of patients using telemetry, e.g. transmission of vital signals via a communication network characterised by features of the telemetry system
    • A61B5/0022Monitoring a patient using a global network, e.g. telephone networks, internet
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61BDIAGNOSIS; SURGERY; IDENTIFICATION
    • A61B5/00Measuring for diagnostic purposes; Identification of persons
    • A61B5/103Detecting, measuring or recording devices for testing the shape, pattern, colour, size or movement of the body or parts thereof, for diagnostic purposes
    • A61B5/11Measuring movement of the entire body or parts thereof, e.g. head or hand tremor, mobility of a limb
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61BDIAGNOSIS; SURGERY; IDENTIFICATION
    • A61B5/00Measuring for diagnostic purposes; Identification of persons
    • A61B5/103Detecting, measuring or recording devices for testing the shape, pattern, colour, size or movement of the body or parts thereof, for diagnostic purposes
    • A61B5/11Measuring movement of the entire body or parts thereof, e.g. head or hand tremor, mobility of a limb
    • A61B5/1118Determining activity level
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63BAPPARATUS FOR PHYSICAL TRAINING, GYMNASTICS, SWIMMING, CLIMBING, OR FENCING; BALL GAMES; TRAINING EQUIPMENT
    • A63B24/00Electric or electronic controls for exercising apparatus of preceding groups; Controlling or monitoring of exercises, sportive games, training or athletic performances
    • A63B24/0062Monitoring athletic performances, e.g. for determining the work of a user on an exercise apparatus, the completed jogging or cycling distance
    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16HHEALTHCARE INFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR THE HANDLING OR PROCESSING OF MEDICAL OR HEALTHCARE DATA
    • G16H20/00ICT specially adapted for therapies or health-improving plans, e.g. for handling prescriptions, for steering therapy or for monitoring patient compliance
    • G16H20/30ICT specially adapted for therapies or health-improving plans, e.g. for handling prescriptions, for steering therapy or for monitoring patient compliance relating to physical therapies or activities, e.g. physiotherapy, acupressure or exercising
    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16HHEALTHCARE INFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR THE HANDLING OR PROCESSING OF MEDICAL OR HEALTHCARE DATA
    • G16H40/00ICT specially adapted for the management or administration of healthcare resources or facilities; ICT specially adapted for the management or operation of medical equipment or devices
    • G16H40/60ICT specially adapted for the management or administration of healthcare resources or facilities; ICT specially adapted for the management or operation of medical equipment or devices for the operation of medical equipment or devices
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M1/00Substation equipment, e.g. for use by subscribers
    • H04M1/72Mobile telephones; Cordless telephones, i.e. devices for establishing wireless links to base stations without route selection
    • H04M1/724User interfaces specially adapted for cordless or mobile telephones
    • H04M1/72448User interfaces specially adapted for cordless or mobile telephones with means for adapting the functionality of the device according to specific conditions
    • H04M1/72454User interfaces specially adapted for cordless or mobile telephones with means for adapting the functionality of the device according to specific conditions according to context-related or environment-related conditions
    • 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/025Services making use of location information using location based information parameters
    • H04W4/027Services making use of location information using location based information parameters using movement velocity, acceleration information
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61BDIAGNOSIS; SURGERY; IDENTIFICATION
    • A61B2560/00Constructional details of operational features of apparatus; Accessories for medical measuring apparatus
    • A61B2560/02Operational features
    • A61B2560/0242Operational features adapted to measure environmental factors, e.g. temperature, pollution
    • A61B2560/0247Operational features adapted to measure environmental factors, e.g. temperature, pollution for compensation or correction of the measured physiological value
    • A61B2560/0257Operational features adapted to measure environmental factors, e.g. temperature, pollution for compensation or correction of the measured physiological value using atmospheric pressure
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61BDIAGNOSIS; SURGERY; IDENTIFICATION
    • A61B2560/00Constructional details of operational features of apparatus; Accessories for medical measuring apparatus
    • A61B2560/04Constructional details of apparatus
    • A61B2560/0475Special features of memory means, e.g. removable memory cards
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61BDIAGNOSIS; SURGERY; IDENTIFICATION
    • A61B2562/00Details of sensors; Constructional details of sensor housings or probes; Accessories for sensors
    • A61B2562/02Details of sensors specially adapted for in-vivo measurements
    • A61B2562/0219Inertial sensors, e.g. accelerometers, gyroscopes, tilt switches
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61BDIAGNOSIS; SURGERY; IDENTIFICATION
    • A61B2562/00Details of sensors; Constructional details of sensor housings or probes; Accessories for sensors
    • A61B2562/02Details of sensors specially adapted for in-vivo measurements
    • A61B2562/0223Magnetic field sensors
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61BDIAGNOSIS; SURGERY; IDENTIFICATION
    • A61B5/00Measuring for diagnostic purposes; Identification of persons
    • A61B5/103Detecting, measuring or recording devices for testing the shape, pattern, colour, size or movement of the body or parts thereof, for diagnostic purposes
    • A61B5/11Measuring movement of the entire body or parts thereof, e.g. head or hand tremor, mobility of a limb
    • A61B5/1112Global tracking of patients, e.g. by using GPS
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61BDIAGNOSIS; SURGERY; IDENTIFICATION
    • A61B5/00Measuring for diagnostic purposes; Identification of persons
    • A61B5/68Arrangements of detecting, measuring or recording means, e.g. sensors, in relation to patient
    • A61B5/6887Arrangements of detecting, measuring or recording means, e.g. sensors, in relation to patient mounted on external non-worn devices, e.g. non-medical devices
    • A61B5/6898Portable consumer electronic devices, e.g. music players, telephones, tablet computers
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61BDIAGNOSIS; SURGERY; IDENTIFICATION
    • A61B5/00Measuring for diagnostic purposes; Identification of persons
    • A61B5/72Signal processing specially adapted for physiological signals or for diagnostic purposes
    • A61B5/7271Specific aspects of physiological measurement analysis
    • A61B5/7282Event detection, e.g. detecting unique waveforms indicative of a medical condition
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61BDIAGNOSIS; SURGERY; IDENTIFICATION
    • A61B5/00Measuring for diagnostic purposes; Identification of persons
    • A61B5/74Details of notification to user or communication with user or patient ; user input means
    • A61B5/742Details of notification to user or communication with user or patient ; user input means using visual displays
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63BAPPARATUS FOR PHYSICAL TRAINING, GYMNASTICS, SWIMMING, CLIMBING, OR FENCING; BALL GAMES; TRAINING EQUIPMENT
    • A63B24/00Electric or electronic controls for exercising apparatus of preceding groups; Controlling or monitoring of exercises, sportive games, training or athletic performances
    • A63B24/0062Monitoring athletic performances, e.g. for determining the work of a user on an exercise apparatus, the completed jogging or cycling distance
    • A63B2024/0068Comparison to target or threshold, previous performance or not real time comparison to other individuals
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • G06F3/0482Interaction with lists of selectable items, e.g. menus
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • G06Q50/01Social networking
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M1/00Substation equipment, e.g. for use by subscribers
    • H04M1/72Mobile telephones; Cordless telephones, i.e. devices for establishing wireless links to base stations without route selection
    • H04M1/724User interfaces specially adapted for cordless or mobile telephones
    • H04M1/72469User interfaces specially adapted for cordless or mobile telephones for operating the device by selecting functions from two or more displayed items, e.g. menus or icons
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M2201/00Electronic components, circuits, software, systems or apparatus used in telephone systems
    • H04M2201/34Microprocessors
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M2201/00Electronic components, circuits, software, systems or apparatus used in telephone systems
    • H04M2201/36Memories
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M2201/00Electronic components, circuits, software, systems or apparatus used in telephone systems
    • H04M2201/38Displays
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M2250/00Details of telephonic subscriber devices
    • H04M2250/06Details of telephonic subscriber devices including a wireless LAN interface
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M2250/00Details of telephonic subscriber devices
    • H04M2250/12Details of telephonic subscriber devices including a sensor for measuring a physical value, e.g. temperature or motion
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/06Selective distribution of broadcast services, e.g. multimedia broadcast multicast service [MBMS]; Services to user groups; One-way selective calling services

Landscapes

  • Health & Medical Sciences (AREA)
  • Engineering & Computer Science (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Public Health (AREA)
  • Biomedical Technology (AREA)
  • Medical Informatics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Biophysics (AREA)
  • Signal Processing (AREA)
  • Heart & Thoracic Surgery (AREA)
  • Animal Behavior & Ethology (AREA)
  • Molecular Biology (AREA)
  • Pathology (AREA)
  • Veterinary Medicine (AREA)
  • Physics & Mathematics (AREA)
  • Surgery (AREA)
  • Epidemiology (AREA)
  • Primary Health Care (AREA)
  • Physiology (AREA)
  • Dentistry (AREA)
  • Oral & Maxillofacial Surgery (AREA)
  • Physical Education & Sports Medicine (AREA)
  • Human Computer Interaction (AREA)
  • Business, Economics & Management (AREA)
  • General Business, Economics & Management (AREA)
  • Environmental & Geological Engineering (AREA)
  • User Interface Of Digital Computer (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Artificial Intelligence (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Psychiatry (AREA)
  • Multimedia (AREA)
  • Telephone Function (AREA)

Abstract

본 발명의 다양한 실시예에 따르면, 전자 장치는, 통신 모듈, 사용자의 움직임을 감지하기 위한 적어도 하나의 센서, 상기 사용자의 활동의 패턴과 관련된 제1 종목 및 제2 종목에 대한 정보를 저장하기 위한 메모리, 및 프로세서를 포함하고, 상기 프로세서는, 상기 센서를 이용하여, 상기 사용자의 움직임과 관련된 제1 활동 정보를 획득하고, 상기 제1 활동 정보에 적어도 기반하여, 상기 제1 종목 및 상기 제2 종목 중 대응하는 하나의 종목을 선택하고, 상기 대응하는 하나의 종목과 관련된 하나 이상의 다른 사용자들의 움직임과 관련된 제2 활동 정보에 대응하는 데이터를 외부 장치로부터 상기 통신 모듈을 이용하여 수신하고, 및 상기 제1 활동 정보에 대응하는 데이터 및 상기 제2 활동 정보에 대응하는 데이터를 상기 전자 장치와 기능적으로 연결된 디스플레이를 이용하여 표시하도록 설정될 수 있다. 다른 실시예들도 더 포함될 수 있다.

Description

사용자의 활동 패턴과 관련된 타인의 활동 정보를 제공하는 방법 및 그 전자 장치{METHOD FOR PROVIDING ACTIVITY INFORMATION OF OTHER RELATED TO USER ACTIVITY PATTERN AND AN ELECTRONIC DEVICE THEREOF}
본 발명의 다양한 실시예는 사용자의 활동 패턴과 관련된 타인의 활동 정보를 제공하는 방법 및 그 전자 장치에 관한 것이다.
스마트 폰과 같은 휴대용 전자 장치가 점차 고성능화됨에 따라, 전자 장치를 통해 다양한 서비스들이 제공되고 있다. 예를 들어, 전화 통화, 문자 발신 등과 같은 기본적인 서비스에 더하여, 게임, 메신저, 문서 편집, 이미지/동영상 재생 및 편집 등 보다 복잡한 서비스들로 영역이 확장되고 있다.
나아가, 각종 측정 장비의 소형화 및 고성능화에 따라 휴대용 전자 장치는 사용자의 활동 및 운동에 대한 정보를 기록할 수 있게 되었다. 이에 따라, 사용자의 건강을 증진시키기 위해 활동 및 운동에 대한 정보를 측정 및 기록해주는 서비스가 제공되고 있다. 나아가, 이러한 서비스 내에서 사회적 관계를 이용한 상호 경쟁 및 격려를 통해 사용자의 건강을 유지하기 위한 서비스가 제공되고 있다.
본 발명의 다양한 실시예는 운동 관련 어플리케이션을 통해 경쟁 상대를 추천하기 위한 방법 및 그 장치를 제공할 수 있다.
본 발명의 다양한 실시예는 추천을 위한 활동 정보를 결정하기 위한 방법 및 그 전자 장치를 제공할 수 있다.
본 발명의 다양한 실시예는 활동 정보를 기반으로 경쟁 상대를 추천하기 위한 방법 및 그 전자 장치를 제공할 수 있다.
본 발명의 다양한 실시예는 위치 정보 또는 장소 정보를 기반으로 경쟁 상대를 추천하기 위한 방법 및 그 전자 장치를 제공할 수 있다.
본 발명의 다양한 실시예는 통신 이력 정보를 기반으로 경쟁 상대를 추천하기 위한 방법 및 그 전자 장치를 제공할 수 있다.
본 발명의 다양한 실시예는 기 저장된 정보를 기반으로 가상의 사용자를 경쟁 상대로서 추천하기 위한 방법 및 그 전자 장치를 제공할 수 있다.
본 발명의 다양한 실시예는 운동 관련 어플리케이션에서 그룹 내의 경쟁을 진행하기 위한 방법 및 그 전자 장치를 제공할 수 있다.
본 발명의 다양한 실시예는 운동 관련 어플리케이션에서 그룹 간 경쟁을 진행하기 위한 방법 및 그 전자 장치를 제공할 수 있다.
본 발명의 다양한 실시예에 따르면, 전자 장치는, 통신 모듈, 사용자의 움직임을 감지하기 위한 적어도 하나의 센서, 상기 사용자의 활동의 패턴과 관련된 제1 종목 및 제2 종목에 대한 정보를 저장하기 위한 메모리, 및 프로세서를 포함하고, 상기 프로세서는, 상기 센서를 이용하여, 상기 사용자의 움직임과 관련된 제1 활동 정보를 획득하고, 상기 제1 활동 정보에 적어도 기반하여, 상기 제1 종목 및 상기 제2 종목 중 대응하는 하나의 종목을 선택하고, 상기 대응하는 하나의 종목과 관련된 하나 이상의 다른 사용자들의 움직임과 관련된 제2 활동 정보에 대응하는 데이터를 외부 장치로부터 상기 통신 모듈을 이용하여 수신하고, 및 상기 제1 활동 정보에 대응하는 데이터 및 상기 제2 활동 정보에 대응하는 데이터를 상기 전자 장치와 기능적으로 연결된 디스플레이를 이용하여 표시하도록 설정될 수 있다.
본 발명의 다양한 실시예에 따르면, 전자 장치는, 통신 모듈, 복수의 사용자들의 제 1 종목 및 제 2 종목에 대한 활동 정보를 저장하기 위한 메모리, 및 프로세서를 포함하고, 상기 프로세서는, 상기 통신 모듈을 통하여, 외부 장치로부터 상기 제 1 종목 및 상기 제 2 종목 중 선택된 적어도 하나의 종목에 대한 정보를 수신하고, 상기 적어도 하나의 종목에 대한 정보에 적어도 기반하여, 상기 복수의 사용자들 중 적어도 하나의 사용자를 선택하고, 및 상기 통신 모듈을 통하여, 상기 활동 정보 중 상기 선택된 사용자에 대응하는 정보를 상기 외부 장치로 송신하도록 설정될 수 있다.
본 발명의 다양한 실시예에 따르면, 복수의 명령어들을 포함하는 비-일시적 컴퓨터 판독 가능한 기록 매체는, 상기 복수의 명령어들은 프로세서에 의해 실행되면, 적어도 하나의 센서를 통하여 사용자의 움직임을 감지하는 동작, 상기 사용자의 활동의 패턴과 관련된 제1 종목 및 제2 종목에 대한 정보를 메모리에 저장하는 동작 및 상기 센서를 이용하여, 상기 사용자의 움직임과 관련된 제1 활동 정보를 획득하고, 상기 제1 활동 정보에 기반하여, 상기 제1 종목 및 상기 제2 종목 중 대응하는 하나의 종목을 선택하고, 상기 대응하는 하나의 종목과 관련된 하나 이상의 다른 사용자들의 움직임과 관련된 제2 활동 정보에 대응하는 데이터를 외부 장치로부터 통신 모듈을 이용하여 수신하고, 상기 제1 활동 정보에 대응하는 데이터 및 상기 제2 활동 정보에 대응하는 데이터를 상기 프로세서와 기능적으로 연결된 디스플레이를 이용하여 표시하는 동작을 상기 프로세서가 수행하도록 설정될 수 있다.
본 발명의 다양한 실시예에 따르면, 전자 장치의 동작 방법은, 제1 활동 정보를 획득하는 동작, 제1 데이터를 외부 장치로 송신하는 동작, 상기 외부 장치로부터 하나 이상의 다른 사용자들의 움직임과 관련된 제2 활동 정보에 대응하는 데이터를 수신하는 동작, 및 상기 제1 활동 정보 및 상기 제2 활동 정보에 대응하는 데이터를 표시하는 동작을 포함할 수 있다.
다양한 실시예에 따른 방법 및 그 전자 장치는, 챌린지(challenge) 진행 시 경쟁 상대를 사용자가 직접 선택하는 과정 없이 경쟁 상대를 추천함으로써, 빠른 챌린지 진행을 유도할 수 있고, 전자 장치의 사용자의 운동 의욕을 고취시킬 수 있다.
도 1은 본 발명의 다양한 실시예에서의 네트워크 환경 내의 전자 장치를 도시한다.
도 2는 본 발명의 다양한 실시예에 따른 전자 장치의 블록도를 도시한다.
도 3은 본 발명의 다양한 실시예에 따른 프로그램 모듈의 블록도를 도시한다.
도 4는 본 발명의 다양한 실시예에 따른 전자 장치의 기능적 구성을 도시한다.
도 5는 본 발명의 다양한 실시예에 따른 서버의 기능적 구성을 도시한다.
도 6a는 본 발명의 다양한 실시예에 따른 전자 장치에서 추천된 경쟁 상대에 대한 정보를 수신하기 위한 흐름도를 도시한다.
도 6b는 본 발명의 다양한 실시예에 따른 전자 장치에서 추천된 경쟁 상대에 대한 정보 및 챌린지(challenge) 생성 화면 표시의 예를 도시한다.
도 7은 본 발명의 다양한 실시예에 따른 서버에서 경쟁 상대를 추천하기 위한 흐름도를 도시한다.
도 8a는 본 발명의 다양한 실시예에 따른 전자 장치에서 서버의 공간에 기반하여 추천된 경쟁 상대를 수신하기 위한 흐름도를 도시한다.
도 8b는 본 발명의 다양한 실시예에 따른 전자 장치에서 서버의 공간에 대한 화면 표시의 예를 도시한다.
도 8c는 본 발명의 다양한 실시예에 따른 전자 장치에서 서버의 공간에 기반한 경쟁 상대를 선택하기 위한 화면 표시의 예를 도시한다.
도 9는 본 발명의 다양한 실시예에 따른 서버에서 서버상 공간에 기반하여 경쟁 상대를 추천하기 위한 흐름도를 도시한다.
도 10은 본 발명의 다양한 실시예에 따른 서버에서 장소 정보에 기반하여 경쟁 상대를 추천하기 위한 흐름도를 도시한다.
도 11은 본 발명의 다양한 실시예에 따른 전자 장치에서 위치 정보에 기반하여 서버로부터 추천된 경쟁 상대에 대한 정보를 수신하기 위한 흐름도를 도시한다.
도 12는 본 발명의 다양한 실시예에 따른 전자 장치에서 장소 정보에 기반하여 추천된 경쟁 상대와 챌린지를 진행하기 위한 흐름도를 도시한다.
도 13은 본 발명의 다양한 실시예에 따른 전자 장치에서 장소 정보에 기반하여 다른 전자 장치와 챌린지를 진행하기 위한 흐름도를 도시한다.
도 14는 본 발명의 다양한 실시예에 따른 서버에서 통신 이력 정보에 기반하여 경쟁 상대를 추천하기 위한 흐름도를 도시한다.
도 15는 본 발명의 다양한 실시예에 따른 서버에서 통신 이력 정보에 기반하여 활동량이 유사한 경쟁 상대를 추천하기 위한 흐름도를 도시한다.
도 16은 본 발명의 다양한 실시예에 따른 서버에서 통신 이력 정보에 기반하여 최근 연락한 사용자를 경쟁 상대로 추천하기 위한 흐름도를 도시한다.
도 17은 본 발명의 다양한 실시예에 따른 서버에서 통신 이력 정보에 기반하여 최근 챌린지를 진행한 사용자를 경쟁 상대로 추천하기 위한 흐름도를 도시한다.
도 18은 본 발명의 다양한 실시예에 따른 서버에서 통신 이력 정보에 기반하여 연락처 그룹에서 경쟁 상대를 추천하기 위한 흐름도를 도시한다.
도 19는 본 발명의 다양한 실시예에 따른 서버에서 제1 데이터에 기반하여 활동량이 유사한 경쟁 상대를 추천하기 위한 흐름도를 도시한다.
도 20은 본 발명의 다양한 실시예에 따른 서버에서 통신 이력 정보에 기반하여 추출된 사용자들이 갖는 통신 이력 정보에 기반하여 경쟁 상대를 추천하기 위한 흐름도를 도시한다.
도 21은 본 발명의 다양한 실시예에 따른 서버에서 특정 모델에 기반하여 경쟁 상대를 추천하기 위한 흐름도를 도시한다.
도 22는 본 발명의 다양한 실시예에 따른 전자 장치에서 제1 활동 정보에 기반하여 가상의 사용자를 생성하기 위한 흐름도를 도시한다.
도 23a는 본 발명의 다양한 실시예에 따른 그룹 내의 대결에 기반하여 챌린지를 진행하기 위한 흐름도를 도시한다.
도 23b는 본 발명의 다양한 실시예에 따른 그룹 내의 대결 시 그룹 생성 UI(user interface) 및 승자 결정 방식에 대한 화면 표시의 구체적인 예를 도시한다.
도 23c는 본 발명의 다양한 실시예에 따른 그룹 내의 대결에 기반한 결과에 대한 화면 표시의 구체적인 예를 도시한다.
도 24a는 본 발명의 다양한 실시예에 따른 그룹 간의 대결에 기반하여 챌린지를 진행하기 위한 흐름도를 도시한다.
도 24b는 본 발명의 다양한 실시예에 따른 그룹 간의 대결 시 그룹 생성 UI 및 승리 그룹 결정 방식에 대한 화면 표시의 구체적인 예를 도시한다.
도 25는 본 발명의 다양한 실시예에 따른 전자 장치에서 챌린지를 진행하기 위한 흐름도를 도시한다.
도 26은 본 발명의 다양한 실시예에 따른 서버에서 챌린지를 진행하기 위한 흐름도를 도시한다.
이하, 본 문서의 다양한 실시예들이 첨부된 도면을 참조하여 기재된다. 실시예 및 이에 사용된 용어들은 본 문서에 기재된 기술을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 해당 실시예의 다양한 변경, 균등물, 및/또는 대체물을 포함하는 것으로 이해되어야 한다. 도면의 설명과 관련하여, 유사한 구성요소에 대해서는 유사한 참조 부호가 사용될 수 있다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함할 수 있다. 본 문서에서, "A 또는 B" 또는 "A 및/또는 B 중 적어도 하나" 등의 표현은 함께 나열된 항목들의 모든 가능한 조합을 포함할 수 있다. "제1," "제2," "첫째," 또는 "둘째,"등의 표현들은 해당 구성요소들을, 순서 또는 중요도에 상관없이 수식할 수 있고, 한 구성요소를 다른 구성요소와 구분하기 위해 사용될 뿐 해당 구성요소들을 한정하지 않는다. 어떤(예: 제1) 구성요소가 다른(예: 제2) 구성요소에 "(기능적으로 또는 통신적으로) 연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 상기 어떤 구성요소가 상기 다른 구성요소에 직접적으로 연결되거나, 다른 구성요소(예: 제3 구성요소)를 통하여 연결될 수 있다.
본 문서에서, "~하도록 구성된(또는 설정된)(configured to)"은 상황에 따라, 예를 들면, 하드웨어적 또는 소프트웨어적으로 "~에 적합한," "~하는 능력을 가지는," "~하도록 변경된," "~하도록 만들어진," "~를 할 수 있는," 또는 "~하도록 설계된"과 상호 호환적으로(interchangeably) 사용될 수 있다. 어떤 상황에서는, "~하도록 구성된 장치"라는 표현은, 그 장치가 다른 장치 또는 부품들과 함께 "~할 수 있는" 것을 의미할 수 있다. 예를 들면, 문구 "A, B, 및 C를 수행하도록 구성된(또는 설정된) 프로세서"는 해당 동작을 수행하기 위한 전용 프로세서(예: 임베디드 프로세서), 또는 메모리 장치에 저장된 하나 이상의 소프트웨어 프로그램들을 실행함으로써, 해당 동작들을 수행할 수 있는 범용 프로세서(예: CPU(central processing unit) 또는 AP(application processor))를 의미할 수 있다.
본 문서의 다양한 실시예들에 따른 전자 장치는, 예를 들면, 스마트폰, 태블릿 PC, 이동 전화기, 영상 전화기, 전자책 리더기, 데스크탑 PC, 랩탑 PC, 넷북 컴퓨터, 워크스테이션, 서버, PDA(personal data assistant), PMP(portable multimedia player), MP3(Motion Picture Experts Group-1 audio layer-3) 플레이어, 의료기기, 카메라, 또는 웨어러블 장치 중 적어도 하나를 포함할 수 있다. 웨어러블 장치는 액세서리형(예: 시계, 반지, 팔찌, 발찌, 목걸이, 안경, 콘택트 렌즈, 또는 머리 착용형 장치(head-mounted-device, HMD), 직물 또는 의류 일체형(예: 전자 의복), 신체 부착형(예: 스킨 패드 또는 문신), 또는 생체 이식형 회로 중 적어도 하나를 포함할 수 있다. 어떤 실시예들에서, 전자 장치는, 예를 들면, 텔레비전, DVD(digital video disk) 플레이어, 오디오, 냉장고, 에어컨, 청소기, 오븐, 전자레인지, 세탁기, 공기 청정기, 셋톱 박스, 홈 오토매이션 컨트롤 패널, 보안 컨트롤 패널, 미디어 박스(예: 삼성 HomeSyncTM, 애플TVTM, 또는 구글 TVTM), 게임 콘솔(예: XboxTM, PlayStationTM), 전자 사전, 전자 키, 캠코더, 또는 전자 액자 중 적어도 하나를 포함할 수 있다.
다른 실시예에서, 전자 장치는, 각종 의료기기(예: 각종 휴대용 의료측정기기(혈당 측정기, 심박 측정기, 혈압 측정기, 또는 체온 측정기 등), MRA(magnetic resonance angiography), MRI(magnetic resonance imaging), CT(computed tomography), 촬영기, 또는 초음파기 등), 네비게이션 장치, 위성 항법 시스템(GNSS(global navigation satellite system)), EDR(event data recorder), FDR(flight data recorder), 자동차 인포테인먼트 장치, 선박용 전자 장비(예: 선박용 항법 장치, 자이로 콤파스 등), 항공 전자기기(avionics), 보안 기기, 차량용 헤드 유닛(head unit), 산업용 또는 가정용 로봇, 드론(drone), 금융 기관의 ATM(automatic telling machine), 상점의 POS(point of sales), 또는 사물 인터넷 장치(예: 전구, 각종 센서, 스프링클러 장치, 화재 경보기, 온도조절기, 가로등, 토스터, 운동기구, 온수탱크, 히터, 보일러 등) 중 적어도 하나를 포함할 수 있다. 어떤 실시예에 따르면, 전자 장치는 가구, 건물/구조물 또는 자동차의 일부, 전자 보드(electronic board), 전자 사인 수신 장치(electronic signature receiving device), 프로젝터, 또는 각종 계측 기기(예: 수도, 전기, 가스, 또는 전파 계측 기기 등) 중 적어도 하나를 포함할 수 있다. 다양한 실시예에서, 전자 장치는 플렉서블하거나, 또는 전술한 다양한 장치들 중 둘 이상의 조합일 수 있다. 본 문서의 실시예에 따른 전자 장치는 전술한 기기들에 한정되지 않는다. 본 문서에서, 사용자라는 용어는 전자 장치를 사용하는 사람 또는 전자 장치를 사용하는 장치(예: 인공지능 전자 장치)를 지칭할 수 있다.
도 1을 참조하여, 다양한 실시예에서의, 네트워크 환경(100) 내의 전자 장치(101)가 기재된다. 전자 장치(101)는 버스(110), 프로세서(120), 메모리(130), 입출력 인터페이스(150), 디스플레이(160), 및 통신 인터페이스(170)를 포함할 수 있다. 어떤 실시예에서는, 전자 장치(101)는, 구성요소들 중 적어도 하나를 생략하거나 다른 구성요소를 추가적으로 구비할 수 있다. 버스(110)는 구성요소들(110-170)을 서로 연결하고, 구성요소들 간의 통신(예: 제어 메시지 또는 데이터)을 전달하는 회로를 포함할 수 있다. 프로세서(120)는, 중앙처리장치, 어플리케이션 프로세서, 또는 커뮤니케이션 프로세서(communication processor, CP) 중 하나 또는 그 이상을 포함할 수 있다. 프로세서(120)는, 예를 들면, 전자 장치(101)의 적어도 하나의 다른 구성요소들의 제어 및/또는 통신에 관한 연산이나 데이터 처리를 실행할 수 있다.
메모리(130)는, 휘발성 및/또는 비휘발성 메모리를 포함할 수 있다. 메모리(130)는, 예를 들면, 전자 장치(101)의 적어도 하나의 다른 구성요소에 관계된 명령 또는 데이터를 저장할 수 있다. 한 실시예에 따르면, 메모리(130)는 소프트웨어 및/또는 프로그램(140)을 저장할 수 있다. 프로그램(140)은, 예를 들면, 커널(141), 미들웨어(143), 어플리케이션 프로그래밍 인터페이스(application programing interface, API)(145), 및/또는 어플리케이션 프로그램(또는 "어플리케이션")(147) 등을 포함할 수 있다. 커널(141), 미들웨어(143), 또는 API(145)의 적어도 일부는, 운영 시스템으로 지칭될 수 있다. 커널(141)은, 예를 들면, 다른 프로그램들(예: 미들웨어(143), API(145), 또는 어플리케이션 프로그램(147))에 구현된 동작 또는 기능을 실행하는 데 사용되는 시스템 리소스들(예: 버스(110), 프로세서(120), 또는 메모리(130) 등)을 제어 또는 관리할 수 있다. 또한, 커널(141)은 미들웨어(143), API(145), 또는 어플리케이션 프로그램(147)에서 전자 장치(101)의 개별 구성요소에 접근함으로써, 시스템 리소스들을 제어 또는 관리할 수 있는 인터페이스를 제공할 수 있다.
미들웨어(143)는, 예를 들면, API(145) 또는 어플리케이션 프로그램(147)이 커널(141)과 통신하여 데이터를 주고받을 수 있도록 중개 역할을 수행할 수 있다. 또한, 미들웨어(143)는 어플리케이션 프로그램(147)으로부터 수신된 하나 이상의 작업 요청들을 우선 순위에 따라 처리할 수 있다. 예를 들면, 미들웨어(143)는 어플리케이션 프로그램(147) 중 적어도 하나에 전자 장치(101)의 시스템 리소스(예: 버스(110), 프로세서(120), 또는 메모리(130) 등)를 사용할 수 있는 우선 순위를 부여하고, 상기 하나 이상의 작업 요청들을 처리할 수 있다. API(145)는 어플리케이션(147)이 커널(141) 또는 미들웨어(143)에서 제공되는 기능을 제어하기 위한 인터페이스로, 예를 들면, 파일 제어, 창 제어, 영상 처리, 또는 문자 제어 등을 위한 적어도 하나의 인터페이스 또는 함수(예: 명령어)를 포함할 수 있다. 입출력 인터페이스(150)는, 예를 들면, 사용자 또는 다른 외부 기기로부터 입력된 명령 또는 데이터를 전자 장치(101)의 다른 구성요소(들)에 전달하거나, 또는 전자 장치(101)의 다른 구성요소(들)로부터 수신된 명령 또는 데이터를 사용자 또는 다른 외부 기기로 출력할 수 있다.
디스플레이(160)는, 예를 들면, 액정 디스플레이(liquid crystal display, LCD), 발광 다이오드(light emitting diode, LED) 디스플레이, 유기 발광 다이오드(organic light emitting diode, OLED) 디스플레이, 또는 마이크로 전자기계 시스템(MEMS) 디스플레이, 또는 전자종이(electronic paper) 디스플레이를 포함할 수 있다. 디스플레이(160)는, 예를 들면, 사용자에게 각종 콘텐츠(예: 텍스트, 이미지, 비디오, 아이콘, 및/또는 심볼 등)을 표시할 수 있다. 디스플레이(160)는, 터치 스크린을 포함할 수 있으며, 예를 들면, 전자 펜 또는 사용자의 신체의 일부를 이용한 터치, 제스쳐, 근접, 또는 호버링 입력을 수신할 수 있다. 통신 인터페이스(170)는, 예를 들면, 전자 장치(101)와 외부 장치(예: 제1 외부 장치(102), 제2 외부 장치(104), 또는 서버(106)) 간의 통신을 설정할 수 있다. 예를 들면, 통신 인터페이스(170)는 무선 통신 또는 유선 통신을 통해서 네트워크(162)에 연결되어 외부 장치(예: 제2 외부 장치(104) 또는 서버(106))와 통신할 수 있다.
무선 통신은, 예를 들면, LTE(Long Term Evolution), LTE-A(LTE Advance), CDMA(code division multiple access), WCDMA(wideband CDMA), UMTS(universal mobile telecommunications system), WiBro(Wireless Broadband), 또는 GSM(Global System for Mobile Communications) 등 중 적어도 하나를 사용하는 셀룰러 통신을 포함할 수 있다. 한 실시예에 따르면, 무선 통신은, 예를 들면, 도 1의 구성요소 164로 예시된 바와 같이, WiFi(wireless fidelity), 블루투스(bluetooth), LiFi(light fidelity), 블루투스 저전력(Bluetooth low energy, BLE), 지그비(Zigbee), NFC(near field communication), 자력 시큐어 트랜스미션(Magnetic Secure Transmission), 라디오 프리퀀시(radio frequency, RF), 또는 보디 에어리어 네트워크(body area network, BAN) 중 적어도 하나를 포함할 수 있다. 한 실시예에 따르면, 무선 통신은 GNSS를 포함할 수 있다. GNSS는, 예를 들면, GPS(Global Positioning System), Glonass(Global Navigation Satellite System), Beidou Navigation Satellite System(이하 “Beidou”) 또는 Galileo, the European global satellite-based navigation system일 수 있다. 이하, 본 문서에서는, “GPS”는 “GNSS”와 상호 호환적으로 사용될 수 있다. 유선 통신은, 예를 들면, USB(universal serial bus), HDMI(high definition multimedia interface), RS-232(recommended standard232), 전력선 통신, 또는 POTS(plain old telephone service) 등 중 적어도 하나를 포함할 수 있다. 네트워크(162)는 텔레커뮤니케이션 네트워크, 예를 들면, 컴퓨터 네트워크(예: LAN 또는 WAN), 인터넷, 또는 텔레폰 네트워크 중 적어도 하나를 포함할 수 있다.
제1 및 제2 외부 장치(102, 104) 각각은 전자 장치(101)와 동일한 또는 다른 종류의 장치일 수 있다. 다양한 실시예에 따르면, 전자 장치(101)에서 실행되는 동작들의 전부 또는 일부는 다른 하나 또는 복수의 전자 장치(예: 전자 장치(102,104), 또는 서버(106)에서 실행될 수 있다. 한 실시예에 따르면, 전자 장치(101)가 어떤 기능이나 서비스를 자동으로 또는 요청에 의하여 수행해야 할 경우에, 전자 장치(101)는 기능 또는 서비스를 자체적으로 실행시키는 대신에 또는 추가적으로, 그와 연관된 적어도 일부 기능을 다른 장치(예: 전자 장치(102, 104), 또는 서버(106))에게 요청할 수 있다. 다른 전자 장치(예: 전자 장치(102, 104), 또는 서버(106))는 요청된 기능 또는 추가 기능을 실행하고, 그 결과를 전자 장치(101)로 전달할 수 있다. 전자 장치(101)는 수신된 결과를 그대로 또는 추가적으로 처리하여 요청된 기능이나 서비스를 제공할 수 있다. 이를 위하여, 예를 들면, 클라우드 컴퓨팅, 분산 컴퓨팅, 또는 클라이언트-서버 컴퓨팅 기술이 이용될 수 있다. 다른 실시예에 따르면, 전자 장치(101) 및 다른 복수의 전자 장치(예: 전자 장치(102) 및/또는 전자 장치(104)) 사이의 본 발명의 다양한 실시예에 따른 기능 또는 서비스는 서버(106)를 경유하여 이루어질 수 있다. 또한, 단일 전자 장치(예: 전자 장치(101), 전자 장치(102) 또는 전자 장치(104)) 자체적으로 다양한 실시예에 따른 기능 또는 서비스를 수행할 수도 있다.
도 2는 다양한 실시예에 따른 전자 장치(201)의 블록도이다. 전자 장치(201)는, 예를 들면, 도 1에 도시된 전자 장치(101)의 전체 또는 일부를 포함할 수 있다. 전자 장치(201)는 하나 이상의 프로세서(예: AP)(210), 통신 모듈(220), 가입자 식별 모듈(224), 메모리(230), 센서 모듈(240), 입력 장치(250), 디스플레이(260), 인터페이스(270), 오디오 모듈(280), 카메라 모듈(291), 전력 관리 모듈(295), 배터리(296), 인디케이터(297), 및 모터(298)를 포함할 수 있다. 프로세서(210)는, 예를 들면, 운영 체제 또는 응용 프로그램을 구동하여 프로세서(210)에 연결된 다수의 하드웨어 또는 소프트웨어 구성요소들을 제어할 수 있고, 각종 데이터 처리 및 연산을 수행할 수 있다. 프로세서(210)는, 예를 들면, SoC(system on chip) 로 구현될 수 있다. 한 실시예에 따르면, 프로세서(210)는 GPU(graphic processing unit) 및/또는 이미지 신호 프로세서를 더 포함할 수 있다. 프로세서(210)는 도 2에 도시된 구성요소들 중 적어도 일부(예: 셀룰러 모듈(221))를 포함할 수도 있다. 프로세서(210) 는 다른 구성요소들(예: 비휘발성 메모리) 중 적어도 하나로부터 수신된 명령 또는 데이터를 휘발성 메모리에 로드)하여 처리하고, 결과 데이터를 비휘발성 메모리에 저장할 수 있다.
통신 모듈(220)(예: 통신 인터페이스(170))와 동일 또는 유사한 구성을 가질 수 있다. 통신 모듈(220)은, 예를 들면, 셀룰러 모듈(221), WiFi 모듈(223), 블루투스 모듈(225), GNSS 모듈(227), NFC 모듈(228) 및 RF 모듈(229)을 포함할 수 있다. 셀룰러 모듈(221)은, 예를 들면, 통신망을 통해서 음성 통화, 영상 통화, 문자 서비스, 또는 인터넷 서비스 등을 제공할 수 있다. 한 실시예에 따르면, 셀룰러 모듈(221)은 가입자 식별 모듈(예: SIM 카드)(224)을 이용하여 통신 네트워크 내에서 전자 장치(201)의 구별 및 인증을 수행할 수 있다. 한 실시예에 따르면, 셀룰러 모듈(221)은 프로세서(210)가 제공할 수 있는 기능 중 적어도 일부 기능을 수행할 수 있다. 한 실시예에 따르면, 셀룰러 모듈(221)은 커뮤니케이션 프로세서(CP)를 포함할 수 있다. 어떤 실시예에 따르면, 셀룰러 모듈(221), WiFi 모듈(223), 블루투스 모듈(225), GNSS 모듈(227) 또는 NFC 모듈(228) 중 적어도 일부(예: 두 개 이상)는 하나의 integrated chip(IC) 또는 IC 패키지 내에 포함될 수 있다. RF 모듈(229)은, 예를 들면, 통신 신호(예: RF 신호)를 송수신할 수 있다. RF 모듈(229)은, 예를 들면, 트랜시버, PAM(power amp module), 주파수 필터, LNA(low noise amplifier), 또는 안테나 등을 포함할 수 있다. 다른 실시예에 따르면, 셀룰러 모듈(221), WiFi 모듈(223), 블루투스 모듈(225), GNSS 모듈(227) 또는 NFC 모듈(228) 중 적어도 하나는 별개의 RF 모듈을 통하여 RF 신호를 송수신할 수 있다. 가입자 식별 모듈(224)은, 예를 들면, 가입자 식별 모듈을 포함하는 카드 또는 임베디드 SIM을 포함할 수 있으며, 고유한 식별 정보(예: ICCID(integrated circuit card identifier)) 또는 가입자 정보(예: IMSI(international mobile subscriber identity))를 포함할 수 있다.
메모리(230)(예: 메모리(130))는, 예를 들면, 내장 메모리(232) 또는 외장 메모리(234)를 포함할 수 있다. 내장 메모리(232)는, 예를 들면, 휘발성 메모리(예: DRAM, SRAM, 또는 SDRAM 등), 비휘발성 메모리(예: OTPROM(one time programmable ROM), PROM, EPROM, EEPROM, mask ROM, flash ROM, 플래시 메모리, 하드 드라이브, 또는 솔리드 스테이트 드라이브(solid state drive, SSD) 중 적어도 하나를 포함할 수 있다. 외장 메모리(234)는 플래시 드라이브(flash drive), 예를 들면, CF(compact flash), SD(secure digital), Micro-SD, Mini-SD, xD(extreme digital), MMC(multi-media card) 또는 메모리 스틱 등을 포함할 수 있다. 외장 메모리(234)는 다양한 인터페이스를 통하여 전자 장치(201)와 기능적으로 또는 물리적으로 연결될 수 있다.
센서 모듈(240)은, 예를 들면, 물리량을 계측하거나 전자 장치(201)의 작동 상태를 감지하여, 계측 또는 감지된 정보를 전기 신호로 변환할 수 있다. 센서 모듈(240)은, 예를 들면, 제스처 센서(240A), 자이로 센서(240B), 기압 센서(240C), 마그네틱 센서(240D), 가속도 센서(240E), 그립 센서(240F), 근접 센서(240G), 컬러(color) 센서(240H)(예: RGB(red, green, blue) 센서), 생체 센서(240I), 온/습도 센서(240J), 조도 센서(240K), 또는 UV(ultra violet) 센서(240M) 중의 적어도 하나를 포함할 수 있다. 추가적으로 또는 대체적으로, 센서 모듈(240)은, 예를 들면, 후각(e-nose) 센서, 일렉트로마이오그라피(EMG) 센서, 일렉트로엔씨팔로그램(EEG) 센서, 일렉트로카디오그램(ECG) 센서, IR(infrared) 센서, 홍채 센서 및/또는 지문 센서를 포함할 수 있다. 센서 모듈(240)은 그 안에 속한 적어도 하나 이상의 센서들을 제어하기 위한 제어 회로를 더 포함할 수 있다. 어떤 실시예에서는, 전자 장치(201)는 프로세서(210)의 일부로서 또는 별도로, 센서 모듈(240)을 제어하도록 구성된 프로세서를 더 포함하여, 프로세서(210)가 슬립(sleep) 상태에 있는 동안, 센서 모듈(240)을 제어할 수 있다.
입력 장치(250)는, 예를 들면, 터치 패널(252), (디지털) 펜 센서(254), 키(256), 또는 초음파 입력 장치(258)를 포함할 수 있다. 터치 패널(252)은, 예를 들면, 정전식, 감압식, 적외선 방식, 또는 초음파 방식 중 적어도 하나의 방식을 사용할 수 있다. 또한, 터치 패널(252)은 제어 회로를 더 포함할 수도 있다. 터치 패널(252)은 택타일 레이어(tactile layer)를 더 포함하여, 사용자에게 촉각 반응을 제공할 수 있다. (디지털) 펜 센서(254)는, 예를 들면, 터치 패널의 일부이거나, 별도의 인식용 쉬트를 포함할 수 있다. 키(256)는, 예를 들면, 물리적인 버튼, 광학식 키, 또는 키패드를 포함할 수 있다. 초음파 입력 장치(258)는 마이크(예: 마이크(288))를 통해, 입력 도구에서 발생된 초음파를 감지하여, 상기 감지된 초음파에 대응하는 데이터를 확인할 수 있다.
디스플레이(260)(예: 디스플레이(160))는 패널(262), 홀로그램 장치(264), 프로젝터(266), 및/또는 이들을 제어하기 위한 제어 회로를 포함할 수 있다. 패널(262)은, 예를 들면, 유연하게, 투명하게, 또는 착용할 수 있게 구현될 수 있다. 패널(262)은 터치 패널(252)과 하나 이상의 모듈로 구성될 수 있다. 홀로그램 장치(264)는 빛의 간섭을 이용하여 입체 영상을 허공에 보여줄 수 있다. 프로젝터(266)는 스크린에 빛을 투사하여 영상을 표시할 수 있다. 스크린은, 예를 들면, 전자 장치(201)의 내부 또는 외부에 위치할 수 있다. 인터페이스(270)는, 예를 들면, HDMI(272), USB(274), 광 인터페이스(optical interface)(276), 또는 D-sub(D-subminiature)(278)를 포함할 수 있다. 인터페이스(270)는, 예를 들면, 도 1에 도시된 통신 인터페이스(170)에 포함될 수 있다. 추가적으로 또는 대체적으로, 인터페이스(270)는, 예를 들면, MHL(mobile high-definition link) 인터페이스, SD카드/MMC(multi-media card) 인터페이스, 또는 IrDA(infrared data association) 규격 인터페이스를 포함할 수 있다.
오디오 모듈(280)은, 예를 들면, 소리와 전기 신호를 쌍방향으로 변환시킬 수 있다. 오디오 모듈(280)의 적어도 일부 구성요소는, 예를 들면, 도 1 에 도시된 입출력 인터페이스(145)에 포함될 수 있다. 오디오 모듈(280)은, 예를 들면, 스피커(282), 리시버(284), 이어폰(286), 또는 마이크(288) 등을 통해 입력 또는 출력되는 소리 정보를 처리할 수 있다. 카메라 모듈(291)은, 예를 들면, 정지 영상 및 동영상을 촬영할 수 있는 장치로서, 한 실시예에 따르면, 하나 이상의 이미지 센서(예: 전면 센서 또는 후면 센서), 렌즈, 이미지 시그널 프로세서(ISP), 또는 플래시(예: LED 또는 xenon lamp 등)를 포함할 수 있다. 전력 관리 모듈(295)은, 예를 들면, 전자 장치(201)의 전력을 관리할 수 있다. 한 실시예에 따르면, 전력 관리 모듈(295)은 PMIC(power management integrated circuit), 충전 IC, 또는 배터리 또는 연료 게이지를 포함할 수 있다. PMIC는, 유선 및/또는 무선 충전 방식을 가질 수 있다. 무선 충전 방식은, 예를 들면, 자기공명 방식, 자기유도 방식 또는 전자기파 방식 등을 포함하며, 무선 충전을 위한 부가적인 회로, 예를 들면, 코일 루프, 공진 회로, 또는 정류기 등을 더 포함할 수 있다. 배터리 게이지는, 예를 들면, 배터리(296)의 잔량, 충전 중 전압, 전류, 또는 온도를 측정할 수 있다. 배터리(296)는, 예를 들면, 충전식 전지 및/또는 태양 전지를 포함할 수 있다.
인디케이터(297)는 전자 장치(201) 또는 그 일부(예: 프로세서(210))의 특정 상태, 예를 들면, 부팅 상태, 메시지 상태 또는 충전 상태 등을 표시할 수 있다. 모터(298)는 전기적 신호를 기계적 진동으로 변환할 수 있고, 진동, 또는 햅틱 효과 등을 발생시킬 수 있다. 전자 장치(201)는, 예를 들면, DMB(digital multimedia broadcasting), DVB(digital video broadcasting), 또는 미디어플로(mediaFloTM) 등의 규격에 따른 미디어 데이터를 처리할 수 있는 모바일 TV 지원 장치(예: GPU)를 포함할 수 있다. 본 문서에서 기술된 구성요소들 각각은 하나 또는 그 이상의 부품(component)으로 구성될 수 있으며, 해당 구성요소의 명칭은 전자 장치의 종류에 따라서 달라질 수 있다. 다양한 실시예에서, 전자 장치(예: 전자 장치(201))는 일부 구성요소가 생략되거나, 추가적인 구성요소를 더 포함하거나, 또는, 구성요소들 중 일부가 결합되어 하나의 개체로 구성되되, 결합 이전의 해당 구성요소들의 기능을 동일하게 수행할 수 있다.
도 3은 다양한 실시예에 따른 프로그램 모듈의 블록도이다. 한 실시예에 따르면, 프로그램 모듈(310)(예: 프로그램(140))은 전자 장치(예: 전자 장치(101))에 관련된 자원을 제어하는 운영 체제 및/또는 운영 체제 상에서 구동되는 다양한 어플리케이션(예: 어플리케이션 프로그램(147))을 포함할 수 있다. 운영 체제는, 예를 들면, AndroidTM, iOSTM, WindowsTM, SymbianTM, TizenTM, 또는 BadaTM를 포함할 수 있다. 도 3을 참조하면, 프로그램 모듈(310)은 커널(320)(예: 커널(141)), 미들웨어(330)(예: 미들웨어(143)), API(360)(예: API(145), 및/또는 어플리케이션(370)(예: 어플리케이션 프로그램(147))을 포함할 수 있다. 프로그램 모듈(310)의 적어도 일부는 전자 장치 상에 프리로드 되거나, 외부 장치(예: 전자 장치(102, 104), 서버(106) 등)로부터 다운로드 가능하다.
커널(320)은, 예를 들면, 시스템 리소스 매니저(321) 및/또는 디바이스 드라이버(323)를 포함할 수 있다. 시스템 리소스 매니저(321)는 시스템 리소스의 제어, 할당, 또는 회수를 수행할 수 있다. 한 실시예에 따르면, 시스템 리소스 매니저(321)는 프로세스 관리부, 메모리 관리부, 또는 파일 시스템 관리부를 포함할 수 있다. 디바이스 드라이버(323)는, 예를 들면, 디스플레이 드라이버, 카메라 드라이버, 블루투스 드라이버, 공유 메모리 드라이버, USB 드라이버, 키패드 드라이버, WiFi 드라이버, 오디오 드라이버, 또는 IPC(inter-process communication) 드라이버를 포함할 수 있다. 미들웨어(330)는, 예를 들면, 어플리케이션(370)이 공통적으로 필요로 하는 기능을 제공하거나, 어플리케이션(370)이 전자 장치 내부의 제한된 시스템 자원을 사용할 수 있도록 API(360)를 통해 다양한 기능들을 어플리케이션(370)으로 제공할 수 있다. 한 실시예에 따르면, 미들웨어(330) 는 런타임 라이브러리(335), 어플리케이션 매니저(341), 윈도우 매니저(342), 멀티미디어 매니저(343), 리소스 매니저(344), 파워 매니저(345), 데이터베이스 매니저(346), 패키지 매니저(347), 커넥티비티 매니저(348), 노티피케이션 매니저(349), 로케이션 매니저(350), 그래픽 매니저(351), 또는 시큐리티 매니저(352) 중 적어도 하나를 포함할 수 있다.
런타임 라이브러리(335)는, 예를 들면, 어플리케이션(370)이 실행되는 동안에 프로그래밍 언어를 통해 새로운 기능을 추가하기 위해 컴파일러가 사용하는 라이브러리 모듈을 포함할 수 있다. 런타임 라이브러리(335)는 입출력 관리, 메모리 관리, 또는 산술 함수 처리를 수행할 수 있다. 어플리케이션 매니저(341)는, 예를 들면, 어플리케이션(370)의 생명 주기를 관리할 수 있다. 윈도우 매니저(342)는 화면에서 사용되는 GUI 자원을 관리할 수 있다. 멀티미디어 매니저(343)는 미디어 파일들의 재생에 필요한 포맷을 파악하고, 해당 포맷에 맞는 코덱을 이용하여 미디어 파일의 인코딩 또는 디코딩을 수행할 수 있다. 리소스 매니저(344)는 어플리케이션(370)의 소스 코드 또는 메모리의 공간을 관리할 수 있다. 파워 매니저(345)는, 예를 들면, 배터리의 용량, 온도, 또는 전원을 관리하고, 이 중 해당 정보를 이용하여 전자 장치의 동작에 필요한 전력 정보를 결정 또는 제공할 수 있다. 한 실시예에 따르면, 파워 매니저(345)는 바이오스(BIOS: basic input/output system)와 연동할 수 있다. 데이터베이스 매니저(346)는, 예를 들면, 어플리케이션(370)에서 사용될 데이터베이스를 생성, 검색, 또는 변경할 수 있다. 패키지 매니저(347)는 패키지 파일의 형태로 배포되는 어플리케이션의 설치 또는 갱신을 관리할 수 있다.
커넥티비티 매니저(348)는, 예를 들면, 무선 연결을 관리할 수 있다. 노티피케이션 매니저(349)는, 예를 들면, 도착 메시지, 약속, 근접성 알림 등의 이벤트를 사용자에게 제공할 수 있다. 로케이션 매니저(350)는, 예를 들면, 전자 장치의 위치 정보를 관리할 수 있다. 그래픽 매니저(351)는, 예를 들면, 사용자에게 제공될 그래픽 효과 또는 이와 관련된 사용자 인터페이스를 관리할 수 있다. 보안 매니저(352)는, 예를 들면, 시스템 보안 또는 사용자 인증을 제공할 수 있다. 한 실시예에 따르면, 미들웨어(330)는 전자 장치의 음성 또는 영상 통화 기능을 관리하기 위한 통화(telephony) 매니저 또는 전술된 구성요소들의 기능들의 조합을 형성할 수 있는 하는 미들웨어 모듈을 포함할 수 있다. 한 실시예에 따르면, 미들웨어(330)는 운영 체제의 종류 별로 특화된 모듈을 제공할 수 있다. 미들웨어(330)는 동적으로 기존의 구성요소를 일부 삭제하거나 새로운 구성요소들을 추가할 수 있다. API(360)는, 예를 들면, API 프로그래밍 함수들의 집합으로, 운영 체제에 따라 다른 구성으로 제공될 수 있다. 예를 들면, 안드로이드 또는 iOS의 경우, 플랫폼 별로 하나의 API 셋을 제공할 수 있으며, 타이젠의 경우, 플랫폼 별로 두 개 이상의 API 셋을 제공할 수 있다.
어플리케이션(370)은, 예를 들면, 홈(371), 다이얼러(372), SMS/MMS(373), IM(instant message)(374), 브라우저(375), 카메라(376), 알람(377), 컨택트(378), 음성 다이얼(379), 이메일(380), 달력(381), 미디어 플레이어(382), 앨범(383), 와치(384), 헬스 케어 어플리케이션(385)(예: 운동량 또는 혈당 등을 측정), 또는 환경 정보(예: 기압, 습도, 또는 온도 정보) 제공 어플리케이션을 포함할 수 있다. 한 실시예에 따르면, 어플리케이션(370)은 전자 장치와 외부 장치 사이의 정보 교환을 지원할 수 있는 정보 교환 어플리케이션을 포함할 수 있다. 정보 교환 어플리케이션은, 예를 들면, 외부 장치에 특정 정보를 전달하기 위한 노티피케이션 릴레이 어플리케이션, 또는 외부 장치를 관리하기 위한 장치 관리 어플리케이션을 포함할 수 있다. 예를 들면, 알림 전달 어플리케이션은 전자 장치의 다른 어플리케이션에서 발생된 알림 정보를 외부 장치로 전달하거나, 또는 외부 장치로부터 알림 정보를 수신하여 사용자에게 제공할 수 있다. 장치 관리 어플리케이션은, 예를 들면, 전자 장치와 통신하는 외부 장치의 기능(예: 외부 장치 자체(또는, 일부 구성 부품)의 턴-온/턴-오프 또는 디스플레이의 밝기(또는, 해상도) 조절), 또는 외부 장치에서 동작하는 어플리케이션을 설치, 삭제, 또는 갱신할 수 있다. 한 실시예에 따르면, 어플리케이션(370)은 외부 장치의 속성에 따라 지정된 어플리케이션(예: 모바일 의료 기기의 건강 관리 어플리케이션)을 포함할 수 있다. 한 실시예에 따르면, 어플리케이션(370)은 외부 장치로부터 수신된 어플리케이션을 포함할 수 있다. 프로그램 모듈(310)의 적어도 일부는 소프트웨어, 펌웨어, 하드웨어(예: 프로세서(210)), 또는 이들 중 적어도 둘 이상의 조합으로 구현(예: 실행)될 수 있으며, 하나 이상의 기능을 수행하기 위한 모듈, 프로그램, 루틴, 명령어 세트 또는 프로세스를 포함할 수 있다.
한 실시예에 따르면, 헬스 케어 어플리케이션(385)은 적어도 하나의 센서를 이용하여 사용자에 관련된 정보, 예를 들어, 동작에 따른 운동 종목, 사용자의 위치 및 종목별 기록 등의 정보를 수집할 수 있다. 특히, 본 발명의 다양한 실시예들에 따라, 서버(106)로부터 추천되거나 전자 장치(101)에 기 저장된 데이터에 기반하여 추천된 경쟁 상대에 대한 정보를 이용하여 다양한 기능들을 제공할 수 있다. 예를 들어, 헬스 케어 어플리케이션(385)은 전자 장치(101)의 활동량을 측정하거나 자동으로 인식하여 기록된 운동 기록 등을 포함하는 제1 데이터를 이용한 개인간 챌린지(challenge) 서비스를 제공할 수 있다. 또한, 헬스 케어 어플리케이션(385)은 사용자들의 그룹을 생성하고 제1 데이터를 사용자들의 전자 장치(101)로부터 수신하고, 이를 기반으로 그룹 챌린지 서비스를 제공할 수도 있다.
본 발명의 다양한 실시예에 따라, 전자 장치는 운동 관련 어플리케이션에서 경쟁 상대를 추천할 수 있다. 경쟁 상대의 추천을 위해 위치 정보, 장소 정보, 어플리케이션 사용자의 활동 정보, 사용자의 선택 입력 정보 등이 사용될 수 있다. 이하, 도 4 내지 도 24b를 참고하여, 본 발명의 다양한 실시예에 따른 경쟁 상대를 추천하기 위한 다양한 실시예들이 보다 상세히 설명된다.
먼저, 설명의 명확성 및 구체성을 위해, 이하 설명에서 사용되는 일부 용어들을 정의하면 다음과 같다.
‘챌린지’는 헬스 케어 어플리케이션(385) 상에서 전자 장치(101)의 사용자가 진행하는 경쟁을 의미할 수 있다. 예를 들어, 챌린지는 서로 다른 전자 장치(예: 전자 장치(102) 또는 전자 장치(104))의 사용자들 간에 경쟁, 전자 장치(101)의 데이터에 기반한 가상의 사용자와의 경쟁 및 그룹에 기반한 다수의 사용자들 간에 경쟁 등을 포함할 수 있다. 챌린지는 ‘도전’, ‘시합’, ‘경쟁’ 또는 이와 동등한 기술적 의미를 가지는 다른 용어로 지칭될 수 있다.
‘경쟁 상대’는 전자 장치(101)의 사용자가 챌린지를 진행하는 상대방을 의미할 수 있다. 예를 들어, 경쟁 상대는 서버(106)로부터 추천을 받은 사용자, 전자 장치(101)의 데이터에 기반한 가상의 사용자 또는 전자 장치(101)의 사용자가 직접 선택한 사용자를 포함할 수 있다. 예를 들어, 경쟁 상대는 동일 장소에 위치하는 사용자일 수도 있고, 활동 정보가 유사한 사용자일 수도 있다. 다른 예에서, 전자 장치(101)가 서버(106)로부터 경쟁 상대 리스트를 수신한 경우, 전자 장치(101)의 사용자가 리스트 중 선택한 사용자가 경쟁 상대가 될 수 있다.
‘그룹’은 동일한 헬스 케어 어플리케이션(385)을 사용하는 전자 장치의 사용자들의 집합이다. 일 예로, 그룹은 위치 또는 장소에 기반한 비슷한 지역의 사용자들의 집합일 수 있고 또는 서버 상의 공간에 기반한 공간 사용자들의 집합일 수 있다. 일 실시예에 따르면, 그룹 내의 사용자들 간에 경쟁을 통해 순위를 정할 수 있고, 그룹 간의 경쟁을 통해 그룹의 순위를 정할 수도 있다.
‘공간’은 경쟁 상태에 대한 조건을 특정하기 위한 가상의 장소를 의미할 수 잇다. 공간은 서버(106)에 의해 생성될 수 있고, 사용자에 의해 선택될 수 있다. 공간은 단일 계층 또는 다중 계층들로 구성될 수 있다. 예를 들어, 하나의 공간이 적어도 하나의 하위 공간을 포함할 수 있다. 일 예로, 공간은 운동 종목, 목표량, 나이, 성별, 장소 또는 그들의 조합으로 특정될 수 있다. 다른 예로, 그룹을 생성함에 따라, 공간이 생성될 수 있고, 그룹 생성에 따른 공간은 비공개 상태일 수 있다.
도 4는 본 발명의 다양한 실시예에 따른 전자 장치의 기능적 구성을 도시한다. 도 4는 전자 장치(101)의 구성을 예시한다.
도 4를 참고하면, 전자 장치(101)는, 예를 들어, 디스플레이(410), 센서 모듈(420), 메모리(430), 통신 모듈(440) 및 프로세서(450)(예: 도 1의 프로세서(120) 또는 도 2의 프로세서(210))를 포함할 수 있다.
디스플레이(410)는 전자 장치(101)의 화면 표시를 위한 장치일 수 있다. 예를 들어, 디스플레이(410)는 OLED(organic light emitting diode), QLED(quantum-dot light emitting diode), LCD(liquid crystal display) 중 적어도 하나로 구성될 수 있다. 디스플레이(410)는 도 1의 디스플레이(160), 도 2의 디스플레이(260)에 상응하는 구성요소일 수 있다. 한 실시예에 따르면, 디스플레이(410)는 헬스 케어 어플리케이션(385)상에서 서버(106)로부터 추천된 경쟁 상대에 관한 정보를 표시할 수 있다. 다른 실시예에서, 디스플레이(410)는 센서 모듈(420)로부터 획득한 전자 장치(101)의 사용자에 관련된 정보를 표시할 수 있다. 여기서, 디스플레이(410)를 통해 표시되는 정보는 장소 정보, 제1 데이터 및 제2 데이터, 챌린지 결과 등의 정보일 수 있다.
센서 모듈(420)은, 전자 장치(101) 또는 전자 장치(101)의 사용자의 움직임에 관한 정보를 획득할 수 있다. 센서 모듈(420)은, 도 2의 센서 모듈(240)과 동일하거나 유사한 구성을 포함할 수 있다. 예를 들어, 센서 모듈(420)은 가속도 센서를 포함할 수 있고, 스텝 카운트(step count)를 포함하는 활동량을 측정할 수 있다. 다른 예에서, 센서 모듈(420)은 고도계 센서를 포함할 수 있다. 센서 모듈(420)은 가속도 센서, 고도계 센서 이외에 자이로 센서, 지자기 센서 등을 포함하는 모션 센서를 포함할 수 있다. 그리고 센서 모듈(420)은 사용자의 생체 정보를 측정할 수 있는 적어도 하나의 생체 센서(예: 심박 센서)를 포함할 수 있다. 전자 장치(101)는 센서 모듈(420)에 포함된 적어도 하나의 센서를 이용하여 사용자의 움직임에 따라 생성되는 적어도 하나의 센서 데이터를 획득할 수 있다. 전자 장치(101)는 획득된 적어도 하나의 센서 데이터에 기반하여 사용자의 운동 상태(예: 운동 수행 시간, 운동 수행 횟수 등) 및 현재 액티비티(Activity) 상태를 판단할 수 있다. 예를 들어, 전자 장치(101)는 센서 모듈에 의해 획득된 적어도 하나의 센서 데이터에 기반하여 스쿼트, 달리기뿐만 아니라 수영, 자전거, 걷기, 하이킹 등을 식별할 수 있다.
메모리(430)는 전자 장치(101)의 동작을 위한 기본 프로그램, 응용 프로그램, 설정 정보 등의 데이터를 저장할 수 있다. 여기서, 응용 프로그램은 헬스 케어 어플리케이션(385)을 포함할 수 있다. 메모리(430)는 도 1의 메모리(130) 또는 도 2의 메모리(230)와 동일하거나 유사한 구성을 포함할 수 있다. 메모리(430)는 휘발성 메모리, 비휘발성 메모리 또는 휘발성 메모리와 비휘발성 메모리의 조합으로 구성될 수 있다. 메모리(430)는 프로세서(450)의 요청에 따라 저장된 데이터를 제공할 수 있다. 메모리(430)는 센서 모듈(420)을 통해 획득된 센서 데이터 및 센서 데이터에 기반한 사용자의 운동 상태 및 현재 액티비티 상태에 관한 정보 등을 저장할 수 있고, 통신 모듈(440)을 통해 서버(106)로부터 수신한 경쟁 상대 또는 그 리스트와 관련된 정보를 저장할 수 있다. 또한, 메모리(430)는 통신 모듈(440)을 통해 획득된 위치 정보, 장소 정보 등을 저장할 수 있다.
통신 모듈(440)은 외부 장치(예: 전자 장치(102) 또는 서버(106))로부터 신호를 수신하거나 외부 장치로 신호를 송신하는 기능을 수행할 수 있다. 통신 모듈(440)은 도 1의 통신 인터페이스(170) 또는 도 2의 통신 모듈(220)과 동일하거나 유사한 구성을 포함할 수 있다. 예를 들어, 전자 장치(101)는 통신 모듈(440)을 통해 서버(106)로부터 경쟁 상대 또는 경쟁 상대 리스트에 대한 정보를 수신할 수 있고, 센서 모듈(420)을 통해 획득한 전자 장치(101)의 사용자의 활동 정보와 같은 데이터를 통신 모듈을 통해 서버(106)로 전송할 수 있다. 또한, 통신 모듈(440)은 전자 장치(101)의 위치 정보 및 장소 정보를 획득할 수 있다. 예를 들어, 통신 모듈(440)은 GPS 모듈을 통해 사용자의 위치를 구체적인 위도 및 경도를 포함하는 좌표 정보의 형태로 획득할 수 있다. 이 경우, 장소 정보는 획득한 위치 정보에 기반하여 결정될 수 있다.
프로세서(450)는 전자 장치(101)의 전반적인 동작들을 제어할 수 있다. 예를 들어, 프로세서(450)는 디스플레이(410)의 화면 표시를 제어하고, 적어도 하나의 센서 모듈(420)들의 측정 동작들을 제어하고, 수신한 적어도 하나의 센서 데이터를 헬스 케어 어플리케이션(385)으로 송신할 수 있다. 예를 들어, 프로세서(450)는 사용자 운동 판단 모듈(452), 경쟁자 리스트 구성 모듈(454) 및 경쟁자 운동 데이터 관리 모듈(456)을 포함할 수 있다. 여기서, 사용자 운동 판단 모듈(452), 경쟁자 리스트 구성 모듈(454) 및 경쟁자 운동 데이터 관리 모듈(456)은 메모리(430)에 저장된 명령어 집합 또는 코드로서, 적어도 일시적으로 프로세서(450)에 상주된(resided) 명령어/코드 또는 명령어/코드를 저장한 저장 공간이거나, 또는, 프로세서(450)를 구성하는 회로(circuitry)의 일부일 수 있다.
사용자 운동 판단 모듈(452)은 전자 장치(101)의 사용자 동작에 따른 운동 종목을 판단할 수 있다. 사용자 운동 판단 모듈(452)은 적어도 하나의 센서를 통해 획득한 적어도 하나의 센서 데이터를 기반으로 운동 종목을 판단할 수 있다. 일 예로, 사용자 운동 판단 모듈(452)은 특정 운동 종목을 대표하는 센서 데이터를 데이터베이스에 저장할 수 있고, 획득한 적어도 하나의 센서 데이터로부터 데이터베이스와 가장 유사한 패턴을 가지는 운동 종목을 현재 전자 장치(101)의 사용자의 운동 종목으로 판단할 수 있다.
경쟁자 리스트 구성 모듈(454)은 전자 장치(101)의 사용자에 대해 추천되는 다른 사용자들을 리스트로 구성할 수 있다. 한 실시예에서, 전자 장치(101)의 프로세서(450)는 서버(106)로부터 경쟁 상대로서 다수의 사용자가 아닌 한 명의 사용자만 추천 받아 데이터를 수신할 수 있고, 이 경우, 위의 경쟁자 리스트 구성 모듈(454)은 동작하지 않을 수 있다. 다른 실시예에서, 전자 장치(101)의 프로세서(450)는 서버(106)로부터 경쟁 상대로서 다수의 사용자 데이터를 수신할 수 있고, 경쟁자 리스트 구성 모듈(454)은 다수의 사용자들을 리스트로 구성할 수 있다. 이 경우, 리스트의 정렬 순서는 다수의 사용자를 추출할 때의 추천 기준과 동일한 순서일 수 있다.
경쟁자 운동 데이터 관리 모듈(456)은 서버(106)로부터 수신한 경쟁 상대의 운동 데이터에 관한 정보를 관리할 수 있다. 일 예로, 전자 장치(101)의 프로세서(450)는 서버(106)의 통신 모듈(510)로부터 선택된 경쟁 상대에 관한 정보를 수신할 수 있고, 수신된 정보는 경쟁 상대의 운동 데이터를 포함할 수 있다. 다른 예에서, 전자 장치(101)의 프로세서(450)는 경쟁 상대의 운동 데이터를 메모리(430)로 전달함으로써, 경쟁 상대의 운동 데이터를 저장할 수 있다. 또한, 경쟁자 운동 데이터 관리 모듈(456)은 헬스 케어 어플리케이션(385)의 요청에 따라, 메모리(430)로부터 운동 데이터를 읽고, 디스플레이(410)를 통해 운동 데이터를 표시할 수 있다. 한 실시예에서, 프로세서(450)는 디스플레이(410)를 통해 경쟁 상대의 운동 데이터를 표시함으로써, 전자 장치(101)의 사용자가 챌린지를 진행하는지 여부를 확인할 수 있다.
본 발명의 다양한 실시 예에 따르면, 상기 전자 장치는, 사용자의 움직임을 감지하기 위한 적어도 하나의 센서, 상기 사용자의 활동의 패턴과 관련된 제1 종목 및 제2 종목에 대한 정보를 저장하기 위한 메모리 및 상기 적어도 하나의 센서, 메모리와 연결된 적어도 하나의 프로세서와, 상기 적어도 하나의 프로세서와 연결된 통신 회로를 포함할 수 있다. 상기 적어도 하나의 프로세서는, 상기 적어도 하나의 센서를 이용하여, 상기 전자 장치의 사용자의 움직임과 관련된 제1 활동 정보를 획득하고, 상기 제1 활동 정보에 적어도 기반하여, 상기 제1 종목 및 상기 제2 종목 중 대응하는 하나의 종목을 선택하고, 상기 대응하는 하나의 종목과 관련된 하나 이상의 다른 사용자들의 움직임과 관련된 제2 활동 정보에 대응하는 데이터를 외부 전자 장치로부터 상기 통신 모듈을 이용하여 수신하고, 상기 제1 활동 정보에 대응하는 데이터 및 상기 제2 활동 정보에 대응하는 데이터를 상기 전자 장치와 기능적으로 연결된 디스플레이를 이용하여 표시하도록 설정될 수 있다.
본 발명의 다양한 실시예에 따르면, 상기 적어도 하나의 프로세서는, 상기 수신하는 동작 이전에, 상기 통신 모듈을 이용하여 상기 제1 활동 정보에 대응하는 데이터를 상기 외부 전자 장치로 전송하도록 설정될 수 있다.
본 발명의 다양한 실시예에 따르면, 상기 적어도 하나의 프로세서는, 상기 전송하는 동작 이전에, 상기 전자 장치와 근거리에 있는 하나 이상의 외부 전자 장치들 중 상기 대응하는 하나의 종목과 관련된 상기 외부 전자 장치를 선택하도록 설정될 수 있다.
본 발명의 다양한 실시예에 따르면, 상기 프로세서는, 상기 적어도 하나의 센서 또는 상기 통신 모듈을 이용하여 상기 전자 장치의 위치 정보를 획득하고, 상기 위치 정보에 더 기반하여 상기 선택하는 동작을 수행할 수 있다.
본 발명의 다양한 실시예에 따르면, 상기 프로세서는, 상기 제1 활동 정보에 대응하는 데이터와 상기 제2 활동 정보에 대응하는 데이터를 비교한 결과를 상기 디스플레이를 이용하여 제공하도록 설정될 수 있다.
본 발명의 다양한 실시예에 따르면, 상기 하나 이상의 다른 사용자들 중 일부를 상기 사용자와 제1 그룹으로 지정하고 상기 하나 이상의 다른 사용자들 중 다른 일부를 제2 그룹으로 지정하도록 설정될 수 있다.
본 발명의 다양한 실시예에 따르면, 상기 적어도 하나의 센서는, 가속도 센서, 자이로 센서, 기압 센서, 지자기 센서, 모션 센서 및 GNSS 중 적어도 하나를 포함할 수 있다.
본 발명의 다양한 실시예에 따르면, 상기 프로세서는, 상기 수신하는 동작 이전에, 상기 통신 모듈을 이용하여 상기 전자 장치의 통신 이력 정보를 상기 외부 전자 장치로 전송하고 상기 통신 이력 정보에 더 기반하여, 상기 제2 활동 정보에 대응하는 데이터를 상기 외부 전자 장치로부터 수신하도록 설정될 수 있다.
도 5는 본 발명의 다양한 실시예에 따른 서버의 기능적 구성을 도시한다. 도 5는 서버(106)의 구성을 예시한다.
도 5를 참고하면, 서버(106)는, 예를 들어, 통신 모듈(510), 메모리(520) 및 프로세서(530)를 포함할 수 있고, 예를 들어 프로세서(530)는 경쟁 상대 추천 모듈(532)을 더 포함할 수 있다.
통신 모듈(510)은 다수의 전자 장치(예: 전자 장치(101) 또는 전자 장치(102))로부터 다수의 제1 데이터를 수신하거나, 다수의 전자 장치들로 다수의 제2 데이터를 송신할 수 있다. 통신 모듈(510)은 도 1의 통신 인터페이스(170), 도 2의 통신 모듈(220) 및 도 4의 통신 모듈(440)과 동일하거나 유사한 구성을 포함할 수 있다.
메모리(520)는 서버(106)의 동작을 위한 기본 프로그램, 응용 프로그램 등의 데이터를 저장할 수 있다. 메모리(520)는 휘발성 메모리, 비휘발성 메모리 또는 휘발성 메모리와 비휘발성 메모리의 조합으로 구성될 수 있다. 예를 들어, 메모리(520)는 서버(106)가 수신하는 제1 데이터를 저장할 수 있고, 기 저장된 경쟁 상대에 대한 정보 및 제2 데이터를 읽을 수 있다.
프로세서(530)는 서버(106)의 전반적인 동작들을 제어할 수 있다. 예를 들어, 프로세서(530)는 통신 모듈(510)을 제어함으로써, 제1 데이터의 수신을 제어할 수 있고, 사용자에 대한 정보 및/또는 제2 데이터의 송신을 제어할 수 있다. 다른 예로, 프로세서(530)는 메모리(520)를 제어함으로써, 제1 데이터, 제2 데이터 및 경쟁 상대에 대한 정보 등을 저장, 변경 및 삭제하는 동작을 수행할 수 있다. 추가적으로, 프로세서(530)는 경쟁 상대 추천 모듈(532)을 포함할 수 있다. 여기서, 경쟁 상대 추천 모듈(532)은 메모리(520)에 저장된 명령어 집합 또는 코드로서, 적어도 일시적으로 프로세서(530)에 상주된(resided) 명령어/코드 또는 명령어/코드를 저장한 저장 공간이거나, 또는, 프로세서(530)를 구성하는 회로(circuitry)의 일부일 수 있다.
경쟁 상대 추천 모듈(532)은 서버(106)가 전자 장치(101)로 추천하는 경쟁 상대를 결정할 수 있다. 예를 들어, 경쟁 상대 추천 모듈(532)은 다수의 추천 기준에 대한 알고리즘을 포함할 수 있다. 따라서, 전자 장치(101)의 사용자가 선택한 추천 기준에 의해 경쟁 상대를 추천할 수도 있고, 전자 장치(101)의 사용자가 추천 기준을 선택하지 않은 경우, 경쟁 상대 추천 모듈(532)이 임의로 추천 기준을 결정하고 경쟁 상대를 추천할 수도 있다. 어떤 실시예에서, 경쟁 상대 추천 모듈(532)은 다수의 추천 기준을 적용할 수 있다. 예를 들어, 경쟁 상대 추천 모듈(532)은 먼저 장소 정보에 기반하여 다수의 사용자들을 추출할 수 있고, 해당 다수의 사용자들에 관하여 활동량이 유사한 추천 기준을 적용할 수 있다.
본 발명의 다양한 실시예에 따르면, 상기 전자 장치는, 통신 모듈, 복수의 사용자들의 제 1 종목 및 제 2 종목에 대한 활동 정보를 저장하기 위한 메모리 및 프로세서를 포함하고, 상기 프로세서는, 상기 통신 모듈을 통하여, 외부 전자 장치로부터 상기 제 1 종목 및 상기 제 2 종목 중 선택된 적어도 하나의 종목에 대한 정보를 수신하고, 상기 적어도 하나의 종목에 대한 정보에 적어도 기반하여, 상기 복수의 사용자들 중 적어도 하나의 사용자를 선택하고, 및 상기 통신 모듈을 통하여, 상기 활동 정보 중 상기 선택된 사용자에 대응하는 정보를 상기 외부 전자 장치로 송신하도록 설정될 수 있다.
본 발명의 다양한 실시예에 따르면, 상기 프로세서는, 상기 선택된 사용자의 전자 장치로부터 상기 선택된 사용자의 움직임 관련된 데이터를 수신하고, 상기 수신한 데이터를 상기 외부 장치로 송신하도록 설정될 수 있다.
본 발명의 다양한 실시예에 따르면, 상기 프로세서는, 상기 외부 장치의 사용자가 선택한 기준 또는 상기 전자 장치에 미리 정의된 기준에 따라 상기 적어도 하나의 사용자를 선택하도록 설정될 수 있다.
본 발명의 다양한 실시예에 따르면, 상기 적어도 하나의 사용자는, 상기 외부 장치의 위치 정보, 장소 정보, 통신 이력 정보 또는 상기 외부 장치의 사용자와 관련된 활동 정보 중 적어도 하나에 기반하여 선택될 수 있다.
본 발명의 다양한 실시예에 따르면, 상기 프로세서는, 상기 복수의 사용자들 중 일부를 상기 외부 장치의 사용자와 제1 그룹으로 지정하고, 상기 복수의 사용자들 중 나머지 일부를 제2 그룹으로 지정하도록 설정될 수 있다.
본 발명의 다양한 실시예에 따르면, 상기 프로세서는, 상기 지정된 제 1 그룹 정보 및 제 2 그룹 정보에 대응하는 데이터를 상기 외부 장치로 전송하도록 설정될 수 있다.
도 6a는 본 발명의 다양한 실시예에 따른 전자 장치에서 추천된 경쟁 상대에 대한 정보를 수신하는 흐름도를 도시한다. 도 6a는 전자 장치(101)의 동작 방법을 예시한다.
도 6a를 참고하면, 동작 601에서, 전자 장치(101)(예: 프로세서(450))는 제1 데이터를 획득할 수 있다. 제1 데이터는 전자 장치(101)의 제1 활동 정보, 위치 정보, 장소 정보 및 통신 이력 정보 중 적어도 하나를 포함할 수 있다. 여기서, 제1 활동 정보는 전자 장치(101)의 사용자의 움직임과 관련되는 센서 데이터에 기반하여 획득될 수 있다. 예를 들어, 제1 활동 정보는 전자 장치(101)의 사용자가 수행하는 운동 종목 및 해당 운동 종목의 기록에 대한 정보를 포함할 수 있다. 여기서, 위치 정보는 전자 장치(101)가 소재한 위치를 나타내며, 예를 들어, 경도, 위도 또는 주소 중 적어도 하나를 포함할 수 있다. 여기서, 장소 정보는 전자 장치(101)가 소재한 위치를 PoI(point of interest)의 형태로 표현한 것으로, 건물명, 상호, 지역의 명칭, 또는 시설물의 명칭 중 적어도 하나를 포함할 수 있다. 예를 들어, 전자 장치(101)는 가속도 센서를 이용하여 사용자의 대한 속도를 측정할 수 있고, 고도계 센서를 이용하여 사용자의 정확한 신체의 변화를 측정할 수 있다. 한 실시예에서, 전자 장치(101)는 센서 데이터에 적어도 기반하여 운동 종목을 결정할 수 있다. 예를 들어, 전자 장치(101)는 운동 종목별 센서 데이터의 패턴을 메모리(430)를 통해 저장하여 데이터베이스를 생성할 수 있다. 전자 장치(101)는 센서 모듈(420)을 통해 획득한 센서 데이터를 데이터베이스와 비교하여 가장 패턴이 유사한 운동 종목을 결정할 수 있다. 이후, 전자 장치(101)는 결정된 운동 종목에 따라 구체적인 운동 기록을 획득할 수 있고, 운동 종목 및 운동 기록을 제1 활동 정보로 저장할 수 있다.
동작 603에서, 전자 장치(101)(예: 통신 모듈(440))는 제1 데이터를 외부 장치(예: 서버(106))로 송신할 수 있다. 다시 말해, 전자 장치(101)는 제1 활동 정보, 장소 정보, 위치 정보 및 통신 이력 정보 중 적어도 하나를 외부 장치(예: 서버(106))로 송신할 수 있다. 일 실시예에서, 전자 장치(101)는 제1 데이터 중 제1 활동 정보만을 송신할 수 있고, 이 경우, 전자 장치(101)는 예를 들면 걷기 종목 및 몇 걸음을 걸었는지 운동 기록을 외부 장치(예: 서버(106))로 송신할 수 있다.
동작 605에서, 전자 장치(101)(예: 통신 모듈(440))는 추천된 경쟁 상대에 대한 정보를 외부 장치(예: 서버(106))로부터 수신할 수 있다. 예를 들어, 경쟁 상대에 대한 정보는 해당 사용자의 챌린지 승률, 승패 기록, 종목별 운동 기록, 운동 기록의 평균 기록 및 최고 기록 중 적어도 하나를 포함할 수 있다. 다른 실시예에서, 경쟁 상대에 대한 정보는 경쟁 상대의 활동 정보를 포함하는 제2 데이터를 포함할 수 있다.
동작 607에서, 전자 장치(101)(예: 디스플레이(410))는 경쟁 상대에 대한 정보를 표시할 수 있다. 이에 따라, 전자 장치(101)의 사용자는 외부 장치(예: 서버(106))로부터 추천된 경쟁 상대에 대한 정보를 확인할 수 있고, 표시된 정보에 포함되는 종목별 운동 기록 등을 확인할 수 있다. 디스플레이(410)상에 표시되는 UI(user interface)(610)는 도 6b와 같이 구성될 수 있다. 도 6b를 참고하면, UI(610)는 과거의 챌린지 결과(612), 챌린지 정보(614), 챌린지 생성 여부를 문의하는 인터페이스(616)를 포함할 수 있다. 과거의 챌린지 결과(612)는 추천된 경쟁 상대에 대한 챌린지 기록으로서, 승리, 패배 및 무승부에 관한 누적된 기록을 포함할 수 있다. 챌린지 정보(614)는 추천된 경쟁 상대와 진행하는 챌린지에 대한 구체적인 정보로서, 운동 종목 및 목표량에 대한 정보를 포함할 수 있다. 전자 장치(101)는 챌린지 생성 여부를 문의하는 인터페이스(616)를 통해 사용자 결정을 검출할 수 있다. 예를 들어, 전자 장치(101)가 ‘예’입력을 검출하는 경우, 전자 장치(101)는 외부 장치(예: 서버(106))로 검출된 입력을 송신할 수 있고, 외부 장치(예: 서버(106))는 입력을 수신한 후, 추천된 경쟁 상대의 전자 장치로 요청에 대한 응답을 요구하는 신호를 송신할 수 있다. 반면, 전자 장치(101)가 ‘아니오’입력을 검출하는 경우, 전자 장치(101)는 외부 장치(예: 서버(106))로 검출된 입력을 송신할 수 있고, 외부 장치(예: 서버(106))는 입력을 수신한 후, 전자 장치(101)로 다른 경쟁 상대에 대한 정보를 송신할 수 있다.
본 발명의 다양한 실시예에 따르면, 전자 장치의 동작 방법은, 제1 활동 정보를 획득하는 동작, 제1 데이터를 외부 장치로 송신하는 동작, 상기 외부 장치로부터 하나 이상의 다른 사용자들의 움직임과 관련된 제2 활동 정보에 대응하는 데이터를 수신하는 동작, 및 상기 제1 활동 정보 및 상기 제2 활동 정보에 대응하는 데이터를 표시하는 동작을 포함할 수 있다.
도 7은 본 발명의 다양한 실시예에 따른 서버에서 경쟁 상대를 추천하기 위한 흐름도를 도시한다. 도 7은 서버(106)의 동작 방법을 예시한다.
도 7을 참고하면, 동작 701에서, 서버(106)(예: 통신 모듈(510))는 전자 장치(101)로부터 제1 데이터를 수신할 수 있다. 다시 말해, 서버(106)는 통신 모듈(510)을 통해 전자 장치(101)의 사용자에 대한 제1 활동 정보, 위치 정보, 장소 정보 및 통신 이력 정보 중 적어도 하나를 전자 장치(101)로부터 수신할 수 있다. 다만, 서버(106)는 헬스 케어 어플리케이션(385)을 사용하는 모든 전자 장치들과 송신 및 수신을 수행하므로, 서버(106)의 프로세서(530)는 모든 전자 장치의 사용자들에 관한 제1 데이터를 수신 및 저장할 수 있다.
동작 703에서, 서버(106)(예: 경쟁 상대 추천 모듈(532))는 제1 데이터에 기반하여 추출한 사용자들 중 경쟁 상대를 추천할 수 있다. 여기서, 서버(106)는 경쟁 상대 추천 모듈(532)을 통해 임의로 추천 기준을 선택할 수 있고, 또는 전자 장치(101)의 사용자가 입력한 추천 기준에 의할 수도 있다. 예를 들어, 전자 장치(101)의 사용자가 활동량이 비슷한 임의의 제3자를 추천 기준으로 선택한 경우, 서버(106)는 경쟁 상대 추천 모듈(532)을 통해 선택된 추천 기준에 따른 사용자들 중 경쟁 상대를 선택할 수 있다. 반면, 전자 장치(101)의 사용자가 선택한 추천 기준이 없는 경우, 서버(106)는 경쟁 상대 추천 모듈(532)을 통해 임의로 추천 기준을 결정하고, 결정된 추천 기준에 따른 사용자들 중 경쟁 상대를 추천할 수 있다.
동작 705에서, 서버(106)(예: 통신 모듈(510))는 추천된 경쟁 상대에 대한 정보를 전자 장치(101)로 송신할 수 있다. 즉, 서버(106)의 프로세서(530)는 경쟁 상대 추천 모듈(532)을 통해 추천된 경쟁 상대를 식별할 수 있고, 식별된 경쟁 상대에 대한 정보를 전자 장치(101)로 송신할 수 있다. 어떤 실시예에서, 서버(106)는 통신 모듈(510)을 통해 추천 기준에 따른 다수의 사용자 모두를 포함하는 경쟁 상대 리스트를 전자 장치(101)로 송신할 수 있다. 이 경우, 전자 장치(101)의 사용자는 리스트에 속하는 다수의 사용자들에 대한 정보에 기반하여 경쟁 상대 선택을 입력할 수 있다.
도 8a는 본 발명의 다양한 실시예에 따른 전자 장치에서 서버상의 공간에 기반하여 추천된 경쟁 상대를 수신하기 위한 흐름도를 도시한다. 도 8a는 전자 장치(101)의 동작 방법을 예시한다.
도 8a를 참고하면, 동작 801에서, 전자 장치(101)(예: 통신 모듈(440))는 외부 장치(예: 서버(106))로부터 공간에 대한 정보를 수신할 수 있다. 여기서, 공간은 물리적인 공간을 지칭하지 아니할 수 있고, 운동 종목 및 목표 활동량의 조합으로 특정되는 가상의 공간일 수 있다. 일 예로, 제1 공간은 1만보 이상 걷기 사용자들을 위한 공간일 수 있고, 제2 공간은 10km 이상 달리기 사용자들을 위한 공간일 수 있다. 즉, 전자 장치(101)는 통신 모듈(440)을 통해 사용자가 해당 외부 장치(예: 서버(106))상에 어떠한 공간들이 존재하는지 알 수 있도록 공간에 대한 정보를 수신할 수 있다.
동작 803에서, 전자 장치(101)(예: 디스플레이(410))는 공간에 대한 정보를 표시할 수 있다. 디스플레이(410)에 표시되는 정보는 목록의 형태를 가질 수 있으며, 구체적인 목록의 표시는 도 8b의 UI(810)일 수 있다. 도 8b를 참고하면, UI(810)는 구분 정보(812) 및 참여 인원 정보(814)를 포함할 수 있다. 구분 정보(812)는 전자 장치(101)의 사용자가 참여하는 공간에 대한 상세한 정보를 표시할 수 있고, 참여 인원 정보(814)는 각 공간에 참여중인 다수의 사용자들을 구체적인 숫자로 표시할 수 있다. 예를 들어, 도 8b에 따르면, 구분 정보(812)는 걷기 종목에서 1만 걸음을 목표로 하는 사용자들의 공간임을 나타낼 수 있고, 참여 인원 정보(814)는 10320명의 사용자가 참여하고 있음을 나타낼 수 있다. 따라서, 전자 장치(101)의 프로세서(450)는 구분 정보(812) 및 참여 인원 정보(814)에 기반한 사용자의 공간 선택에 대한 입력을 검출할 수 있다.
동작 805에서, 전자 장치(101)(예: 프로세서(450))는 사용자가 입력한 공간 정보를 외부 장치(예: 서버(106))로 송신할 수 있다. 즉, 전자 장치(101)의 사용자는 디스플레이(410)상에서 표시된 UI(810)를 통해 공간에 대한 선택을 입력할 수 있다. 전자 장치(101)는 사용자의 터치 등에 기반하여 입력을 검출할 수 있고, 검출된 입력을 서버(106)로 송신할 수 있다.
동작 807에서, 전자 장치(101)(예: 통신 모듈(440))는 외부 장치(예: 서버(106))로부터 추천된 경쟁 상대에 대한 정보를 수신할 수 있다. 예를 들어, 추천된 경쟁 상대에 대한 정보를 수신하기 전에, 외부 장치(예: 서버(106))는 공간 선택에 대한 사용자의 입력을 수신할 수 있고, 선택된 공간에 참여중인 다수의 사용자들 중 경쟁 상대를 추천할 수 있다. 따라서, 외부 장치(예: 서버(106))는 추천된 경쟁 상대에 대한 정보를 전자 장치(101)로 송신할 수 있다. 예를 들어, 전자 장치(101)의 사용자가 1만보 이상 걷기 공간을 선택한 경우, 전자 장치(101)는 통신 모듈(440)을 통해 해당 공간 내의 다수의 사용자들 중 경쟁 상대에 대한 정보를 수신할 수 있다. 한 실시예에서, 전자 장치(101)의 사용자가 선택한 추천 기준이 존재하는 경우, 전자 장치(101)는 해당 공간에 참여중인 다수의 사용자들 중 추천 기준에 따른 경쟁 상대에 대한 정보를 수신할 수 있다. 반면, 전자 장치(101)의 사용자가 선택한 추천 기준이 존재하지 않는 경우, 외부 장치(예: 서버(106))는 해당 공간에 참여중인 다수의 사용자들 중 임의로 추천된 경쟁 상대에 대한 정보를 수신할 수 있다. 다른 실시예에서, 외부 장치(예: 서버(106))는 해당 공간에 참여중인 다수의 사용자를 포함하는 경쟁 상대 리스트를 수신할 수도 있다. 도 8c를 참고하면, 전자 장치(101)는 통신 모듈(440)을 통해 경쟁 상대 리스트를 수신하고, 디스플레이(410)를 통해 참여 인원 목록에 대한 UI(820)를 표시할 수 있다. UI(820)는 전자 장치(101)가 검출한 사용자 입력 공간에 참여중인 다수의 사용자들을 목록 형태로 표시할 수 있고, 사용자 정보(822)를 포함할 수 있다. 여기서, 사용자 정보(822)는 다수의 사용자들 중 임의의 사용자에 연관된 정보일 수 있다. 예를 들어, 사용자 정보(822)는 해당 사용자의 과거의 챌린지 결과 및 활동 정보의 평균값을 가질 수 있다. 도 8c를 참고하면, 전자 장치(101) 는 사용자 정보(822)를 통해, 과거의 챌린지 결과(예: 승리 102회, 패배 18회, 무승부 1회) 및 활동 정보의 평균값(예: 걷기 종목에서 평균 12098 걸음)을 표시할 수 있다. 여기서, 활동 정보의 평균값은 다른 지표들로 대체될 수 있으며, 다른 지표들은 소모된 칼로리, 운동 시간, 최고 기록 등의 지표일 수 있다.
도 9는 본 발명의 다양한 실시예에 따른 서버에서 서버상 공간에 기반한 경쟁 상대를 추천하기 위한 흐름도를 도시한다. 도 9는 서버(106)의 동작 방법을 예시한다.
도 9를 참고하면, 동작 901에서, 서버(106)(예: 통신 모듈(510))는 전자 장치(101)로 공간에 대한 정보를 송신할 수 있다. 어떤 실시예에서, 서버(106)의 프로세서(530)는 공간들을 미리 생성할 수도 있고, 사용자가 공간의 생성을 요청하는 경우에 비로소 공간을 생성할 수도 있다. 다른 실시예에서, 서버(106)는 계층적인 구조를 가지는 다수의 공간들을 가질 수 있다.
동작 903에서, 서버(106)(예: 통신 모듈(510))는 전자 장치(101)로부터 선택된 공간에 대한 입력 정보를 수신할 수 있다. 즉, 전자 장치(101)는 공간에 대한 정보를 서버(106)로부터 수신하고, 디스플레이(410)상에 표시할 수 있다. 따라서, 전자 장치(101)는 디스플레이(410)상에 표시된 공간에 대한 정보 중 선택된 공간에 대한 사용자의 입력을 검출할 수 있고, 서버(106)는 통신 모듈(510)을 통해 그 입력 정보를 수신할 수 있다.
동작 905에서, 서버(106)(예: 경쟁 상대 추천 모듈(532))는 선택된 공간에 기반하여 경쟁 상대를 추천할 수 있다. 다시 말해, 서버(106)의 경쟁 상대 추천 모듈(532)은 전자 장치(101)의 사용자가 선택한 공간에 속하는 사용자들 중 추천 기준에 따라 경쟁 상대를 추천할 수 있다. 예를 들어, 전자 장치(101)의 사용자가 선택한 추천 기준이 있는 경우, 서버(106)는 해당 추천 기준에 따라 경쟁 상대를 식별할 수 있다. 반면, 전자 장치(101)의 사용자가 선택한 추천 기준이 없는 경우, 서버(106)는 임의로 추천 기준을 선택할 수 있고, 선택한 기준에 따른 경쟁 상대를 식별할 수 있다. 한 실시예에서, 서버(106)의 경쟁 상대 추천 모듈(532)은 사용자가 선택한 공간에 존재하는 다수의 사용자 모두를 포함하는 경쟁 상대 리스트를 추천할 수 있다.
도 10은 본 발명의 다양한 실시예에 따른 서버에서 장소 정보에 기반하여 경쟁 상대를 추천하기 위한 흐름도를 도시한다. 도 10은 서버(106)의 동작 방법을 예시한다.
도 10을 참고하면, 동작 1001에서 서버(106)(예: 프로세서(530))는 전자 장치(101)의 장소 정보를 수신 및 확인할 수 있다. 예를 들어, 전자 장치(101)의 프로세서(450)는 통신 모듈(440)에 포함되는 GPS 모듈, WiFi 모듈, 블루투스 모듈, NFC 모듈, 셀룰러 모듈 중 적어도 하나를 이용하여 현재 위치 정보를 획득할 수 있고, 서버(106)로 위치 정보를 송신할 수 있다. 또한, 전자 장치(101)의 프로세서(450)는 기 획득한 위치 정보에 기반하여, 전자 장치(101)의 사용자가 현재 위치한 장소 정보를 획득할 수 있고, 서버(106)의 통신 모듈(510)로 위치 정보를 송신할 수 있다. 예를 들어, 장소 정보는 적어도 하나의 POI(point of interest)를 지시할 수 있으며 예를 들어, 센트럴파크 헬스장, 광교 호수 공원, 올림픽 공원 등의 정보일 수 있다. 예를 들어, 특정 장소에 대한 일정 범위 내에 위치 정보가 존재하는 경우, 전자 장치(101)의 프로세서(450)는 사용자가 해당 특정 장소에 위치한다고 판단할 수 있다. 따라서, 서버(106)의 프로세서(530)는 전자 장치(101)의 사용자에 대한 위치 정보 및 장소 정보를 수신 및 확인할 수 있다.
동작 1003에서, 서버(106)(예: 프로세서(530))는 동일 장소 내에 다른 사용자의 활동 정보가 존재하는지 판단할 수 있다. 일 예로, 서버(106)의 프로세서(530)는 해당 장소 내에 다른 사용자의 활동 정보가 존재하지 않는다고 판단하는 경우, 본 알고리즘을 종료할 수 있다. 이 경우, 경쟁 상대 추천 모듈(532)은 위치 기반이 아닌 다른 추천 기준에 따라 전자 장치(101)의 사용자에게 경쟁 상대를 추천할 수 있다. 반면, 서버(106)의 프로세서(530)는 해당 장소 내에 다른 사용자의 활동 정보가 존재한다고 판단하는 경우, 전자 장치(101)의 사용자에게 경쟁 상대를 추천할 수 있다.
동작 1005에서, 서버(106)(예: 경쟁 상대 추천 모듈(532))는 동일 장소 내의 다른 사용자 중 경쟁 상대를 추천할 수 있다. 일 예에서, 서버(106)의 경쟁 상대 추천 모듈(532)은 동일 장소 내의 활동 정보를 갖는 다수의 사용자들을 경쟁 상대 리스트로서 생성하고 전자 장치(101)로 경쟁 상대 리스트에 대한 정보를 송신할 수 있다. 다른 예에서, 서버(106)의 경쟁 상대 추천 모듈(532)은 동일 장소 내의 활동 정보를 갖는 다수의 사용자들 중 한 명의 사용자를 경쟁 상대로 선택하고, 전자 장치(101)로 선택된 경쟁 상대에 대한 정보를 송신할 수 있다. 이 경우, 서버(106)의 경쟁 상대 추천 모듈(532)은 전자 장치(101)의 사용자가 선택한 추천 기준 또는 서버(106)가 임의로 선택한 추천 기준에 의할 수 있다.
도 11은 본 발명의 다양한 실시예에 따른 전자 장치에서 위치 정보에 기반하여 서버로부터 추천된 경쟁 상대에 대한 정보를 수신하기 위한 흐름도를 도시한다. 도 11은 전자 장치(101)의 동작 방법을 예시한다.
도 11을 참고하면, 동작 1101에서, 전자 장치(101)(예: 프로세서(450))는 사용자 위치 정보를 획득할 수 있다. 예를 들어, 전자 장치(101)의 프로세서(450)는 통신 모듈(440)을 이용하여 전자 장치(101)의 사용자가 위치하고 있는 구체적인 위도 및 경도에 관한 정보를 수신할 수 있다.
동작 1103에서, 전자 장치(101)(예: 프로세서(450))는 인접한 위치의 경쟁 상대를 선택할 수 있다. 즉, 전자 장치(101)는 통신 모듈(440)을 이용하여 획득한 위치 정보를 외부 장치(예: 서버(106))로 송신할 수 있고, 외부 장치(예: 서버(106))는 수신한 위치 정보에 기반하여 전자 장치(101)와 인접한 위치에 존재하는 다른 전자 장치들에 대한 정보를 전자 장치(101)로 송신할 수 있다. 이에 따라, 전자 장치(101)의 프로세서(450)는 인접한 위치에 존재하는 다른 전자 장치들에 대한 정보를 수신하고, 다른 전자 장치들을 식별할 수 있다. 여기서, 인접한 위치에 대한 범위는 전자 장치(101)의 사용자가 지정하는 임의의 값을 가질 수도 있고, 외부 장치(예: 서버(106))에 기본적으로 저장된 다른 임의의 값일 수도 있다. 또한, 다른 전자 장치들에 대한 정보는 인접한 다른 전자 장치들의 사용자들에 대한 정보일 수 있다.
동작 1105에서, 전자 장치(101)(예: 통신 모듈(440))는 경쟁 상대 선택에 대한 정보를 송신 및 경쟁 상대에 대한 제2 데이터를 수신할 수 있다. 전자 장치(101)는 사용자에 의해 선택된 경쟁 상대에 관한 입력 값을 외부 장치(예: 서버(106))로 송신하고, 그에 대응하는 선택된 경쟁 상대에 대한 제2 데이터를 수신할 수 있다. 다시 말해, 전자 장치(101)의 프로세서(450)는 경쟁 상대 선택에 관한 입력 값을 검출하고, 외부 장치(예: 서버(106))는 통신 모듈(510)을 통해 검출된 입력에 대한 정보를 송신할 수 있다. 외부 장치(예: 서버(106))는 경쟁 상대에 관한 입력 정보를 수신하고, 해당 경쟁 상대의 전자 장치로 응답을 요청하는 신호를 송신할 수 있다. 외부 장치(예: 서버(106))는 선택된 사용자의 승낙이 있으면 챌린지가 진행됨을 알 수 있다. 따라서, 챌린지가 진행되는 경우 외부 장치(예: 서버(106))는 통신 모듈(510)을 통해 선택된 사용자에 대한 제2 데이터를 전자 장치(101)로 송신할 수 있다.
동작 1107에서, 전자 장치(101)(예: 디스플레이(410))는 운동량을 표시할 수 있다. 다시 말해, 전자 장치(101)는 통신 모듈(440)을 통해 선택된 사용자에 대한 제2 데이터를 수신하고, 센서 모듈(420)을 통해 사용자에 대한 제1 데이터를 획득할 수 있다. 따라서, 전자 장치(101)의 프로세서(450)는 디스플레이(410)를 통해 제1 데이터 및 제2 데이터에 기반한 운동량을 표시할 수 있다. 어떤 실시예에서, 전자 장치(101)의 디스플레이(410)는 현재 사용자의 위치와 운동 정보에 맞게 순서를 변경하여 표시할 수 있다. 예를 들어, 전자 장치(101)의 디스플레이(410)는 현재 사용자의 위치가 사무실인 경우, 인접한 위치의 경쟁 상대들(예: 사무실 동료들)과의 걷기 종목에 대한 운동량 및 순위를 디스플레이(410)를 통해 표시할 수 있다. 다른 예로, 전자 장치(101)의 디스플레이(410)는 현재 사용자의 위치가 수영장인 경우, 인접한 위치의 경쟁 상대들과의 수영 종목에 대한 운동량 및 순위를 디스플레이(410)를 통해 표시할 수 있다.
도 12는 본 발명의 다양한 실시예에 따른 전자 장치에서 장소 정보에 기반하여 추천된 경쟁 상대와 챌린지를 진행하기 위한 흐름도를 도시한다. 도 12는 전자 장치(101)의 동작 방법을 예시한다.
도 12를 참고하면, 동작 1201에서, 전자 장치(101)(예: 프로세서(450))는 사용자의 위치 정보를 획득할 수 있다. 한 실시예에서, 전자 장치(101)의 프로세서(450)는 헬스 케어 어플리케이션(385)이 실행되는 경우 비로소 위치 정보를 획득할 수 있고, 이 경우, 배터리 소모량이 경감될 수 있다. 다른 실시예에서, 전자 장치(101)의 프로세서(450)는 일정 주기마다 위치 정보를 획득할 수 있다. 이 경우, 전자 장치(101)의 프로세서(450)는 헬스 케어 어플리케이션(385)의 실행 여부에 관계 없이 일정 주기마다 통신 모듈(440)을 이용하여 위치 정보를 확인할 수 있으며, 해당 일정 주기는 미리 설정된 값일 수 있고, 전자 장치(101)의 사용자가 설정한 값일 수 있다.
동작 1203에서, 전자 장치(101)(예: 프로세서(450))는 사용자의 장소 정보를 확인할 수 있다. 다시 말해, 전자 장치(101)의 프로세서(450)는 기 획득한 위치 정보에 기반하여 장소 정보를 획득할 수 있다. 어떤 실시예에서, 전자 장치(101)의 프로세서(450)는 현재 위치 정보에 대응하는 장소 정보를 획득하지 못할 수 있고, 이 경우, 장소 정보 획득 실패를 알리는 알림을 디스플레이(410)를 통해 표시할 수 있다. 다른 실시예에서, 전자 장치(101)의 프로세서(450)는 위치 정보에 기반하지 않고 장소 정보를 획득할 수 있다. 예를 들어, 전자 장치(101)의 프로세서(450)는 큐알코드(QRcode), 바코드(barcode) 또는 RF 태그(예: NFC tag)에 기반하여 장소 정보를 획득할 수 있고, 이 경우, 큐알코드 또는 바코드는 임의의 장소 내에 물리적으로 인쇄될 수 있으므로, 전자 장치(101)의 프로세서(450)는 전자 장치(101)의 사용자가 해당 장소에 존재한다고 판단할 수 있다. 또는, 전자 장치(101)(예: 프로세서(450))는 카메라 모듈(미도시)을 이용하여 현재 위치한 장소의 적어도 일 영역이 포함되는 적어도 하나의 이미지를 획득할 수 있다. 전자 장치(101)의 프로세서(450)는 획득한 적어도 하나의 이미지에 기반하여 장소 정보를 획득할 수 있다. 예를 들어, 전자 장치(101)의 프로세서(450)는 획득한 적어도 하나의 이미지를 통신 모듈을 통해 외부 장치로 전달할 수 있으며, 외부 장치로부터 적어도 하나의 이미지에 기반하여 획득된 장소 정보를 수신할 수 있다. 또는, 전자 장치(101)의 프로세서(450)는 메모리에 저장된 적어도 하나의 데이터와 획득한 적어도 하나의 이미지의 비교를 통해 장소 정보를 획득할 수도 있다.
동작 1205에서, 전자 장치(101)(예: 프로세서(450))는 센서 모듈을 이용하여 사용자의 활동 상태를 획득하고, 통신 모듈(440)을 이용하여 장소 정보와 사용자의 활동 상태를 포함하는 제1 데이터를 외부 장치(예: 서버(106))로 송신할 수 있다. 예를 들어, 프로세서(450)는 센서 모듈(420)을 통해 획득한 센서 데이터를 메모리(430)에 저장된 데이터베이스와 비교하여 정확한 운동 종목을 결정할 수 있다. 다만, 전자 장치(101)는 구체적인 운동 기록은 측정하지 아니할 수 있으며, 활동 정보와 활동 상태는 구분될 수 있다.
동작 1207에서, 전자 장치(101)(예: 통신 모듈(440) 및 프로세서(450))는 추천된 경쟁 상대에 대한 정보를 수신하고, 챌린지를 진행할 수 있다. 예를 들어, 추천된 경쟁 상대에 대한 정보는 전자 장치(101)가 현재 위치한 장소에서 사용자의 활동과 동일한 활동을 수행하는 다른 사용자들의 활동 정보를 포함할 수 있다. 어떤 실시예에서, 통신 모듈(440)은 특정 공간에 접속한 다수의 사용자들에 대한 정보를 수신할 수 있다. 서버(106)의 프로세서(530)는 사용자의 요청에 관계없이, 특정 위치 또는 특정 장소에 대응되는 공간을 기 생성할 수 있고, 공간은 물리적 공간을 지칭하지 않을 수 있다. 서버(106)의 통신 모듈(510)이 전자 장치(101)의 사용자로부터 해당 위치 또는 해당 장소 정보를 수신하는 경우, 서버(106)의 경쟁 상대 추천 모듈(532)은 해당 공간에 참여중인 다수의 사용자들 중 경쟁 상대를 추천할 수 있다. 다른 실시예에서, 서버(106)의 경쟁 상대 추천 모듈(532)은 수신한 위치 정보 또는 장소 정보에 대한 ‘명예의 전당’에 등록된 사용자들을 경쟁 상대 리스트로 추천할 수 있다. 이 경우, 서버(106)의 프로세서(530)는 통신 모듈(510)을 통해 명예의 전당에 등록된 모든 사용자에 대한 정보를 전자 장치(101)의 통신 모듈(440)로 송신할 수 있다. 다수의 사용자들 중 경쟁 상대를 추천하는 기준은 전자 장치(101)의 사용자가 선택한 추천 기준 또는 경쟁 상대 추천 모듈(532)에 의해 임의로 선택된 추천 기준일 수 있다. 전자 장치(101)의 사용자는 수신한 추천 상대에 대한 정보를 통해 챌린지의 진행 여부를 결정할 수 있다. 일 예로, 챌린지를 진행하고 싶은 경우, 프로세서(450)는 사용자의 챌린지 진행에 대한 입력을 검출할 수 있고, 전자 장치(101)의 통신 모듈(440)을 통해 챌린지 진행 요청의 메시지를 서버(106)의 통신 모듈(510)로 송신할 수 있다. 서버(106)는 통신 모듈(510)을 통해 추천된 경쟁 상대의 전자 장치로 승낙 여부를 문의하는 메시지를 송신할 수 있고, 승낙에 대한 응답을 수신한 경우, 챌린지가 진행될 수 있다. 다른 실시예에서, 통신 모듈(440)은 사용자가 위치하는 장소에 대한 부가적인 정보 및 경쟁 상대에 대한 정보를 수신할 수 있다. 예를 들어, 통신 모듈(440)은 조깅을 많이 하는 공원의 특정 코스에 대한 경로를 수신할 수 있고, 해당 경로를 이용한 다수의 사용자들에 대한 정보를 수신할 수 있다.
동작 1209에서, 전자 장치(101)(예: 통신 모듈(440))는 경쟁 상대에 대한 제2 데이터를 수신할 수 있다. 즉, 경쟁 상대가 챌린지 요청을 승낙하는 경우, 경쟁 상대의 전자 장치는 서버(106)로 해당 장치의 제1 데이터를 송신할 수 있고, 서버(106)는 통신 모듈(510)을 통해 수신한 제1 데이터 중 제1 활동 정보를 제2 데이터로서 전자 장치(101)로 송신할 수 있다. 다른 실시예에서, 경쟁은 경쟁 상대의 현재가 아닌 과거의 활동 정보에 기반하여 수행될 수 있다. 이 경우, 동작 1209에서 수신되는 제2 데이터는 실시간으로 획득되는 활동 정보가 아닌, 이전에 획득 및 저장된 활동 정보일 수 있다. 이 경우, 서버(106)는 과거에 수신한 경쟁 상대의 활동 정보를 제2 데이터로서 송신할 수 있다.
동작 1211에서, 전자 장치(101)(예: 프로세서(450))는 센서 모듈(420)을 통해 제1 데이터를 갱신할 수 있다. 즉, 챌린지가 시작되면, 프로세서(450)는 센서 모듈(420)을 통해 센서 데이터를 획득할 수 있고, 운동 종목에 따라 센서 데이터를 해석함으로써 구체적인 운동 기록을 획득할 수 있다. 따라서, 프로세서(450)는 챌린지 진행에 따른 제1 활동 정보를 통해 제1 데이터를 갱신할 수 있다.
동작 1213에서, 전자 장치(101)(예: 프로세서(450))는 제1 데이터 및 제2 데이터를 비교할 수 있다. 예를 들어, 프로세서(450)는 제1 데이터에 포함된 제1 활동 정보 및 경쟁 상대의 제2 데이터에 포함된 제2 활동 정보를 비교할 수 있다. 예를 들어, 통신 모듈(440)을 통해 공원의 특정 코스에 대한 정보 및 경쟁 상대에 대한 정보를 수신한 경우, 프로세서(450)는 해당 경로를 가장 빨리 달리는 사용자가 누구인지 활동 정보를 비교할 수 있다.
동작 1215에서, 전자 장치(101)(예: 디스플레이(410))는 비교 결과를 표시할 수 있다. 디스플레이(410)는 제1 활동 정보 및 제2 활동 정보에 기반하여 구체적인 수치를 비교 결과와 함께 표시할 수도 있고, 단순히 승리 또는 패배 중에 있음을 표시할 수도 있다. 이를 통해, 전자 장치(101)의 사용자는 실시간으로 챌린지 진행 상황을 알 수 있다.
도 13은 본 발명의 다양한 실시예에 따른 전자 장치에서 장소 정보에 기반하여 다른 전자 장치와 챌린지를 진행하기 위한 흐름도를 도시한다. 도 13은 전자 장치(101)의 동작 방법을 예시한다.
도 13을 참고하면, 동작 1301에서, 전자 장치(101)(예: 프로세서(450))는 사용자의 위치 정보를 획득할 수 있다. 예를 들어, 전자 장치(101)는 통신 모듈(440)을 통해 사용자가 위치한 정확한 위도 및 경도에 대한 좌표 정보를 획득할 수 있다.
동작 1303에서, 전자 장치(101)(예: 프로세서(450))는 사용자의 장소 정보를 획득할 수 있다. 전자 장치(101)의 프로세서(450)는 기 획득한 위치 정보에 기반하여 장소 정보를 획득할 수 있다. 예를 들어, 기 획득한 위치 정보가 포함되는 임의의 장소가 존재하는 경우, 전자 장치(101)의 프로세서(450)는 전자 장치(101)의 사용자가 해당 장소에 위치한다고 결정할 수 있다. 다른 예로, 전자 장치(101)의 프로세서(450)는 큐알코드(QRcode), 바코드(barcode) 또는 RF태그(예: NFC tag)를 통해 장소 정보를 획득할 수도 있다. 임의의 장소에 물리적으로 인쇄된 큐알코드, 바코드 또는 RF태그로부터 위치 정보를 획득하는 경우, 전자 장치(101)의 프로세서(450)는 위치 정보를 통한 분석에 의하지 않고, 전자 장치(101)의 사용자가 해당 장소에 위치함을 판단할 수 있다.
동작 1305에서, 전자 장치(101)(예: 프로세서(450))는 사용자의 활동 정보를 획득할 수 있다. 다시 말해, 전자 장치(101)의 프로세서(450)는 센서 모듈(420)을 통해 획득한 센서 데이터를 메모리(430)에 저장된 데이터베이스와 비교하여 운동 종목을 결정할 수 있고, 결정된 운동 종목에 따라 센서 데이터를 해석하여 구체적인 운동 기록을 결정할 수 있다. 이에 따라, 전자 장치(101)의 프로세서(450)는 결정된 운동 종목 및 운동 기록을 활동 정보로서 메모리(430)에 저장할 수 있다.
동작 1307에서, 전자 장치(101)(예: 통신 모듈(440))는 유사한 위치의 전자 장치로 활동 정보의 요청을 송신할 수 있다. 어떤 실시예에서, 전자 장치(101)는 통신 모듈(440)을 통해 유사한 위치에 있는 전자 장치들에 대한 정보를 외부 장치(예: 서버(106))로부터 수신할 수 있다. 외부 장치(예: 서버(106))의 통신 모듈(510)은 헬스 케어 어플리케이션(385)을 사용하는 모든 전자 장치로부터 각각의 제1 데이터를 수신 및 저장할 수 있다. 따라서, 외부 장치(예: 서버(106))의 통신 모듈(510)을 통해 인접한 위치 또는 동일 장소에 속하는 전자 장치들에 대한 정보를 전자 장치(101)의 통신 모듈(440)로 송신할 수 있다. 다른 실시예에서, 전자 장치(101)는 통신 모듈(440)을 통해 기기들 간의 직접 연결에 따라 활동 정보를 요청할 수도 있다. 예를 들어, 전자 장치(101)는 NFC 모듈, 블루투스 모듈과 같은 근거리 통신 모듈을 사용할 수 있다. 이 경우, 전자 장치(101)는 통신 모듈(440)을 통해 인접한 위치의 전자 장치에 대한 정보를 외부 장치(예: 서버(106))의 통신 모듈(510)로부터 수신하지 않더라도 다른 전자 장치로 활동 정보를 요청할 수 있다. 다른 예로, 전자 장치(101)는 통신 모듈(440)을 통해 동일한 Wifi 모듈에 접속한 다른 전자 장치로 활동 정보를 요청할 수 있다. 또한, 전자 장치(101)는 통신 모듈(440)을 통해 다른 전자 장치의 디스플레이에 표시된 큐알 코드 또는 바코드를 인식하거나 다른 전자 장치와 RF태그(예: NFC tag)를 접촉함으로써 활동 정보를 요청할 수도 있다. 정리하면, 전자 장치(101)는 통신 모듈(440)을 통해 외부 장치(예: 서버(106))의 통신 모듈(510)을 경유하지 않고 활동 정보를 다른 전자 장치로 요청할 수 있다.
동작 1309에서, 전자 장치(101)(예: 프로세서(450))는 활동 정보의 수신 및 다른 장치들의 정렬을 수행할 수 있다. 전자 장치(101)는 통신 모듈(440)을 통해 유사한 위치에 있는 다른 전자 장치로부터 활동 정보의 요청에 따른 응답으로 다른 전자 장치의 활동 정보를 수신할 수 있다. 한 실시예에서, 요청을 거절한 다른 전자 장치가 있는 경우, 전자 장치(101)의 프로세서(450)는 요청을 승낙한 다른 전자 장치들로부터 수신한 활동 정보들만으로 정렬하는 동작을 수행할 수 있다. 활동 정보는 운동 종목 및 운동 기록에 대한 정보를 포함할 수 있고, 전자 장치(101)의 프로세서(450)는 각 운동 종목별 운동 기록의 순서에 따라 다른 장치들의 정렬을 수행할 수 있다.
동작 1311에서, 전자 장치(101)(예: 디스플레이(410))는 다른 장치들의 정렬을 화면에 표시할 수 있다. 예를 들어, 전자 장치(101)의 프로세서(450)는 운동 종목을 걷기, 달리기, 수영, 스쿼트(squart) 등으로 구분할 수 있고, 사용자의 종목별 운동 기록을 순위별로 나타낼 수 있다.
도 14는 본 발명의 다양한 실시예에 따른 서버에서 통신 이력 정보에 기반한 경쟁 상대를 추천하기 위한 흐름도를 도시한다. 도 14는 서버(106)의 동작 방법을 예시한다.
도 14에 따르면, 동작 1401에서, 서버(106)(예: 통신 모듈(510) 및 프로세서(530))는 전자 장치(101)로부터 통신 이력 정보를 수신하고 확인할 수 있다. 예를 들어, 서버(106)는 통신 모듈(510)을 통해 각각의 전자 장치로부터 제1 데이터를 수신할 수 있고, 제1 데이터는 통신 이력 정보를 포함할 수 있다. 여기서, 통신 이력 정보는 각각의 전자 장치에 저장된 전화번호부, 통화 목록, 문자 메시지 목록, 계정 정보, 계정 내의 친구, 메일 주소록, SNS(social network service)상의 친구 및 전자 장치(101)의 사용자와 관련된 다수의 사용자들에 관한 정보를 적어도 하나 포함할 수 있다. 어떤 실시예에서, 전자 장치(101)의 사용자는 개인 정보 보호의 필요에 따라 통신 이력 정보 중 특정 정보를 송신하지 아니할 수 있고, 이 경우, 서버(106)의 프로세서(530)는 특정 정보를 제외한 나머지 정보만 획득할 수 있다. 다른 실시예에서, 전자 장치(101)로부터 통신 이력 정보를 획득하지 못한 경우, 서버(106)의 경쟁 상대 추천 모듈(532)은 통신 이력 정보에 기반하지 않고 다른 추천 기준에 따른 경쟁 상대 추천 알고리즘을 실행할 수도 있다.
동작 1403에서, 서버(106)(예: 프로세서(530))는 통신 이력 정보에 기반한 다수의 사용자들을 추출할 수 있다. 일 예로, 서버(106)의 프로세서(530)는 통신 이력 정보 중 전화번호부의 직장 동료, 가족, 학교 친구 등의 그룹을 확인할 수 있고, 해당 그룹에 속한 다수의 사용자들을 추출할 수 있다. 다른 예로, 서버(106)의 프로세서(530)는 통신 이력 정보 중 통화 목록을 확인할 수 있고, 해당 목록 상에 존재하는 다수의 사용자들을 추출할 수 있다.
동작 1405에서, 서버(106)(예: 경쟁 상대 추천 모듈(532))는 추출한 사용자들 중 경쟁 상대를 추천할 수 있다. 즉, 서버(106)의 경쟁 상대 추천 모듈(532)은 추출된 다수의 사용자들 중 추천 기준에 기반하여 경쟁 상대를 추천할 수 있다. 일 예로, 서버(106)의 경쟁 상대 추천 모듈(532)은 추출된 다수의 사용자 모두를 포함하는 경쟁 상대 리스트를 추천할 수 있다. 다른 예로, 서버(106)의 경쟁 상대 추천 모듈(532)은 추출된 다수의 사용자들 중 추천 기준에 따라 한 명의 사용자를 경쟁 상대로 추천할 수 있다. 이 경우, 추천 기준은 전자 장치(101)의 사용자가 선택한 추천 기준일 수 있고, 또는 서버(106)의 경쟁 상대 추천 모듈(532)이 임의로 선택한 추천 기준일 수 있다.
미 도시되었지만, 어떤 실시예에서, 서버(106)의 경쟁 상대 추천 모듈(532)은 SNS 및 전화번호부에 존재하는 다수의 사용자들을 항상 경쟁 상대 리스트상에 포함할 수 있다. 이는, 서버(106)의 경쟁 상대 추천 모듈(532) 또는 전자 장치(101)의 사용자가 선택한 추천 기준이 통신 이력 정보에 기반하는 기준과 상이한 경우에도 적용될 수 있다. 예를 들어, 장소 정보에 기반하여 추출된 다수의 사용자들로 구성되는 경쟁 상대 리스트에서, 경쟁 상대 리스트는 사용자의 SNS 및 전화번호부에 존재하는 다수의 사용자들을 포함할 수 있다.
도 15는 본 발명의 다양한 실시예에 따른 서버에서 통신 이력 정보에 기반하여 활동량이 유사한 경쟁 상대를 추천하기 위한 흐름도를 도시한다. 도 15는 서버(106)의 동작방법을 예시한다.
도 15를 참고하면, 동작 1501에서, 서버(106)(예: 프로세서(530))는 통신 이력 정보에 기반한 다수의 사용자들을 추출할 수 있다. 예를 들어, 서버(106)의 프로세서(530)는 통신 이력 정보 중 전화번호부의 특정 그룹 내 다수의 사용자들을 추출할 수 있다. 다른 예로, 서버(106)의 프로세서(530)는 통화 목록상 다수의 사용자들을 추출할 수 있다. 어떤 실시예에서, 서버(106)의 프로세서(530)는 통신 이력 정보 중 접근이 허용되는 정보에 기반하여 다수의 사용자들을 추출할 수 있다.
동작 1503에서, 서버(106)(예: 통신 모듈(510))는 다수의 사용자들에 대한 제2 활동 정보를 수신할 수 있다. 다시 말해, 서버(106)는 통신 모듈(510)을 통해 전자 장치(101)의 사용자의 활동량과 통신 이력 정보에 기반하여 추출된 다수의 사용자들의 활동량을 비교하기 위해, 다수의 사용자들에 대한 제2 활동 정보를 수신할 수 있다. 어떤 실시예에서, 서버(106)의 프로세서(530)는 다수의 사용자들 중 일부에 대한 제2 활동 정보는 기 저장할 수 있다. 이 경우, 서버(106)는 통신 모듈(510)을 통해 다수의 사용자들 중 나머지 일부에 대한 제2 활동 정보만 요청 및 수신할 수 있다.
동작 1505에서, 서버(106)(예: 프로세서(530))는 활동량의 평균값 차이가 임계 범위 내에 존재하는지 판단할 수 있다. 예를 들어, 서버(106)의 프로세서(530)는 전자 장치(101)의 사용자에 대한 제1 활동 정보를 기 저장할 수 있다. 서버(106)는 통신 모듈(510)을 통해 추출된 다수의 사용자들에 대한 제2 활동 정보를 수신할 수 있고, 제2 활동 정보는 활동량의 평균값 정보를 포함할 수 있다. 따라서, 서버(106)의 프로세서(530)는 제1 활동 정보 및 제2 활동 정보를 비교하여 활동량의 평균값 차이를 획득할 수 있다. 어떤 실시예에서, 활동량의 평균값 차이가 임계 범위 내인 사용자가 존재하지 않는다고 판단한 경우, 서버(106)의 프로세서(530)는 본 알고리즘을 종료할 수 있다. 다른 실시예에서, 활동량의 평균값 차이가 임계 범위 내인 사용자가 존재한다고 판단한 경우, 서버(106)의 프로세서(530)는 다음 동작을 수행할 수 있다. 여기서, 임계 범위는 전자 장치(101)의 사용자가 입력할 수도 있고, 서버(106)의 프로세서(530)에 기본적으로 설정된 범위 값일 수도 있다.
동작 1507에서, 서버(106)(예: 경쟁 상대 추천 모듈(532))는 활동량의 평균값 차이가 임계 범위 내인 사용자를 경쟁 상대로 추천할 수 있다. 즉, 서버(106)의 경쟁 상대 추천 모듈(532)은 활동량의 평균값 차이가 임계 범위 내인 사용자들을 추출하고, 사용자들 중 추천 기준에 따라 경쟁 상대를 추천할 수 있다. 어떤 실시예에서, 서버(106)의 경쟁 상대 추천 모듈(532)은 활동량의 평균값 차이가 임계 범위 내인 사용자가 한 명인 경우, 그 사용자를 경쟁 상대로 추천할 수 있다. 다른 실시예에서, 서버(106)의 경쟁 상대 추천 모듈(532)은 활동량의 평균값 차이가 임계 범위 내인 사용자가 다수인 경우, 서버(106)의 경쟁 상대 추천 모듈(532) 또는 전자 장치(101)의 사용자가 선택한 추천 기준 중 적어도 하나에 기반하여 한 명의 사용자를 경쟁 상대로 추천할 수도 있다. 예를 들어, 임계 범위 내의 사용자들 중 평균값의 차이가 가장 작은 사용자를 경쟁 상대로 추천할 수 있다. 또 다른 실시예로, 서버(106)의 경쟁 상대 추천 모듈(532)은 임계 범위 내의 사용자 모두를 포함하는 경쟁 상대 리스트를 추천할 수도 있다.
미 도시되었지만, 다른 실시예에서, 서버(106)의 경쟁 상대 추천 모듈(532)은 평균값의 차이에 의하지 아니할 수 있고, 최고 기록, 소모된 칼로리, 운동 시간 등의 다른 지표들에 기반하여 동작을 수행할 수도 있다. 일 예로, 소모된 칼로리가 기준인 경우, 서버(106)의 경쟁 상대 추천 모듈(532)은 소모된 칼로리 차이가 임계 범위 내인 사용자가 경쟁 상대로 선택될 수 있다.
도 16은 본 발명의 다양한 실시예에 따른 서버에서 통신 이력 정보에 기반하여 최근 연락한 사용자를 경쟁 상대로 추천하기 위한 흐름도를 도시한다. 도 16은 서버(106)의 동작 방법을 예시한다.
도 16을 참고하면, 동작 1601에서, 서버(106)(예: 프로세서(530))는 통화 기록 정보를 확인할 수 있다. 다시 말해, 서버(106)의 프로세서(530)는 전자 장치(101)의 통신 모듈(440)로부터 통신 이력 정보를 수신할 수 있고, 통신 이력 정보는 통화 기록 정보를 포함할 수 있다. 따라서, 서버(106)의 프로세서(530)는 수신한 통화 기록 정보를 확인할 수 있다. 한 실시예에서, 통화 기록 정보에 대한 접근 권한이 존재 하지 않을 수 있고, 이 경우, 서버(106)의 프로세서(530)는 다른 추천 기준에 따른 추천을 수행할 수 있다.
동작 1603에서, 서버(106)(예: 경쟁 상대 추천 모듈(532))는 가장 최근 연락한 사용자를 경쟁 상대로 추천할 수 있다. 예를 들어, 서버(106)의 프로세서(530)는 시간에 기반하여 통화 기록 목록을 생성할 수 있고, 서버(106)의 경쟁 상대 추천 모듈(532)은 해당 목록 중 시간적으로 가장 가까운 사용자를 경쟁 상대로 추천할 수 있다. 다른 예로, 서버(106)의 경쟁 상대 추천 모듈(532)은 해당 목록 중 시간적으로 오래된 사용자를 경쟁 상대로 추천할 수도 있다.
미 도시되었지만, 다른 실시예에서, 서버(106)의 프로세서(530)는 연락 주기에 기반한 통화 기록 목록을 생성할 수도 있다. 서버(106)의 경쟁 상대 추천 모듈(532)은 해당 목록 중 연락 주기가 가장 짧은 사용자를 경쟁 상대로 추천할 수도 있다.
도 17은 본 발명의 다양한 실시예에 따른 서버에서 통신 이력 정보에 기반하여 최근 챌린지를 진행한 사용자를 경쟁 상대로 추천하기 위한 흐름도를 도시한다. 도 17은 서버(106)의 동작 방법을 예시한다.
도 17을 참고하면, 동작 1701에서, 서버(106)(예: 프로세서(530))는 통신 이력 정보에 기반하여 다수의 사용자들을 추출할 수 있다. 수신한 통신 이력 정보는 전자 장치(101)의 전화번호부, 통화 목록, 문자 메시지 목록, 계정 정보, 계정 내의 친구, 메일 주소록, SNS(social network service)상의 친구 정보 등을 포함할 수 있다. 따라서, 프로세서(530)는 통신 이력 정보 중 적어도 하나에 기반하여 다수의 사용자들을 추출할 수 있다.
동작 1703에서, 서버(106)(예: 통신 모듈(510) 및 프로세서(530))는 다수의 사용자들에 대한 정보를 수신 및 확인할 수 있다. 여기서, 다수의 사용자들에 대한 정보는 챌린지를 진행한 정보 등을 포함할 수 있다. 따라서, 서버(106)의 프로세서(530)는 다수의 사용자들에 대한 정보를 수신 및 확인함으로써, 추출된 사용자가 최근 챌린지를 진행한 적이 있는지 확인할 수 있다. 어떤 실시예에서, 서버(106)의 프로세서(530)는 다수의 사용자들에 대한 정보를 기 저장할 수 있고, 이 경우, 다수의 사용자들에 대한 정보를 수신하는 과정은 생략될 수 있다.
동작 1705에서, 서버(106)(예: 경쟁 상대 추천 모듈(532))는 가장 최근 도전을 진행한 사용자를 경쟁 상대로 추천할 수 있다. 서버(106)의 경쟁 상대 추천 모듈(532)은 다수의 사용자들에 대한 정보에 기반하여 최근 챌린지를 진행한 적이 있는지 확인할 수 있고, 서버(106)의 프로세서(530)는 챌린지 진행 시간에 따라 다수의 사용자들을 정렬할 수 있다. 따라서, 경쟁 상대 추천 모듈(532)은 최근 도전을 진행한 사용자를 식별하고, 해당 사용자를 경쟁 상대로 추천할 수 있다. 다른 예로, 서버(106)의 경쟁 상대 추천 모듈(532)은 챌린지를 진행한 지 가장 오래된 사용자를 식별하고, 해당 사용자를 경쟁 상대로 추천할 수도 있다. 다른 실시예에서, 서버(106)의 경쟁 상대 추천 모듈(532)은 헬스 케어 어플리케이션(385)상에 새로 가입한 사용자를 경쟁 상대로 추천할 수 있다. 이 경우, 프로세서(530)는 통신 이력 정보에 기반한 다수의 사용자들에 대한 가입 정보를 확인할 수도 있다.
도 18은 본 발명의 다양한 실시예에 따른 서버에서 통신 이력 정보에 기반하여 연락처 그룹에서 경쟁 상대를 추천하기 위한 흐름도를 도시한다. 도 18는 서버(106)의 동작 방법을 예시한다.
도 18을 참고하면, 동작 1801에서, 서버(106)(예: 프로세서(530))는 전화번호부 정보를 확인할 수 있다. 통신 모듈(510)은 통신 이력 정보를 수신할 수 있고, 통신 이력 정보는 전화번호부에 대한 정보를 포함할 수 있다. 따라서, 서버(106)의 프로세서(530)는 전자 장치(101)의 전화번호부의 그룹 정보를 확인할 수 있다. 어떤 실시예에서, 서버(106)의 경쟁 상대 추천 모듈(532)은 전화번호부에 대한 접근 권한이 없는 경우, 다른 추천 기준에 따라 경쟁 상대를 추천할 수 있다.
동작 1803에서, 서버(106)(예: 통신 모듈(510))는 전자 장치(101)의 사용자의 그룹 선택 정보를 수신할 수 있다. 전자 장치(101)의 프로세서(450)는 그룹 선택에 대한 사용자의 입력을 검출할 수 있고, 검출된 입력은 전자 장치(101)의 통신 모듈(440)을 통해 서버(106)의 통신 모듈(510)로 송신될 수 있다.
동작 1805에서, 서버(106)(예: 프로세서(530))는 선택된 그룹에서 다수의 사용자들을 추출할 수 있다. 서버(106)는 통신 모듈(510)을 통해 검출된 입력을 수신할 수 있다. 프로세서(530)는 검출된 입력에 해당하는 그룹 정보를 확인함으로써, 다수의 사용자들을 식별할 수 있다. 한 실시예에서, 사용자의 그룹 선택 정보를 수신하지 못한 경우, 서버(106)의 프로세서(530)는 사용자에게 반복적으로 그룹 선택 입력에 대한 요청을 송신할 수 있다.
동작 1807에서, 서버(106)(예: 경쟁 상대 추천 모듈(532))는 다수의 사용자들 중에서 경쟁 상대를 추천할 수 있다. 즉, 서버(106)의 경쟁 상대 추천 모듈(532)은 전자 장치(101)의 사용자가 선택한 추천 기준 또는 서버(106)의 경쟁 상대 추천 모듈(532)이 임의로 선택한 추천 기준에 따라 다수의 사용자들 중에서 경쟁 상대를 추천할 수 있다. 한 실시예에서, 서버(106)의 경쟁 상대 추천 모듈(532)은 전화번호부 그룹을 통해 추출된 다수의 사용자 모두를 포함하는 경쟁 상대 리스트를 추천할 수 있다. 이 경우, 서버(106)의 통신 모듈(510)을 통해 경쟁 상대 리스트에 포함되는 사용자들에 대한 정보를 전자 장치(101)의 통신 모듈(440)로 송신할 수 있다.
도 19는 본 발명의 다양한 실시예에 따른 서버에서 제1 데이터에 기반하여 활동량이 유사한 경쟁 상대를 추천하기 위한 흐름도를 도시한다. 도 19는 서버(106)의 동작 방법을 예시한다.
도 19를 참고하면, 동작 1901에서, 서버(106)(예: 프로세서(530))는 활동량의 평균값 차이가 임계 범위 내인 다수의 사용자들을 추출할 수 있다. 서버(106)의 메모리(520)는 전자 장치(101)의 사용자에 대한 제1 활동 정보 및 다수의 사용자들에 대한 정보를 기 저장할 수 있다. 따라서, 서버(106)의 프로세서(530)는 제1 활동 정보 및 다수의 사용자들에 대한 정보를 비교하여 활동량의 평균값 차이가 임계 범위 내인 사용자들을 식별할 수 있다. 한 실시예에서, 활동량의 평균값 차이가 임계 범위 내인 사용자가 존재하지 않는다고 판단한 경우, 서버(106)의 프로세서(530)는 본 알고리즘을 종료하고 다른 임의의 추천 기준에 따라 경쟁 상대를 추천할 수 있다.
동작 1903에서, 서버(106)(예: 경쟁 상대 추천 모듈(532))는 평균값의 차이가 가장 작은 사용자를 경쟁 상대로 추천할 수 있다. 다시 말해, 서버(106)의 경쟁 상대 추천 모듈(532)은 전자 장치(101)의 사용자와 활동량이 제일 유사한 사용자를 경쟁 상대로 추천할 수 있다. 한 실시예에서, 서버(106)의 경쟁 상대 추천 모듈(532)은 평균값이 아닌 소모된 칼로리, 운동 거리, 운동 시간 등을 기준으로 추천을 수행할 수 있다.
도 20은 본 발명의 다양한 실시예에 따른 서버에서 통신 이력 정보에 기반하여 추출된 사용자들이 갖는 통신 이력 정보에 기반하여 경쟁 상대를 추천하기 위한 흐름도를 도시한다. 도 20은 서버(106)의 동작 방법을 예시한다.
도 20을 참고하면, 동작 2001에서, 서버(106)(예: 통신 모듈(510) 및 프로세서(530))는 통신 이력 정보를 수신 및 확인할 수 있다. 즉, 서버(106)는 통신 모듈(510)을 통해 새롭게 통신 이력 정보를 요청할 제1 사용자들을 식별하기 위해 통신 이력 정보를 수신 및 확인할 수 있다.
동작 2003에서, 서버(106(예: 프로세서(530))는 통신 이력 정보에 기반한 제1 사용자들을 추출할 수 있다. 예를 들어, 서버(106)의 프로세서(530)는 통신 이력 정보를 통해 제1 사용자들을 추출할 수 있고, 추출한 제1 사용자들에게 새롭게 통신 이력 정보의 요청을 송신할 수 있다. 한 실시예에서, 제1 사용자들에 대한 요청이 거절되는 경우, 서버(106)의 프로세서(530)는 본 알고리즘을 종료할 수 있고, 다른 추천 기준에 따라 경쟁 상대를 추천할 수 있다.
동작 2005에서, 서버(106)(예: 통신 모듈(510) 및 프로세서(530))는 제1 사용자들의 통신 이력 정보를 수신 및 확인할 수 있다. 정리하면, 제1 사용자들은 전자 장치(101)의 통신 이력 정보에 포함될 수 있으며, 동작 2005에서 수신한 통신 이력 정보는 제1 사용자들로부터 수신한 정보로서, 제2 사용자들을 추출하기 위한 정보일 수 있다.
동작 2007에서, 서버(106)(예: 프로세서(530))는 제1 사용자들의 통신 이력 정보에 기반한 제2 사용자들을 추출할 수 있다. 예를 들어, 제2 사용자들은 전자 장치(101)의 통신 이력 정보를 통해 추출한 제1 사용자들로부터 수신한 통신 이력 정보로부터 획득될 수 있다. 즉, 제2 사용자들은 전자 장치(101)의 통신 이력 정보에 포함되지 않는 다수의 사용자들일 수 있다.
동작 2009에서, 서버(106)(예: 프로세서(530))는 제2 사용자들이 전자 장치(101)의 통신 이력 정보상 존재하는지 판단할 수 있다. 전자 장치(101)의 통신 이력 정보에 제2 사용자들에 대한 정보가 포함되는 경우, 서버(106)의 프로세서(530)는 해당 사용자들을 추출한 다수의 사용자들로부터 삭제할 수 있다.
동작 2011에서, 서버(106)(예: 경쟁 상대 추천 모듈(532))는 다수의 사용자들 중에서 경쟁 상대를 추천할 수 있다. 여기서, 다수의 사용자들은 추출한 제2 사용자들 중 전자 장치(101)의 통신 이력 정보상 존재하는 사용자들을 제외한 나머지 사용자들일 수 있다. 서버(106)의 프로세서(530)는 중복되는 사용자들을 삭제함으로써, 제1 사용자들에 포함되지 않는 제2 사용자들로만 구성될 수 있다. 한 실시예에서, 서버(106)의 경쟁 상대 추천 모듈(532)은 다수의 사용자 모두를 포함하는 경쟁 상대 리스트를 전자 장치(101)로 송신할 수 있다. 다른 실시예에서, 서버(106)의 경쟁 상대 추천 모듈(532)은 경쟁 상대 리스트 중 한 명의 사용자를 경쟁 상대로 추천할 수 있다. 이 경우, 서버(106)의 경쟁 상대 추천 모듈(532)은 전자 장치(101)의 사용자가 선택한 추천 기준 또는 서버(106)의 경쟁 상대 추천 모듈(532)이 선택한 추천 기준에 따라 한 명의 사용자를 경쟁 상대로 추천할 수 있다.
도 21은 본 발명의 다양한 실시예에 따른 서버에서 특정 모델에 기반하여 경쟁 상대를 추천하기 위한 흐름도를 도시한다. 도 21은 서버(106)의 동작 방법을 예시한다.
도 21을 참고하면, 동작 2101에서, 서버(106)(예: 통신 모듈(510) 및 프로세서(530))는 전자 장치(101)의 사용자로부터 모델 선택 정보를 수신 및 확인할 수 있다. 여기서, 모델은 특정 기준에 따라 그룹화된 것으로 이해될 수 있다. 예를 들어, 특정 모델은 동일 지역, 동일 국가, 동일 성별 및 동일 연령대에 따른 그룹화된 정보일 수 있다. 또한, 특정 모델은 가상의 사용자에 대한 정보로서, 가상의 인물(예: 하루 8000보 걷는 봇 등) 또는 유명인(예: 연예인)에 대한 정보일 수 있다. 예를 들어, 프로세서(530)는 특정 모델에 대한 공간을 형성할 수 있다. 즉, 헬스 케어 어플리케이션(385)이 실행되면 전자 장치(101)는 통신 모듈(440)을 통해 특정 모델에 대한 공간 목록 정보를 수신할 수 있다. 따라서, 전자 장치(101)의 프로세서(450)는 디스플레이(410)를 통해 공간 목록을 표시할 수 있고, 특정 모델 선택에 대한 사용자의 입력을 검출할 수 있다. 이에 따라, 서버(106)는 통신 모듈(510)을 통해 검출된 정보를 수신할 수 있다.
동작 2103에서, 서버(106)(예: 프로세서(530))는 모델 선택 정보에 기반한 다수의 사용자들을 추출할 수 있다. 예를 들어, 동일 연령대 모델에 대한 선택 정보를 검출한 경우, 서버(106)의 프로세서(530)는 전자 장치(101)의 사용자 연령대에 속하는 다수의 사용자들을 추출할 수 있다. 다른 예로, 동일 국가 모델에 대한 선택 정보를 검출한 경우, 서버(106)의 프로세서(530)는 전자 장치(101)의 사용자가 등록한 국가와 동일한 국가를 가지는 다수의 사용자들을 추출할 수 있다.
동작 2105에서, 서버(106)(예: 경쟁 상대 추천 모듈(532))는 다수의 사용자들 중 경쟁 상대를 추천할 수 있다. 서버(106)의 경쟁 상대 추천 모듈(532)은 모델 선택 정보에 따라 추출된 다수의 사용자들 중 경쟁 상대를 추천할 수 있다. 이 경우, 추천 기준은 전자 장치(101)의 사용자가 선택한 추천 기준 또는 서버(106)의 경쟁 상대 추천 모듈(532)이 임의로 선택한 추천 기준일 수 있다. 어떤 실시예에서, 서버(106)의 경쟁 상대 추천 모듈(532)은 선택된 추천 기준에 따라 한 명의 사용자만을 추천할 수 있다. 예를 들어, 한 명의 사용자는 동일 연령대의 사용자들 중 활동량이 가장 유사한 사용자일 수 있다. 다른 실시예에서, 경쟁 상대 추천 모듈(532)은 다수의 사용자 모두를 포함하는 경쟁 상대 리스트를 추천할 수 있다. 이 경우, 경쟁 상대 리스트에 속하는 다수의 사용자들에 대한 정보가 통신 모듈(440)로 송신될 수 있다.
도 22는 본 발명의 다양한 실시예에 따른 전자 장치에서 제1 활동 정보에 기반하여 가상의 사용자를 생성하기 위한 흐름도를 도시한다. 도 22는 전자 장치(101)의 동작 방법을 예시한다.
도 22를 참고하면, 동작 2201에서, 전자 장치(101)(예: 프로세서(450))는 기 저장된 제1 활동 정보가 존재하는지 판단할 수 있다. 예를 들어, 전자 장치(101)의 프로세서(450)는 메모리(430)로 제1 활동 정보의 요청을 통해, 제1 활동 정보가 존재하는지 여부를 결정할 수 있다. 예를 들어, 기 저장된 제1 활동 정보가 존재하지 않는 경우, 전자 장치(101)의 프로세서(450)는 가상의 사용자를 생성할 정보가 존재하지 않으므로 본 알고리즘을 종료할 수 있다. 반면, 기 저장된 제1 활동 정보가 존재하는 경우, 전자 장치(101)의 프로세서(450)는 다음 동작을 수행할 수 있다.
동작 2203에서, 전자 장치(101)(예: 프로세서(450))는 제1 활동 정보에 기반한 가상의 사용자를 생성할 수 있다. 예를 들어, 전자 장치(101)의 프로세서(450)는 메모리(430)로 제1 활동 정보를 요청할 수 있고, 전자 장치(101)의 메모리(430)는 제1 활동 정보를 헬스 케어 어플리케이션(385)으로 송신할 수 있다. 따라서, 전자 장치(101)의 프로세서(450)는 제1 활동 정보를 기반으로 가상의 사용자를 생성할 수 있다. 이 경우, 전자 장치(101)의 사용자는 자신의 과거 운동 기록을 가지는 가상의 사용자와 챌린지를 진행할 수 있다.
동작 2205에서, 전자 장치(101)(예: 디스플레이(410))는 가상의 사용자에 대한 정보를 표시할 수 있다. 전자 장치(101)의 프로세서(450)는 가상의 사용자를 생성하고, 가상의 사용자에 대한 정보를 디스플레이(410)를 통해 표시할 수 있다. 예를 들어, 전자 장치(101)의 디스플레이(410)는 가상의 사용자에 대한 정보 및 가상의 사용자에게 초대를 하기 위한 UI(user interface)를 표시할 수 있다. 이에 따라, 전자 장치(101)는 가상의 사용자에 대해 초대를 송신하고, 응답을 수신하는 동작 등을 수행할 수 있다.
미 도시되었지만, 도 22에 도시된 제1 활동 정보는 다른 활동 정보로 대체될 수 있다. 여기서, 다른 활동 정보는 전자 장치(101)가 과거에 진행한 챌린지를 통해 전자 장치(101)에 기 저장된 과거의 경쟁 상대에 대한 제2 활동 정보일 수 있다. 이 경우, 전자 장치(101)의 사용자는 과거의 경쟁 상대에 기반한 가상의 사용자와 챌린지를 진행할 수 있다.
상술한 도 4 내지 도 22에 따라, 전자 장치(101)의 사용자는 서버(106)로부터 경쟁 상대를 추천 받을 수 있다. 다양한 실시예들에서, 서버(106)는 경쟁 상대 또는 경쟁 상대 리스트를 추천할 수 있고, 전자 장치(101)로 경쟁 상대에 대한 정보 또는 경쟁 상대 리스트에 대한 정보를 송신할 수 있다. 다양한 실시예들에서, 서버(106)는 추천 기준에 기반하여 경쟁 상대를 추천할 수 있고, 추천 기준은 위치 정보, 장소 정보, 통신 이력 정보, 활동 정보 등을 포함할 수 있다. 다만, 도 4 내지 도 22에 따르는 경우, 개인간의 챌린지만을 진행할 수 있다. 따라서, 이하 도 23a 내지 도 24b에 따라 그룹으로 진행될 수 있는 챌린지를 도시한다.
도 23a는 본 발명의 다양한 실시예에 따른 그룹 내의 대결에 기반한 흐름도를 도시한다. 도 23a는 서버(106)의 동작 방법을 예시한다.
도 23a를 참고하면, 동작 2301에서, 서버(106)(예: 통신 모듈(510))는 챌린지 진행 방식에 대한 입력을 수신할 수 있다. 이를 위해, 전자 장치(101)의 디스플레이(410)는 그룹 생성을 위한 UI(2310)를 표시할 수 있다. 도 23b를 참고하면, UI(2310)는 챌린지 생성을 위한 다양한 입력 메뉴들을 포함할 수 있고, 챌린지 생성을 위한 사용자의 입력을 검출할 수 있다. 예를 들어, 다양한 입력 메뉴들은 챌린지 진행 방식(2312 및 2314), 구성원 초대(2316) 및 챌린지 정보(2318)에 대한 메뉴를 포함할 수 있다. 예를 들어, 구성원 초대(2316) 메뉴는 그룹을 이루는 구성원들을 표시할 수 있다. 어떤 실시예에서, 그룹을 이루는 구성원들은 경쟁 상대 추천 모듈(532)이 임의로 추천하는 다수의 경쟁 상대일 수도 있고, 전자 장치(101)의 사용자가 선택한 사용자들로 이루어질 수도 있다. 챌린지 정보(2318)는 생성될 챌린지에 대한 정보를 표시할 수 있다. 도 23b를 참고하면, 챌린지 정보(2318)는 운동 종목(예: 걷기 종목) 및 목표량(예: 10만 걸음)을 표시할 수 있다. 챌린지 진행 방식(2312 및 2314)은 예를 들어, 베이직(basic)(2312) 또는 토너먼트(tournament)(2314) 중 하나일 수 있다. 베이직(2312) 진행 방식의 경우, 서버(106)의 프로세서(530)는 그룹을 구성하는 다수의 사용자들의 각자 활동 정보를 종합하여, 사용자 각각의 순위를 결정할 수 있다. 또한, 다수의 사용자들 중 목표량에 가까운 사용자가 최종 우승을 할 수 있다. 예를 들어, 도 23b에 도시된 바와 같이, 각 사용자들의 활동 정보에 따른 수치들은 막대 그래프(2320) 형태로 표시될 수 있고, 이외에도 원 그래프 등의 다양한 방법들이 사용될 수 있다. 토너먼트(2314) 진행 방식의 경우, 프로세서(530)는 그룹을 구성하는 다수의 사용자들 사이에 개인간 대결을 연속적으로 진행할 수 있다. 예를 들어, 제1 구성원과 제2 구성원 및 제3 구성원과 제4 구성원이 각각 개인간 대결을 진행할 수 있다. 개인간 대결에서 승리한 구성원이 각각 제1 구성원 및 제4 구성원이 되는 경우, 제1 구성원과 제4 구성원의 개인간 대결에 따른 승리한 구성원이 최종 우승을 할 수 있다.
동작 2303에서, 서버(106)(예: 통신 모듈(510))는 운동 종목 및 목표량 입력을 수신할 수 있다. 예를 들어, 전자 장치(101)의 사용자가 걷기 종목에서 1만보를 목표량으로 설정하고 싶은 경우, 전자 장치(101)의 프로세서(450)는 도 23b의 챌린지 정보(2318)를 통해 종목 및 목표량에 대한 사용자의 입력을 검출할 수 있다. 서버(106)는 통신 모듈(510)을 통해 검출된 입력을 수신하고, 서버(106)의 프로세서(530)는 챌린지 진행을 위한 공간을 생성할 수 있다. 여기서, 공간은 비공개로 이루어질 수 있다.
동작 2305에서, 서버(106)(예: 통신 모듈(510))는 그룹의 생성 및 초대를 송신할 수 있다. 서버(106)의 통신 모듈(510)을 통해 전자 장치(101)의 사용자를 제외한 사용자들의 전자 장치로 초대의 메시지를 송신할 수 있다. 이 경우, 전자 장치(101)의 사용자는 그룹을 생성하는 사용자로서 ‘리더’, ‘방장’등으로 지칭될 수 있고, 나머지 다수의 사용자들은 ‘그룹원’, ‘그룹 멤버’등으로 지칭될 수 있다. 전자 장치(101)의 사용자가 UI(2310)상에서 ‘보내기’ 버튼을 입력하면, 서버(106)는 통신 모듈(510)을 통해 전자 장치(101)의 사용자를 제외한 나머지 사용자들의 전자 장치(101)의 통신 모듈(440)로 초대 메시지를 송신할 수 있다.
동작 2307에서, 서버(106)(예: 통신 모듈(510))는 모든 초대가 수락되었는지 확인할 수 있다. 즉, 서버(106)의 통신 모듈(510)이 그룹 내에서 전자 장치(101)의 사용자를 제외한 나머지 사용자들로부터 수락 메시지를 수신하는 경우, 프로세서(530)는 챌린지를 진행할 수 있다. 반면, 서버(106)의 통신 모듈(510)이 전자 장치(101)의 사용자를 제외한 나머지 사용자들로부터 적어도 하나의 거절 메시지를 수신하는 경우, 서버(106)의 프로세서(530)는 동작 2301을 다시 진행할 수 있다.
동작 2309에서, 서버(106)(예: 통신 모듈(510))는 챌린지 진행 및 결과를 송신할 수 있다. 즉, 서버(106)는 통신 모듈(510)을 통해 그룹 내의 모든 사용자의 전자 장치들로부터 제1 활동 정보를 수신하고, 챌린지 결과를 전자 장치들로 송신할 수 있다. 예를 들어, 서버(106)의 프로세서(530)는 수신한 다수의 제1 활동 정보를 종합하여, 그룹 내 챌린지의 승자를 결정할 수 있다. 예를 들어, 베이직(2312) 진행 방식에 따르는 경우, 서버(106)는 통신 모듈(510)을 통해 일정 주기마다 그룹 내 모든 사용자들의 활동 정보를 각 사용자의 전자 장치(101)로 송신할 수 있고, 서버(106)의 디스플레이(410)는 수신한 활동 정보를 막대 그래프(2320)로 표시할 수 있다. 다른 예로, 토너먼트(2314) 진행 방식에 따르는 경우, 서버(106)는 통신 모듈(510)을 통해 개인간 대결마다 승패의 결과를 송신할 수 있고, 최종 우승이 결정된 경우, 그룹 내 모든 사용자 전자 장치에 승패 결과를 송신함으로써, 전자 장치(101)의 디스플레이(410)는 수신한 승패 결과를 토너먼트 결과(2330)로 표시할 수 있다. 도 23c는 전자 장치(101)의 디스플레이(410)상에 표시되는 그룹 챌린지 결과 UI(2340)를 도시한다. 도 23c를 참고하면, UI(2340)는 막대 그래프(2346) 형태의 표시를 가질 수 있다. 다만, 전자 장치(101)의 사용자가 다수의 그룹 챌린지를 진행하는 경우, 전자 장치(101)의 디스플레이(410)는 그룹 챌린지별 결과를 구분하여 표시할 수 있다. 예를 들어, 걸음 그룹 챌린지는 스쿼트 그룹 챌린지(2342)와 별도로 표시될 수 있다. 따라서, 스쿼트 그룹 챌린지(2342) 결과는 막대 그래프(2346)를 통해 표시될 수 있고, 걷기 그룹 챌린지 결과는 별도의 공간을 가지는 다른 막대 그래프를 통해 표시될 수 있다.
도 24a는 본 발명의 다양한 실시예에 따른 그룹간 대결에 기반한 흐름도를 도시한다. 도 24a는 서버(106)의 동작 방법을 예시한다
도 24a를 참고하면, 동작 2401에서, 서버(106) (예: 통신 모듈(510))는 챌린지 진행 방식에 대한 입력을 수신할 수 있다. 전자 장치(101)의 디스플레이(410)를 통해 그룹간 챌린지 생성을 위한 UI(2410)를 표시할 수 있다. 도 24b를 참고하면 UI(2410)는 챌린지 진행 방식(2412, 2414 및 2416), 그룹 분류 방식(2418, 2420 및 2422) 및 챌린지 정보(2424)를 포함할 수 있다. 챌린지 정보(2424)는 생성할 그룹간 챌린지에 대한 종목 및 목표량 정보의 조합으로 특정되는 상세한 정보를 포함할 수 있다. 예를 들어, 챌린지 정보(2424)는 종목(예: 걷기 종목) 및 목표량(예: 10만 걸음)을 표시할 수 있다. 챌린지 진행 방식(2412, 2414 및 2416)은 크게 공유(shared)(2412), 전체(whole)(2414), 릴레이(relay)(2416) 방식으로 구별될 수 있다.
공유(2412) 진행 방식의 경우, 서버(106)는 통신 모듈(510)을 통해 챌린지에 참여하는 모든 사용자의 전자 장치들로부터 각각의 제1 활동 정보를 수신할 수 있다. 프로세서(530)는 각 그룹별로 수치를 합산할 수 있고, 그 합산된 수치가 높은 그룹이 우승할 수 있다. 예를 들어, 제1 그룹 구성원들의 활동 정보를 합산한 수치가 90이고, 제2 그룹 구성원들의 활동 정보를 합산한 수치가 95인 경우, 우승 그룹은 제2 그룹일 수 있다.
전체(2414) 진행 방식의 경우, 서버(106)는 통신 모듈(510)을 통해 챌린지에 참여하는 모든 사용자의 전자 장치들로부터 각각의 제1 활동 정보를 수신할 수 있다. 프로세서(530)는 그룹마다 목표량을 달성한 사용자를 식별할 수 있고, 그룹을 구성하는 사용자 모두가 목표량을 달성한 그룹이 우승할 수 있다. 예를 들어, 제1 그룹은 구성원 모두가 목표량을 달성하고, 제2 그룹은 그룹 구성원 중 한 명이 목표량을 달성하지 못한 경우, 우승 그룹은 제1 그룹일 수 있다. 다른 예로, 전자
릴레이(2416) 진행 방식의 경우, 서버(106)는 통신 모듈(510)을 통해 각 그룹에서 릴레이 순서에 해당하는 전자 장치로부터 제1 활동 정보를 수신할 수 있다. 즉, 그룹 내에서 각각의 구성원은 고유의 릴레이 순서를 가질 수 있다. 예를 들어, 제1 그룹은 첫 번째 구성원이 목표량을 달성하지 못하고, 제2 그룹은 두 번째 구성원까지 목표량을 달성한 경우, 제2 그룹은 세 번째 구성원이 목표량을 달성하면 우승을 할 수 있고, 제1 그룹의 두 번째 구성원은 첫 번째 구성원이 목표량을 달성하기 전까지 활동 정보를 서버(106)로 송신할 수가 없다.
동작 2403에서, 서버(106)(예: 통신 모듈(510))는 운동 종목 및 목표량 설정에 대한 입력을 수신할 수 있다. 예를 들어, 전자 장치(101)의 사용자가 걷기 종목에서 1만보를 목표량으로 설정하고 싶은 경우, 챌린지 정보(2424) 메뉴를 통해 운동 종목 및 목표량을 입력할 수 있다. 전자 장치(101)의 프로세서(450)는 사용자의 입력을 검출할 수 있고, 전자 장치(101)의 통신 모듈(440)을 통해 검출된 입력에 대한 정보를 서버(106)의 통신 모듈(510)으로 송신할 수 있다. 서버(106)의 프로세서(530)는 수신한 사용자 입력에 기반하여, 공간을 생성할 수 있다. 여기서, 공간은 비공개로 생성될 수 있다.
동작 2405에서, 서버(106)(예: 프로세서(530))는 그룹별로 사용자들을 분류할 수 있다. 예를 들어, 그룹 분류 방식(2418, 2420 및 2422)은 랜덤(random)(2418), 평균(mean)(2420) 또는 승률(percentage)(2422) 방식일 수 있다. 랜덤(2418) 분류 기준의 경우, 프로세서(530)는 무작위로 다수의 사용자들을 제1 그룹 및 제2 그룹으로 분류할 수 있다. 평균(2420) 분류 기준의 경우, 프로세서(530)는 활동 정보의 평균값이 유사한 사용자들끼리 짝을 지을 수 있다. 이후, 프로세서(530)는 짝지어진 평균값이 유사한 사용자들을 각각 제1 그룹 및 제2 그룹으로 분류할 수 있다. 승률(2422) 분류 기준의 경우, 프로세서(530)는 승률 정보에 기반하여 유사한 승률을 가지는 사용자들끼리 짝을 지을 수 있다. 이후, 프로세서(530)는 승률이 유사하게 짝지어진 사용자들을 각각 제1 그룹 및 제2 그룹으로 분류할 수 있다. 여기서, 통신 모듈(510)은 각 전자 장치로부터 과거의 승률에 대한 정보를 추가로 수신할 수 있다.
동작 2407에서, 서버(106)(예: 통신 모듈(510))는 그룹의 생성 및 초대를 송신할 수 있다. 이 경우, 전자 장치(101)의 사용자는 그룹간 대결을 생성하는 사용자로서 ‘리더’, ‘방장’ 등으로 지칭될 수 있고, 나머지 다수의 사용자들은 각 그룹의 ‘그룹원’, ‘그룹 멤버’등으로 지칭될 수 있다. 예를 들어, 전자 장치(101)의 사용자가 UI(2410)상에서 ‘보내기’ 버튼을 입력하면, 서버(106)는 통신 모듈(510)을 통해 전자 장치(101)의 사용자를 제외한 나머지 사용자들의 전자 장치의 통신 모듈(440)로 초대 메시지를 송신할 수 있다.
동작 2409에서, 서버(106)(예: 통신 모듈(510) 및 프로세서(530))는 모든 초대 메시지가 수락되었는지 확인할 수 있다. 즉, 서버(106)의 프로세서(530)는 전자 장치(101)의 사용자를 제외한 나머지 모든 사용자로부터 승낙의 메시지를 통신 모듈(510)을 통해 수신하면, 그룹간 챌린지를 진행할 수 있다. 따라서, 서버(106)는 통신 모듈(510)을 통해 전자 장치(101)의 사용자를 제외한 나머지 전자 장치로부터 적어도 하나의 거절 메시지를 수신하는 경우, 프로세서(530)는 동작 2401을 다시 진행할 수 있다. 반면, 통신 모듈(510)을 통해 전자 장치(101)의 사용자를 제외한 나머지 사용자 모두로부터 수락 메시지를 수신하는 경우, 서버(106)의 프로세서(530)는 그룹간 챌린지를 진행할 수 있다.
동작 2411에서, 서버(106)(예: 통신 모듈(510))는 챌린지 진행 및 결과를 송신할 수 있다. 프로세서(530)는 모든 사용자들로부터 수신한 제1 활동 정보에 기반하여 그룹간 챌린지의 승리 그룹을 결정할 수 있다. 예를 들어, 공유(2412) 진행 방식에 따르는 경우, 프로세서(530)는 제1 그룹 및 제2 그룹의 모든 사용자들로부터 활동 정보를 수신하고 합산할 수 있다. 이 경우, 프로세서(530)는 모든 전자 장치로 챌린지 결과를 송신하고, 디스플레이(410)를 통해 누적 그래프(2430)와 같이 표시할 수 있다. 다른 예로, 전체(2414) 진행 방식에 따르는 경우, 프로세서(530)는 제1 그룹 및 제2 그룹의 모든 사용자들로부터 수신한 활동 정보에 기반하여 각 사용자들마다 목표량을 달성했는지 여부를 통해 승리 그룹을 결정할 수 있다. 이 경우, 프로세서(530)는 모든 전자 장치로 결과를 송신하고, 전자 장치(101)의 디스플레이(410)를 통해 막대 그래프(2440)와 같이 표시할 수 있다. 또 다른 예로, 릴레이(2416) 진행 방식에 따르는 경우, 프로세서(530)는 제1 그룹 및 제2 그룹에서 릴레이 순서에 해당하는 사용자로부터 수신한 활동 정보에 기반하여, 가장 먼저 모든 구성원이 목표량을 달성하는 그룹을 승리 그룹으로 결정할 수 있다. 이 경우, 프로세서(530)는 모든 전자 장치로 결과를 송신하고, 전자 장치(101)의 디스플레이(410)를 통해 릴레이 그래프(2450)를 나타낼 수 있다.
도 25는 본 발명의 다양한 실시예에 따른 전자 장치에서 챌린지를 진행하기 위한 흐름도를 도시한다. 도 25는 전자 장치(101)의 동작 방법을 예시한다.
도 25를 참고하면, 동작 2501에서, 전자 장치(101)(예: 프로세서(450))는 사용자의 움직임과 관련된 제1 활동 정보를 획득할 수 있다. 예를 들어, 전자 장치(101)의 센서 모듈(420)은 사용자의 움직임에 따른 센서 데이터를 획득할 수 있다. 전자 장치(101)의 프로세서(450)는 획득한 센서 데이터와 운동 종목별 데이터베이스를 비교하여 운동 종목 및 운동 기록을 획득할 수 있다. 따라서, 전자 장치(101)의 프로세서(450)는 운동 종목 및 운동 기록에 대한 정보를 포함하는 제1 활동 정보를 획득할 수 있다.
동작 2503에서, 전자 장치(101)(예: 프로세서(450))는 제1 활동 정보에 기반하여, 제1 종목 및 제2 종목 중 대응하는 하나의 종목을 선택할 수 있다. 예를 들어, 전자 장치(101)의 프로세서(450)는 제1 활동 정보가 포함하는 운동 종목에 대응되는 하나의 종목을 선택할 수 있다. 다른 예로, 전자 장치(101)의 프로세서(450)는 제1 활동 정보가 여러 운동 종목에 대한 정보를 포함하고 있는 경우, 디스플레이(410)를 통해 운동 종목들을 표시할 수 있고, 운동 종목에 대한 사용자의 입력을 수신할 수도 있다.
동작 2505에서, 전자 장치(101)(예: 통신 모듈(440))는 대응하는 하나의 종목과 관련된 다른 사용자들의 움직임과 관련된 제2 활동 정보에 대응하는 데이터를 수신할 수 있다. 여기서, 제2 활동 정보는 전자 장치(101)의 사용자에 관한 활동 정보와 구분될 수 있으며, 다른 사용자들에 대한 운동 종목 및 운동 기록 정보를 포함할 수 있다.
동작 2507에서, 전자 장치(101)(예: 디스플레이(410))는 제1 활동 정보에 대응하는 데이터 및 상기 제2 활동 정보에 대응하는 데이터를 표시할 수 있다. 전자 장치(101)의 프로세서(450)는 기 저장된 전자 장치(101)의 사용자에 대한 제1 활동 정보에서 운동 종목 및 운동 기록 정보를 확인할 수 있다. 또한, 전자 장치(101)의 프로세서(450)는 수신한 다른 사용자에 대한 제2 활동 정보에 기반하여 다른 사용자의 운동 종목 및 운동 기록 정보를 확인할 수 있다. 따라서, 전자 장치(101)의 디스플레이(410)는 동일한 종목에 대한 운동 기록을 동시에 표시할 수 있다.
도 26은 본 발명의 다양한 실시예에 따른 서버에서 챌린지를 진행하기 위한 흐름도를 도시한다. 도 26은 서버(106)의 동작 방법을 예시한다.
도 26을 참고하면, 동작 2601에서, 서버(106)(예: 통신 모듈(510))는 전자 장치(101)로부터 제1 종목 및 제2 종목 중 선택된 적어도 하나의 종목에 대한 정보를 수신할 수 있다. 전자 장치(101)의 프로세서(450)는 제1 종목 및 제2 종목 중 사용자의 선택에 대한 입력을 검출할 수 있고, 전자 장치(101)의 통신 모듈(440)은 검출된 입력을 서버(106)의 통신 모듈(510)로 송신할 수 있다. 따라서, 서버(106)의 프로세서(530)는 전자 장치(101)의 사용자의 종목 선택에 대한 정보를 수신할 수 있다.
동작 2603에서, 서버(106)(예: 프로세서(520))는 적어도 하나의 종목에 대한 정보에 기반하여 복수의 사용자들 중 적어도 하나의 사용자를 선택할 수 있다. 서버(106)의 프로세서(410)는 전자 장치(101)의 사용자의 종목 선택에 대한 정보를 수신하고, 해당 종목에 기반하여 복수의 사용자들을 식별할 수 있다. 예를 들어, 전자 장치(101)의 사용자가 걷기 종목을 선택한 경우, 서버(106)의 프로세서(530)는 걷기 종목을 선택한 복수의 사용자들을 식별하고, 해당 복수의 사용자들 중 경쟁 상대를 선택할 수 있다.
동작 2605에서, 서버(106)(예: 통신 모듈(510))는 활동 정보 중 상기 선택된 사용자에 대응되는 정보를 전자 장치(101)로 송신할 수 있다. 예를 들어, 서버(106)의 프로세서(530)는 선택된 사용자에 대응하는 정보를 메모리(520)에 기 저장할 수 있다. 여기서, 선택된 사용자에 대응하는 정보는 전자 장치(101)의 사용자가 선택한 운동 종목에 대한 구체적인 운동 기록에 대한 정보일 수 있다. 따라서, 서버(106)의 프로세서(530)는 선택된 사용자에 대한 선택된 운동 종목의 운동 기록에 대한 정보를 전자 장치(101)의 통신 모듈(440)로 송신할 수 있다.
본 문서에서 사용된 용어 "모듈"은 하드웨어, 소프트웨어 또는 펌웨어로 구성된 유닛을 포함하며, 예를 들면, 로직, 논리 블록, 부품, 또는 회로 등의 용어와 상호 호환적으로 사용될 수 있다. "모듈"은, 일체로 구성된 부품 또는 하나 또는 그 이상의 기능을 수행하는 최소 단위 또는 그 일부가 될 수 있다. "모듈"은 기계적으로 또는 전자적으로 구현될 수 있으며, 예를 들면, 어떤 동작들을 수행하는, 알려졌거나 앞으로 개발될, ASIC(application-specific integrated circuit) 칩, FPGAs(field-programmable gate arrays), 또는 프로그램 가능 논리 장치를 포함할 수 있다. 다양한 실시예에 따른 장치(예: 모듈들 또는 그 기능들) 또는 방법(예: 동작들)의 적어도 일부는 프로그램 모듈의 형태로 컴퓨터로 판독 가능한 저장 매체(예: 메모리(130))에 저장된 명령어로 구현될 수 있다. 명령어가 프로세서(예: 프로세서(120))에 의해 실행될 경우, 프로세서가 명령어에 해당하는 기능을 수행할 수 있다. 컴퓨터로 판독 가능한 기록 매체는, 하드디스크, 플로피디스크, 마그네틱 매체(예: 자기테이프), 광기록 매체(예: CD-ROM, DVD, 자기-광 매체(예: 플롭티컬 디스크), 내장 메모리 등을 포함할 수 있다. 명령어는 컴파일러에 의해 만들어지는 코드 또는 인터프리터에 의해 실행될 수 있는 코드를 포함할 수 있다. 다양한 실시예에 따른 모듈 또는 프로그램 모듈은 전술한 구성요소들 중 적어도 하나 이상을 포함하거나, 일부가 생략되거나, 또는 다른 구성요소를 더 포함할 수 있다. 다양한 실시예에 따른, 모듈, 프로그램 모듈 또는 다른 구성요소에 의해 수행되는 동작들은 순차적, 병렬적, 반복적 또는 휴리스틱하게 실행되거나, 적어도 일부 동작이 다른 순서로 실행되거나, 생략되거나, 또는 다른 동작이 추가될 수 있다.
본 발명의 다양한 실시예에 따르면, 챌린지 진행을 위한 명령어들을 저장하는 비-일시적 컴퓨터 판독 가능한 기록 매체(non-transitory computer readable medium)가 제공될 수 있다. 명령어들은, 프로세서에 의해 실행되면, 적어도 하나의 센서를 통하여 사용자의 움직임을 감지하고, 상기 사용자의 활동의 패턴과 관련된 제1 종목 및 제2 종목에 대한 정보를 메모리에 저장하고 상기 센서를 이용하여, 상기 사용자의 움직임과 관련된 제1 활동 정보를 획득하고, 상기 제1 활동 정보에 기반하여, 상기 제1 종목 및 상기 제2 종목 중 대응하는 하나의 종목을 선택하고, 상기 대응하는 하나의 종목과 관련된 하나 이상의 다른 사용자들의 움직임과 관련된 제2 활동 정보에 대응하는 데이터를 외부 장치로부터 통신 모듈을 이용하여 수신하고, 상기 제1 활동 정보에 대응하는 데이터 및 상기 제2 활동 정보에 대응하는 데이터를 상기 프로세서와 기능적으로 연결된 디스플레이를 이용하여 표시하는 동작을 상기 프로세서가 수행되도록 설정될 수 있다.
본 발명의 다양한 실시예에 따르면, 상기 복수의 명령어들은, 상기 수신하는 동작 이전에, 상기 통신 모듈을 이용하여 상기 제1 활동 정보에 대응하는 데이터를 상기 외부 장치로 전송하는 동작을 상기 프로세서가 수행하도록 설정될 수 있다.
본 발명의 다양한 실시예에 따르면, 상기 복수의 명령어들은, 상기 전송하는 동작 이전에, 전자 장치와 근거리에 있는 하나 이상의 외부 장치들 중 상기 대응하는 하나의 종목과 관련된 상기 외부 장치를 선택하는 동작을 상기 프로세서가 수행하도록 설정될 수 있다.
본 발명의 다양한 실시예에 따르면, 상기 복수의 명령어들은, 상기 적어도 하나의 센서 또는 통신 모듈을 이용하여 전자 장치의 위치 정보를 획득하는 동작, 및 상기 위치 정보에 더 기반하여, 상기 선택하는 동작을 상기 프로세서가 수행하도록 설정될 수 있다.
본 발명의 다양한 실시예에 따르면, 상기 적어도 하나의 센서는, 가속도 센서, 자이로 센서, 기압 센서, 지자기 센서, 모션 센서 및 GNSS(global navigation satellite system) 중 적어도 하나를 포함할 수 있다.
상술한 본 개시의 구체적인 실시예들에서, 개시에 포함되는 구성 요소는 제시된 구체적인 실시예에 따라 단수 또는 복수로 표현되었다. 그러나, 단수 또는 복수의 표현은 설명의 편의를 위해 제시한 상황에 적합하게 선택된 것으로서, 본 개시가 단수 또는 복수의 구성 요소에 제한되는 것은 아니며, 복수로 표현된 구성 요소라 하더라도 단수로 구성되거나, 단수로 표현된 구성 요소라 하더라도 복수로 구성될 수 있다.
한편, 본 개시의 상세한 설명에서는 구체적인 실시예에 관해 설명하였으나, 본 개시의 범위에서 벗어나지 않는 한도 내에서 여러 가지 변형이 가능함은 물론이다. 그러므로 본 개시의 범위는 설명된 실시예에 국한되어 정해져서는 아니 되며 후술하는 특허청구의 범위뿐만 아니라 이 특허청구의 범위와 균등한 것들에 의해 정해져야 한다.

Claims (20)

  1. 전자 장치에 있어서,
    통신 회로;
    적어도 하나의 센서;
    메모리; 및
    상기 통신 회로, 상기 적어도 하나의 센서, 및 상기 메모리와 연결된 프로세서를 포함하고, 상기 프로세서는,
    상기 적어도 하나의 센서를 이용해 제1 사용자의 움직임과 관련된 센서 데이터를 획득하고,
    상기 센서 데이터에 기반하여 활동 정보를 식별하되, 상기 활동 정보는 운동 종목 및 운동 기록을 포함하고,
    상기 활동 정보를 획득하는 것에 대한 응답으로, 상기 통신 회로를 통해 적어도 하나의 외부 전자 장치로부터, 챌린지를 위한 공간 정보를 수신하되, 상기 공간 정보는 물리적 공간 및 상기 운동 종목에 관련된 가상 공간을 나타내는 정보를 포함하고,
    상기 공간 정보를 수신하는 것에 대한 응답으로, 상기 활동 정보 및 상기 공간 정보에 관련된 하나 이상의 제2 사용자들을 식별하고,
    상기 하나 이상의 제2 사용자들을 식별하는 것에 대한 응답으로, 상기 제1 사용자에게 상기 하나 이상의 제2 사용자들 중 하나 이상의 제3 사용자들을 선택할 것을 요청하는 사용자 인터페이스를 상기 전자 장치와 기능적으로 연결된 디스플레이를 통해 표시하고,
    상기 제1 사용자에 의해 상기 하나 이상의 제3 사용자들이 선택되는 것에 대한 응답으로, 상기 통신 회로를 통해, 상기 선택된 하나 이상의 제3 사용자들에 대응하는 하나 이상의 외부 전자 장치들 각각에 대해, 상기 활동 정보 및 상기 공간 정보에 관한 하나 이상의 메시지들을 전송하도록 설정된 전자 장치.
  2. 제1항에 있어서, 상기 프로세서는,
    상기 하나 이상의 메시지들을 전송한 후, 상기 하나 이상의 외부 전자 장치들 중 적어도 하나로부터 수신된 적어도 하나의 메시지에 기반하여 상기 하나 이상의 제3 사용자들 중 챌린지 참여를 수락한 적어도 하나의 제3 사용자를 식별하고,
    상기 적어도 하나의 제3 사용자를 식별하는 것에 대한 응답으로, 상기 디스플레이를 통해, 상기 제1 사용자에게 상기 챌린지를 위한 움직임을 수행할 것을 요청하는 사용자 인터페이스를 표시하도록 설정된 전자 장치.
  3. 제2항에 있어서, 상기 프로세서는,
    상기 사용자 인터페이스에 대한 응답으로, 상기 적어도 하나의 센서를 이용해 상기 움직임을 수행하는 상기 제1 사용자의 제1 활동 정보를 식별하고,
    상기 제1 사용자에 의해 상기 움직임이 수행되는 동안 상기 식별된 적어도 하나의 제3 사용자로부터 감지된 제2 활동 정보를 식별하고,
    상기 제1 활동 정보 및 상기 제2 활동 정보를 상기 사용자 인터페이스 내에 표시하도록 설정된 전자 장치.
  4. 제1항에 있어서, 상기 프로세서는,
    상기 적어도 하나의 센서 또는 상기 통신 회로를 이용해 상기 물리적 공간에 해당하는 상기 전자 장치의 위치 정보를 수신하고; 및
    상기 위치 정보에 기반하여 상기 하나 이상의 제2 사용자들을 식별하도록 설정된 전자 장치.
  5. 제3항에 있어서, 상기 프로세서는,
    상기 제1 활동 정보와 상기 제2 활동 정보를 비교한 결과를 상기 사용자 인터페이스 내에 더 표시하도록 설정된 전자 장치.
  6. 제1항에 있어서, 상기 프로세서는,
    상기 식별된 하나 이상의 제2 사용자들 각각에 대응하는 하나 이상의 시각적 요소들을 상기 사용자 인터페이스에 표시하되,
    상기 하나 이상의 시각적 요소들은 각각 제2 사용자를 상기 하나 이상의 제3 사용자들로 삽입하거나 상기 하나 이상의 제3 사용자들로부터 제외하기 위한 것인 전자 장치.
  7. 제1항에 있어서, 상기 적어도 하나의 센서는,
    가속도 센서, 자이로(gyro) 센서, 기압 센서, 지자기 센서, 모션 센서 및 GNSS(global navigation satellite system) 중 적어도 하나를 포함하는 전자 장치.
  8. 제1항에 있어서, 상기 프로세서는,
    상기 전자 장치의 통신 이력 정보를 식별하고; 및
    상기 통신 이력 정보에 더 기반하여, 상기 하나 이상의 제2 사용자들을 식별하는 동작을 수행하도록 설정된 전자 장치.
  9. 전자 장치의 적어도 하나의 센서를 이용해 제1 사용자의 움직임과 관련된 센서 데이터를 획득하는 동작;
    상기 센서 데이터에 기반하여 활동 정보를 식별하되, 상기 활동 정보는 운동 종목 및 운동 기록을 포함하는 동작;
    상기 활동 정보를 획득하는 것에 대한 응답으로, 상기 전자 장치의 통신 회로를 통해 적어도 하나의 외부 전자 장치로부터, 챌린지를 위한 공간 정보를 수신하되, 상기 공간 정보는 물리적 공간 및 상기 운동 종목에 관련된 가상 공간을 나타내는 정보를 포함하는 동작;
    상기 공간 정보를 수신하는 것에 대한 응답으로, 상기 활동 정보 및 상기 공간 정보에 관련된 하나 이상의 제2 사용자들을 식별하는 동작;
    상기 하나 이상의 제2 사용자들을 식별하는 것에 대한 응답으로, 상기 제1 사용자에게 상기 하나 이상의 제2 사용자들 중 하나 이상의 제3 사용자들을 선택할 것을 요청하는 사용자 인터페이스를 상기 전자 장치와 기능적으로 연결된 디스플레이를 통해 표시하는 동작; 및
    상기 제1 사용자에 의해 상기 하나 이상의 제3 사용자들이 선택되는 것에 대한 응답으로, 상기 통신 회로를 통해, 상기 선택된 하나 이상의 제3 사용자들에 대응하는 하나 이상의 외부 전자 장치들 각각에 대해, 상기 활동 정보 및 상기 공간 정보에 관한 하나 이상의 메시지들을 전송하는 동작을 포함하는 방법을 수행하는 프로그램이 기록된 컴퓨터 판독 가능 기록 매체.
  10. 통신 회로, 적어도 하나의 센서, 메모리 및 프로세서를 포함하는 전자 장치의 동작 방법에 있어서,
    상기 적어도 하나의 센서를 이용해 제1 사용자의 움직임과 관련된 센서 데이터를 획득하는 동작;
    상기 센서 데이터에 기반하여 활동 정보를 식별하되, 상기 활동 정보는 운동 종목 및 운동 기록을 포함하는 동작;
    상기 활동 정보를 획득하는 것에 대한 응답으로, 상기 통신 회로를 통해 적어도 하나의 외부 전자 장치로부터, 챌린지를 위한 공간 정보를 수신하되, 상기 공간 정보는 물리적 공간 및 상기 운동 종목에 관련된 가상 공간을 나타내는 정보를 포함하는 동작;
    상기 공간 정보를 수신하는 것에 대한 응답으로, 상기 활동 정보 및 상기 공간 정보에 관련된 하나 이상의 제2 사용자들을 식별하는 동작;
    상기 하나 이상의 제2 사용자들을 식별하는 것에 대한 응답으로, 상기 제1 사용자에게 상기 하나 이상의 제2 사용자들 중 하나 이상의 제3 사용자들을 선택할 것을 요청하는 사용자 인터페이스를 상기 전자 장치와 기능적으로 연결된 디스플레이를 통해 표시하는 동작; 및
    상기 제1 사용자에 의해 상기 하나 이상의 제3 사용자들이 선택되는 것에 대한 응답으로, 상기 통신 회로를 통해, 상기 선택된 하나 이상의 제3 사용자들에 대응하는 하나 이상의 외부 전자 장치들 각각에 대해, 상기 활동 정보 및 상기 공간 정보에 관한 하나 이상의 메시지들을 전송하는 동작을 포함하는 방법.
  11. 삭제
  12. 삭제
  13. 삭제
  14. 삭제
  15. 삭제
  16. 삭제
  17. 삭제
  18. 삭제
  19. 삭제
  20. 삭제
KR1020170017459A 2017-02-08 2017-02-08 사용자의 활동 패턴과 관련된 타인의 활동 정보를 제공하는 방법 및 그 전자 장치 KR102621649B1 (ko)

Priority Applications (5)

Application Number Priority Date Filing Date Title
KR1020170017459A KR102621649B1 (ko) 2017-02-08 2017-02-08 사용자의 활동 패턴과 관련된 타인의 활동 정보를 제공하는 방법 및 그 전자 장치
EP18750905.4A EP3545522A1 (en) 2017-02-08 2018-02-08 Method for providing activity information of other related to activity pattern of user and electronic device thereof
CN201880010948.1A CN110326276B (zh) 2017-02-08 2018-02-08 电子设备和计算机可读记录介质
US15/892,276 US10321272B2 (en) 2017-02-08 2018-02-08 Method for providing activity information of other related to activity pattern of user and electronic device thereof
PCT/KR2018/001712 WO2018147658A1 (en) 2017-02-08 2018-02-08 Method for providing activity information of other related to activity pattern of user and electronic device thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020170017459A KR102621649B1 (ko) 2017-02-08 2017-02-08 사용자의 활동 패턴과 관련된 타인의 활동 정보를 제공하는 방법 및 그 전자 장치

Publications (2)

Publication Number Publication Date
KR20180092105A KR20180092105A (ko) 2018-08-17
KR102621649B1 true KR102621649B1 (ko) 2024-01-05

Family

ID=63037458

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020170017459A KR102621649B1 (ko) 2017-02-08 2017-02-08 사용자의 활동 패턴과 관련된 타인의 활동 정보를 제공하는 방법 및 그 전자 장치

Country Status (5)

Country Link
US (1) US10321272B2 (ko)
EP (1) EP3545522A1 (ko)
KR (1) KR102621649B1 (ko)
CN (1) CN110326276B (ko)
WO (1) WO2018147658A1 (ko)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11039763B2 (en) * 2017-01-13 2021-06-22 Hill-Rom Services, Inc. Interactive physical therapy
KR102570426B1 (ko) 2018-11-14 2023-08-25 삼성전자주식회사 추천 서비스를 제공하기 위한 방법, 이를 위한 전자 장치 및 저장 매체
CN109893137B (zh) * 2019-03-07 2021-09-03 山东科技大学 基于移动终端在不同携带位置下改善步态检测的方法
US11159645B2 (en) * 2019-06-21 2021-10-26 Dell Products, L.P. Adaptive backchannel synchronization for virtual, augmented, or mixed reality (xR) applications in edge cloud architectures
US11452928B2 (en) * 2019-07-02 2022-09-27 Jae Hwan Kim System for providing virtual exercising place
CN112057066A (zh) * 2020-09-03 2020-12-11 青岛歌尔智能传感器有限公司 心率的检测方法、可穿戴设备及计算机存储介质
USD960901S1 (en) * 2020-10-30 2022-08-16 Zoox, Inc. Display screen or portion thereof having a graphical user interface

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170032692A1 (en) * 2014-04-09 2017-02-02 Lg Electronics Inc. Mobile terminal and method for controlling the same

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7766794B2 (en) * 2007-11-02 2010-08-03 Microsoft Corporation Mobile exercise enhancement with virtual competition
US8892999B2 (en) 2007-11-30 2014-11-18 Nike, Inc. Interactive avatar for social network services
EP2282819A4 (en) * 2008-04-09 2015-10-07 Nike Innovate Cv SYSTEM AND METHOD FOR MONITORING ATHLETIC PERFORMANCE
US8330170B2 (en) * 2008-12-05 2012-12-11 Micron Technology, Inc. Semiconductor device structures including transistors with energy barriers adjacent to transistor channels and associated methods
WO2012021507A2 (en) 2010-08-09 2012-02-16 Nike International Ltd. Monitoring fitness using a mobile device
WO2013074939A2 (en) * 2011-11-18 2013-05-23 Arginsky, Irwin System and method for monitoring the use of an exercise apparatus
EP2805274B1 (en) * 2012-01-18 2023-09-06 NIKE Innovate C.V. Activity identification
CN103428630A (zh) 2012-05-21 2013-12-04 华为终端有限公司 一种终端的搜索方法和装置
US8864587B2 (en) * 2012-10-03 2014-10-21 Sony Corporation User device position indication for security and distributed race challenges
WO2014130805A1 (en) 2013-02-22 2014-08-28 Nike, Inc. Activity monitoring, tracking and synchronization
KR101575931B1 (ko) * 2013-07-15 2015-12-10 배재대학교 산학협력단 운동관리 방법 및 이를 이용한 운동관리 시스템
KR20150025012A (ko) 2013-08-28 2015-03-10 (주)아람솔루션 스마트폰을 이용하여 운동 정보를 수집 및 활용하기 위한 시스템 및 그 방법
KR101593194B1 (ko) * 2013-09-16 2016-02-15 엔에이치엔엔터테인먼트 주식회사 사용자의 이동경로에 기반하여 서비스를 제공하는 서비스 방법 및 시스템
CN103747140B (zh) * 2014-01-08 2017-03-29 惠州Tcl移动通信有限公司 一种获取相同运动模式下好友运动信息的方法及系统
US9344546B2 (en) * 2014-05-06 2016-05-17 Fitbit, Inc. Fitness activity related messaging
US20150350822A1 (en) * 2014-05-29 2015-12-03 Apple Inc. Electronic Devices with Motion Characterization Circuitry

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170032692A1 (en) * 2014-04-09 2017-02-02 Lg Electronics Inc. Mobile terminal and method for controlling the same

Also Published As

Publication number Publication date
US20180227706A1 (en) 2018-08-09
US10321272B2 (en) 2019-06-11
KR20180092105A (ko) 2018-08-17
WO2018147658A1 (en) 2018-08-16
CN110326276B (zh) 2021-07-09
EP3545522A4 (en) 2019-10-02
EP3545522A1 (en) 2019-10-02
CN110326276A (zh) 2019-10-11

Similar Documents

Publication Publication Date Title
KR102621649B1 (ko) 사용자의 활동 패턴과 관련된 타인의 활동 정보를 제공하는 방법 및 그 전자 장치
US20220040533A1 (en) Electronic apparatus and operating method thereof
CN108701495B (zh) 用于整合和提供从多个设备收集的数据的方法以及用于实现该方法的电子设备
CN107016038B (zh) 执行应用的方法和支持该方法的电子设备
KR102636637B1 (ko) 운동 정보를 검출하기 위한 방법 및 그 전자 장치
CN107665485B (zh) 用于显示图形对象的电子装置和计算机可读记录介质
US20160144236A1 (en) Exercise information providing method and electronic device supporting the same
US10115017B2 (en) Electronic device and image display method thereof
CN105955973B (zh) 用户信息处理方法和支持该方法的电子设备
KR20160128872A (ko) 지문 정보 처리 방법 및 이를 지원하는 전자 장치
KR20180120449A (ko) 프로필 이미지 공유 방법 및 이를 지원하는 전자 장치
KR20160123892A (ko) 전자 장치 및 전자 장치에서 적어도 하나의 페어링 대상을 식별하는 방법
CN109196546B (zh) 电子设备和包括该电子设备的信息处理系统
US20180205675A1 (en) Message generation method and wearable electronic device for supporting the same
CN108024763B (zh) 活动信息提供方法及支持其的电子设备
EP3110122A1 (en) Electronic device and method for generating image file in electronic device
KR20180089699A (ko) 건강 콘텐트 제공 방법 및 이를 수행하는 전자 장치
KR20160100147A (ko) 다중 데이터의 배칭 처리 방법 및 장치
KR20160105121A (ko) 전자 장치의 동작 방법, 전자 장치 및 저장 매체
US10691318B2 (en) Electronic device and method for outputting thumbnail corresponding to user input
KR20170065902A (ko) 객체와 연관된 사용자 인터페이스 제어 방법 및 이를 구현한 전자 장치
KR102564468B1 (ko) 경로 정보를 제공하기 위한 전자 장치 및 방법
KR102377001B1 (ko) 모션 인식 서비스 제공 방법 및 그 전자 장치
KR20170057651A (ko) 전자 장치 및 전자 장치의 핸드오프 기능 제공 방법
KR102354729B1 (ko) 전자 장치의 연락처 관리 방법 및 그 전자 장치

Legal Events

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