iOS 환경에서 미핏은 구글 피트니스 동기화를 제공하고 있지 않다. 대신 iOS의 기본 앱인 건강 앱으로 데이터 동기화 기능을 제공한다. 하지만 iOS용 구글 피트니스 앱은 건강 앱으로 부터 데이터를 가져오기 때문에 건강 앱으로 들어오는 데이터를 이용해서 미핏의 데이터를 가져올 수 있게 된다.
안드로이드 버전 미핏의 구글 피트니스 동기화는 문제가 종종 발견되므로 Notify & Fitness for Mi Band 같은 외부 앱을 써서 동기화를 해야할 수 있다. 하지만 건강 앱을 중간에 둬서 처리하는 구글 피트니스 동기화하는 iOS에서는 동기화가 별 문제없이 동작한다.
앱 설치
01. 미핏을 설치한 후 실행한 후 로그인한다. 미핏에 요구하는 각종 권한 요청을 모두 허용해준다.
02. 미핏의 설정 메뉴( 프로필 > 설정)를 선택한다. 그리고 건강 메뉴를 선택하면 건강 앱에서 미핏 동기화 설정을 할 수 있다는 안내를 볼 수 있다.
03. 구글피트니스 앱을 설치후 실행한다. 데이터를 동기화할 구글 계정을 선택 후 로그인한다.
iOS에서 구글 피트니스는 자체적으로 피트니스 데이터를 만들지 않기 때문에 자동으로 추적한다는 의미는 건강 앱으로 부터 데이터를 가져오다는 의미를 가진다. 일단 거부 처리한다.
안드로이드 환경에서 미핏은 기본적으로 구글 피트니스 동기화 기능을 제공하고 있다. 하지만 미핏의 경우 구글 피트니스 데이터 동기화가 누락되거나 일부만 되는 경우가 종종 발생한다. 혹은 구글 피트니스 앱으로는 데이터가 정상적으로 동기화 되지만 Google Fitness API로 데이터를 조회하면 앱에서 보여주는 데이터와 다른 경우도 발생한다.
또한 미핏의 경우 구글 피트니스의 활동 추적 기능을 이용한 걸음 수 계산을 동시에 이용할 수 없다. 하지만 Notify & Fitness for Mi Band 앱은 활동 추적에 의한 걸음 수와 미핏에서 발생한 걸음 수 데이터 병합에 문제가 없으므로 평소에는 스마트폰 센서 기반 걸음 수를 이용하다가 운동할때만 스마트 밴드를 사용할 수도 있다.
따라서 사용자가 미핏의 데이터를 익스포트해서 활용하고 싶은 경우에는 Notify & Fitness for Mi Band 앱이 확실한 장점을 가진다. 또한 미핏과 다르게 24시간 수면 체크 기능을 제공하며 복잡한 과정을 거치지 않고 파일 형태로 내보내기를 하여 구글 드라이브등에 저장할 수도 있다. 또한 구글피트니스 데이터 동기화를 수동으로 진행할 수도 있으므로 문제 발생시 복구도 쉬워진다.
설치 및 PRO 라이센스 구매
01. 먼저 미핏앱과 구글 피트니스 앱을 설치해 두어야 한다. 펌웨어 업그레이드 및 블루투스 연결은 미핏을 이용하여 미리 스마트폰과 연결해준다
02. 미핏으로 미밴드와의 연결이 완료되었으면 이제 구글 플레이에서 Notify & Fitness for Mi Band를 설치한다.
03. 앱을 실행하면 권한 부여 경고가 출력된다. 권한 부여 버튼을 눌러의 앱의 권한을 허용해준다.
04. 메인 메뉴에서 PRO 버튼을 눌러서 PRO 버전 라이센스로 업그레이드 한다. 구글 피트니스 동기화 기능은 PRO 버전에서만 제공한다. 가격은 3900원이다.
기본 설정
미핏을 쓰지 않고 Notify & Fitness for Mi Band 앱만을 사용하기 위한 기본 설정 방법은 다음과 같다.
01. 최초 설치 시점에는 한글 알림 메시지가 깨져 나오게 된다. 알람() 메뉴를 클릭한 후 앱 탭에서 다음과 같이 깨끗한 텍스크 옵션을 비활성화하면 한글이 정상적으로 출력된다.
02. 앱 최초 설치시 앱 알람이 오면 내용이 보이지 않게 설정되어 있다. 알람() 메뉴중 앱 탭에서 각 앱의 상세 메뉴를 누른다. 그리고 Open 메뉴 선택후 알림 내용 보여주기 옵션을 활성화하여 알람 내용을 출력해 줄 수 있다.
04. 메인 메뉴 프로필 메뉴를 선택 한 후 성별, 생일, 키, 체중 정보를 설정한다.
05. 통계() 메뉴를 선택 후 수면탭을 선택 한 후 하루 전체를 분석 옵션을 활성화 한다. 이 옵션을 통해 미핏에서 불가능했던 낮잠에 대한 수면 정보를 기록할 수 있게 된다.
그리고 심박 탭으로 이동 후 심박 모니터링을 활성화 시켜준다. 최초 설치시에 심박 모니터링이 비활성화되어 있다.
심박 간격이 최초에는 계속으로 선택되어 있는데 심박 측정 주기가 불안정하게 동작한다. 따라서 심박 모니터링 출력 영역을 선택해서 상세 설정으로 들어간후 주기 영역을 선택해서 모니터링 주기를 변경한다. 5분이나 10분정도를 선택하기로 하자.
06. 손목들어올려서 활성화 모드 설정하기. 메인 메뉴 Band settings 메뉴를 선택 한 후 손목 들기 옵션을 활성화 한다.
07. 방해 금지 모드의 경우 스마트폰 제조사나 안드로이드 버전에 따라 동작하지 않을 수 있이므로 사용하지 않는 것을 권장한다. 대신 통계() 메뉴의 앱 탭에서 수면 시간 범위 동안 알람을 오지 않도록 설정하거나 알림 무시 기능을 사용한다.
구글 피트니스 연동 설정하기
01. 먼저 미핏에서 구글 피트니스 연동을 해지한다. 미핏과 Notify & Fitness for Mi Band의 데이터가 동시에 동기화 되는 경우 문제가 생길 수 있다. 미핏 메뉴(프로필 > 계정 추가 > Googlt Fit)을 선택후 Google Fit에서 제거 버튼을 클릭하여 연동을 해지하면 된다.
02. 통계() 메뉴를 선택 후 걸음, 수면, 심박 탭을 눌러 Google Fit 앱에 자동 동기화 옵션을 모두 활성화 한다. 걸음 수의 경우에 Google Fit 걸음 모드 역시 활성화해야 한다.
주의할 점은 걸음, 심박 데이터는 Notify & Fitness for Mi Band 앱을 실행하지 않아도 백그라운드에서 계속 데이터를 밴드에서 가져와 구글 피트니스 동기화 해주지만 수면 데이터는 백그라운드에서 처리가 안된다. 반드시 앱을 한번 실행해줘야 미밴드에서 수면 데이터를 가져오게 된다. 이렇게 데이터를 가져와야지 구글 피트니스로 데이터 동기화가 일어나게 된다.
03. 이제 어떤 구글 피트니스 계정에 동기화를 해줄지 설정 해야 한다. 통계() 메뉴를 선택 후 걸음 탭에서 Google Fit 앱에 동기화를 선택하여 특정 기간 데이터를 동기화 시도한다. 이때 구글 피트니스에 사용중인 구글 계정을 선택하고 접근 권한을 허용해주면 된다.
정상적으로 데이터 동기화가 되면 연결이 완료되었다.구글 피트니스앱의 설정 > 연결된 앱 관리 메뉴를 선택했을때 Notify & Fitness for Mi Band가 표시되면 문제가 없는 것이다.
04. 메인 메뉴에서 설정을 선택 후 고급 탭을 선택한다. Google Fit 자동 동기화 메뉴에 720분이 기본 설정되어 있는 것을 확인할 수 있다. 동기화 주기를 720분에서 10분으로 변경하여 구글 피트니스로 빠르게 동기화 되도록 설정한다.
주의할 점은 동기화 주기를 짧게 설정하면 걸음 수와 심박 수는 빠르게 동기화되지만 수면 데이터는 다소 늦게 동기화 된다는 점이다. 낮 시간 수면 시간을 합산하여 계산하기 위해 긴 주기로 동기화하는 것으로 생각된다.
그리고 구글 피티니스 서버에 데이터가 동기화 되었더라고 앱에 반영이 안되있는 경우가 있을 수 있다. 그런 경우에는 구글 피트니스앱의 일지 탭에서 화면 상단의 리프레시 버튼을 눌러서 최신 정보를 가져오도록 시도하면 된다.
자동 활동 추적 설정
구글 피트니스 앱은스마트밴드를 이용하지 않더라도 스마트폰 센서를 이용하여 걸음 수를 추적할 수 있다. 만약 24시간 동안 스마트밴드를 사용하지 않은 경우에는 활동 추적 메뉴(설정 > 추적 환경설정 > 활동 추적)를 활성화한다. 활동 추적 메뉴를 활성화하면 스마트밴드 기반 걸음 수와 스마트폰 센서 기반 걸음수가 병합되어 계산되므로 편리해진다.
백그라운드 실행 설정
구글 피트니스 동기화를 위해서는 앱이 백그라운드에서 계속 실행을 보장받아야 한다. 따라서 Notify & Fitness for Mi Band 앱을 실행 후 절전 모드에 의해 자동 종료되는 것을 막아야 한다. 그래서 Notify & Fitness for Mi Band 앱 최초 설치시점에 백그라운드 실행 설정을 하는 방법에 대해 다음과 같이 튜토리얼에서 안내하고 있다.
안내 방법중 삼성스마트폰에서 절전 모드 전환을 막는 방법을 예로 들어 보겠다.
01. 스마트폰 설정 메뉴에서 디바이스 케어 > 배터리 > 앱별 배터리 사용 관리 메뉴를 선택한다.
02. 사용하지 않는 앱을 전전 상태로 전환 옵션을 다음과 같이 비활성 처리한다.
03. 절절 상태로 전환하지 않을 앱에 Notify & Fitness for Mi Band 앱을 추가한다.
04. 이제 Notify & Fitness for Mi Band이 실행되면 자동으로 종료되지 않기 때문에 구글 피트니스 동기화가 주기적으로 실행되게 된다. 주의할 점은 스마트폰 재시작 이후에 최초 1회 실행하는 것을 잊지 말아야 한다. 구 삼성 안드로이드폰은 앱 자동 시작 기능을 지원했지만 지금은 지원하지 않는다.
기타 주의사항
미핏과 Notify & Fitness for Mi Band 앱을 동시에 사용하는 경우 두 앱에서 각자 스마트 밴드의 설정값을 설정하면서 설정값이 이상하게 설정될 수 있다. 따라서 Notify & Fitness for Mi Band에서 설정할 수 없는 날씨 설정정도만 미핏에서 사용하도록 한다.
갤럭시 핏e은 비슷한 가격대의 스마트밴드인 미밴드와 비교하면 비교도 되지 못할정도로 하드웨어 스펙이 떨어진다. 하지만 갤럭시 핏e도 5만원 이하로 구매할 수 있는 스마트밴드중 구입할 만한 가치가 있는 장점들을 가지고 있다.
삼성 헬스가 지원하는 가장 저렴한 하드웨어
일단 삼성 헬스라는 편리한 건강 관리 앱을 지원하는 가장 저렴한 하드웨어이다. 또한 미밴드4와 다르게 24시간 수면시간 체크 지원을 한다. 낮밤이 뒤바뀐 상황에서도 정확하게 수면시간을 기록해준다.
또한 삼성 헬스에서 지원하는 기능은 아니지만 Health Sync라는 유로 앱을 구입하면 구글 피트니스로 데이터를 안정적으로 동기화 할 수 있다. 미밴드의 건강 관리앱인 미핏은 자체에 구글 피트니스 연동 기능은 여러가지 오류로 인해 데이터 누락이 발생해서 불안정하다. 필자가 미밴드를 사용하다가 갤럭시 핏e로 교체하게된 가장 큰 원인이다.
자동운동 감지를 지원
미밴드4에서 지원하지 않는 자동 운동 감지(걷기, 달리기)를 지원한다. 감지 센서가 갤럭시 핏e의 상위 버전을 구입하면 6종의 운동 감지를 지원한다.
Samsung Health SDKs를 이용한 데이터 조회
일반 사용자와는 상관없지만 삼성 헬스를 지원하는 스마트 밴드는 삼성이 제공하는 Samsung Health SDKs(https://developer.samsung.com/health) 를 이용해서 저장한 데이터를 조회할 수 있다. 앞서 설명한 구글 피트니스 연동 앱인 Health Sync도 해당 SDK를 이용해서 제작한 외부 앱들 중 하나이다.
만약 헬스 데이터를 수집해서 실시간 데이터 분석 시스템 제작이 목적인 사용자라면 해당 기능을 통해 실시간으로 데이터를 수집할 수 있게 되어 편리하다. 예를 들어 미밴드의 데이터를 외부로 저장하려면 이메일을 통한 다운로드 링크를 받고 암호 입력후 다운로드 받아야 하는 복잡한 과정을 거쳐야 한다.
그밖의 단점들
그저 그런 스마트 밴드들의 단점을 모두 보여주고 있다. 흑백 스크린이 장비되어 있으면 스크린 터치도 지원하지 않는다. 충돌 감지 센서로 스크린을 변경하는 방식이다. 또한 심박수 센서 감지 빈도를 변경하지 못하기 때문에 자동 심박수 기능을 사용하면 충전하고 3일이상 사용하기 어렵다. 심박수 기능을 쓰지 않더라도 구동시간이 일주일 정도가 한계이기 때문에 아쉬운 부분이다.
갤럭시핏e의 단점은 사실 갤럭시 핏이라는 상위 버전을 구입하면 대부분 해결 된다. 하지만 미밴드4와 비슷한 스펙이면서 가격이 10만원인 것이 문제다. 하지만 삼성 헬스를 지원하고 24시간 수면 체크가 되는 스마튼 밴드를 원한다면 선택의 여지가 없다.
시중에는 걸음 수와 수면 시간 같은 활동 데이터를 수집할 수 있는 여러 종류의 스마트 밴드와 스마트 워치가 있다. 활동 데이터를 제대로 수집하려면 24시간 동안 몸에 부착이 필요하므로 휴대가 편하고 한번 충전으로 오랜 시간 사용이 가능해야 한다. 또한 자동화된 데이터 분석을 위해서는 데이터를 일정 주기로 자동으로 익스포트할 수 있어야 한다.
삼성 헬스는 구글 피트니스 연동을 제공하지는 않지만 헬스싱크(Health Sync)라는 유료앱을 이용하면 데이터를 주기적으로 구글 피트니스로 가져올 수 있다. 이 글은 삼성의 스마트 밴드와 연결한 후 삼성 헬스를 통해 구글 피트니스 데이터를 동기화 하는 과정을 설명하고 있다.
샤오미 미핏은 자체적으로 구글 피트니스의 데이터 동기화를 제공하지만 여러가지 데이터 누락 문제가 있기 때문에 추가 요금이 들더라도 헬스싱크(Health Sync)와 삼성 헬스를 사용하여 구글 피트니스와 연동하여 사용하는 것을 추천한다.
갤럭시 웨어러블(galaxy wearable) 앱 설치하기
삼성이 제작한 스마트밴드나 스마트워치를 스마트폰과 연결하려면 갤럭시웨어러블 앱을 먼저 설치해야 한다. 플레이 스토어에서 “galaxy wearable”를 검색한후 설치한다.
이제 galaxy wearable을 실행후 좌측 메뉴의 새 디바이스 추가를 클릭한후 내가 가진 디바이스를 선택한다.
디바이스를 선택하면 연결할 디바이스 목록이 나타난다. 원하는 기기를 선택한다. 기기가 연결되면 좌측 메뉴에 연결됨이라는 표시가 출력되는 것을 확인할 수 있다.
이제 삼성 헬스에서 디바이스로 데이터를 조회할 수 있는 준비가 끝났다.
삼성 헬스 앱 설치하기
삼성헬스는 삼성에서 판매중인 스마트밴드인 갤럭시 핏과 스마트워치인 갤럭시 기어 시리즈의 데이터를 이용하여 사용자의 활동을 종합적으로 분석하여 보여주는 헬스케어 앱이다. 먼저 플레이 스토어에서 “삼성 헬스”를 검색한후 설치한다.
삼성 헬스를 실행한 후 화면 중앙에 걸음 수 숫자를 클릭하면 다음과 같은 걸음 수 정보를 볼 수 있다. 걸음 수 그래프 하단을 살펴보면 어떤 디바이스를 통해 데이터를 보여주는지 알 수 있다. 이곳을 클릭하여 내가 원하는 디바이스의 정보를 보여줄 수 있다. 이 메뉴에 내가 추가한 디바이스가 보이면 이제 데이터를 구글 피트니스와 동기화할 준비가 끝난 것이다.
헬스 싱크(Helath Sync) 앱 설치하기
헬스 싱크는 삼성에서 제공하는 API를 이용하여 삼성 헬스에 저장된 데이터를 가져와 구글 피트니스로 동기화 시켜주는 앱이다. 최초 설치시에는 1주일간 무료 기간이 있으므로 사용후 구입 여부를 선택할 수 있다. 다음과 같이 플레이 스토어에서 “삼성 헬스”를 검색한후 설치한다.
데이터 소스가 무엇인지 선택하라는 메뉴가 등장한다. 삼성 헬스를 선택한다.
그리고 동기화 방향을 선택하라는 메뉴가 등장하면 첫번째 메뉴인 Samsung Heath -> Google Fit 메뉴를 선택한다.
CHECK GOOGLE FIT CONNECTION을 선택해서 데이터를 동기화할 구글 계정을 선택한다.
우측 메뉴의 Trial period 메뉴를 선택하여 유료 버전을 구입할 수 있다. 8일간 뮤료이므로 테스트후 구입 여부를 판단한다. 3,500원을 내고영구적으로 사용하거나 6개월 마다 1천원을 결제하는 구독 방식으로 구매할 수 있다.
우측메뉴에서 Settings를 선택하여 데이터 동기화 간격을 설정할 수 있다. 최초에는 15분 간격으로 설정된 것을 확인할 수 있다.
메인화면에는 어떤 항목의 데이터를 구글 피트니스로 동기화할지 선택할 수 있다. 모든 체크박스를 체크하도록 한다. 하단의 동기화 버튼을 통해 오늘의 데이터를 수동으로 동기화 시도할 수도 있다.
이제 구글피트니스와의 데이터 연동이 정상적으로 이루어 졌는지 확인해야 한다. 삼성 헬스에 걸음 데이터가 들어온 것을 확인후에 헬스 싱크로 수동 동기화 버튼을 눌러서 데이터를 동기화 해준다.
구리고 플레이 스토어에서 “구글 피트니스”를 검색한후 설치한다.
메인화면에서 프로필 메뉴를 탭한 후 오른쪽 화면에 나오는 설정 버튼을 탭한다. 그리고 “연결된 앱 관리” 메뉴를 탭하면 구글 피트니스 데이터에 접근 권한을 가진 앱들의 리스트가 나온다.
리스트 중에 다음과 같이 헬스싱크가 추가되어 있어야 한다.
그리고 얼마간의 시간이 지나면 다음과 같이 헬스싱크 아이콘이 뜬 활동 데이터가 들어오는 것을 확인할 수 있다.
백그라운드 실행 유지 설정 하기
안드로이드폰 제조사들은 배터리와 성능 최적화를 위해 앱을 백그라운드에서 실행하는 방식을 관리하고 있다. 이런 최적화 기능에 의해 앱이 종료되면 데이터 동기화가 실패할 수 있다. 따라서 위에 설치한 삼성 헬스, galaxy wearable, 헬스 싱크(Health Sync) 모두 백그라운드 실행 권한을 주도록 한다.
삼성 단말기인 경우 배터리 사용 최적화 해제, LG 단말기의 경우 절전 기능 예외 앱처럼 배터리 최적화 대상에서 앱을 제외시켜주면 된다.
시중에는 걸음 수와 수면 시간 같은 활동 데이터를 수집할 수 있는 여러 종류의 스마트 밴드와 스마트 워치가 있다. 활동 데이터를 제대로 수집하려면 24시간 동안 몸에 부착이 필요하므로 휴대가 편하고 한번 충전으로 오랜 시간 사용이 가능해야 한다. 또한 자동화된 데이터 분석을 위해서는 데이터를 일정 주기로 자동으로 익스포트할 수 있어야 한다.
미밴드는 구글 피트니스로 데이터 동기화를 지원므로 API를 통해 데이터를 외부에서 접근하여 가공할 수 있기 때문에 데이터 분석에 용이하다. 미밴드 말고 다른 스마트워치, 피트니스앱을 사용하고 싶다면 구글 피트니스 데이터 동기화를 지원하는지 살펴보자. 구글 피트니스는 각종 피트니스 데이터를 모아주는 허브 역할을 하기 위해 만들어졌으므로 많은 수의 스마트 밴드 회사들이 구글 피트니스 데이터 동기화를 지원한다. 구글 피트니스 데이터 동기화를 정식으로 지원하는 제품은 웨어 OS(구 안드로이드 웨어 OS)기반 스마트워치 제품들과 LG 헬스라는 피트니스앱등이 있다.
삼성헬스는 스마트 밴드없이 수면시간과 걸음 수를 비교적 정확하게 체크할 수 있지만 아쉽게도 공식적으로 구글 피트니스 연동을 제공하지는 않는다. 하지만 Health Sync라는 유료앱을 구매하면 구글 피트니스로 데이터를 전송할 수 있으므로 스마트밴드 착용이 번거롭거나 삼성 스마트워치를 사용하는 사람이라면 구매를 고려해볼만 한다.
미핏 설치 및 구글피트니스 연동하기
미핏은 샤오미사에서 만든 제품 기기를 한꺼번에 관리하하는 역할을 하는 앱으로 스마트밴드인 미밴드 뿐만 아니라 스마트 체중계, 스마트 워치등의 정보등을 확인할 수도 있다.미핏 앱을 설치해야 수면 패턴 및 시간, 걸음 수, 소모 칼로리, 심박 수등의 정보를 확인할 수 있다.먼저 플레이 스토어에서 앱을 설치해야 한다. 플레이 스토어에서 “Mi Fit”를 검색한후 설치한다.
미핏 앱을 실행되고 펌웨어 업데이트가 완료되면 아래와 같이 로그인/가입 버튼이 나온다. 앱을 사용하려면 미핏 계정이 있어야 하므로 가입 버튼을 탭한다. 샤오미 계정을 생성하거나 구글, 페이스북 같은 외부 로그인 정보를 선택하여 계정을 생성할 수 있다. 원하는 외부 계정 방식을 선택하여 인증을 하면 계정이 생성된다.
가입 과정이 끝나면 분석을 위한 개인정보 입력창이 등장한다. 각 세부 정보를 입력후 다음 버튼을 클릭하면 앱의 메인화면으로 이동하고 간단한 도움말을 툴팁이 뜨는 것을 볼 수 있다.
앱 실행시 기기 권한 억세스 팝업창과 블루투스 사용 설정 팝업이 뜰 수 있다. 두 팝업창 모두 허용 버튼을 탭한다.
이제 미밴드를 앱에 등록해야 한다. 화면 오른쪽 상단에 위치한 + 버튼을 탭한다. 그리고 연결할 기기 선택 화면에서 밴드를 선택한다. 미밴드 기기의 검색이 성공하면 미밴드에서 진동이 발생하고 밴드의 터치 센서를 탭하게 되면 기기 등록이 완료된다.
이제 구글 피트니스와 데이터 동기화를 설정하여 미밴드의 데이터를 구글 피트니스에 저장될 수 있도록 설정 해보자. 프로필 > 계정 추가 메뉴를 탭하면 계정 추가 선택화면이 등장한다. 이중 Google Fit 메뉴를 탭한 후 Google Fit 추가 버튼을탭한다.
이제 동기화에 사용할 구글 계정을 선택하고 권한 허용 버튼을 탭하면 동기화 설정이 완료된다. 이제 구글피트니스 API를 이용하여 프로그램을 통해 데이터를 가져올 수 있다.
이제 구글피트니스와의 연동이 정상적으로 이루어 졌는지 확인해야 한다. 플레이 스토어에서 “구글 피트니스”를 검색한후 설치한다.
메인화면에서 프로필 메뉴를 탭한 후 오른쪽 화면에 나오는 설정 버튼을 탭한다. 그리고 “연결된 앱 관리” 메뉴를 탭하면 구글 피트니스 데이터에 접근 권한을 가진 앱들의 리스트가 나온다.
리스트 중에 다음과 같이 Mi Fit이 추가되어 있어야 한다.
그리고 구글피트니스의 “활동 측정 항목 추적”을 꺼짐으로 설정하여 미핏의 피트니스 데이터와 스마트폰의 걸음 수 데이터가 동시에 저장 되지 않도록 한다( 프로필 > 설정 > 활동 측정항목 추적 : 꺼짐 선택)
미피트앱과 구글 피트니스간의 데이터 동기화는 백그라운드에서 자동으로 수시로 이루어진다. 따라서 미핏의 앱에게 백그라운드 실행 권한을 주지 않으면 어느 순간 데이터 동기화가 진행되지 않을 수 있다. 백그라운드 실행 권한 설정은 제조사에 따라 설정 방법이 다양하기 때문에 미핏에서 설정하는 방법을 상세하게 알려준다.
설정 방법을 살펴보려면 프로필 > 내기기 메뉴에서 등록한 미밴드를 탭한다. 그리고 백그라운드에서 실행을 탭하면 제조사에 따른 설정 방법을 볼 수 있다.
필자가 사용하는 샤오미 스마트폰의 백그라운드 설정을 바꾸는 방법을 예로 한번 들어 보겠다. 안드로이드 앱 설정에서 미핏 앱의 자동시작을 ON으로 하고 배터리 절약을 제한 없음으로 설정 한다. 그리고 메뉴 버튼을 탭한후 미핏 앱 탭하면 서브 메뉴가 등장한다. 자물쇠 아이콘을 클릭하여 “잠금 앱” 기능을 활성화시켜서 앱이 자동으로 종료되지 않도록 변경해주도록 한다.
또한 플레이스토어에서 주기적으로 미핏 업데이트를 통해 최신 버전을 유지하자. 백그라운드 실행 설정과 자동 실행 설정을 해도 미핏 오류로 인해 프로그램이 종료되는 경우에 동기화가 실패할 수 있다.
동기화 요청된 데이터는 구글 피트니스 앱을 이용하면 수분안에 조회가 가능하지만 구글 피트니스 API로 익스포트해서 조회할 경우 빠르면 1시간 늦으면 12시간 정도의 시간이 필요하다는 점에 주의한다.
미밴드의 데이터가 갱신되면 블루투스 연결을 통해 미핏으로 들어가고 샤오미 서버에 저장된다. 그리고 이 데이터를 백그라운드에서 구글 피트니스로 동기화 한다. 이렇게 데이터를 거쳐가는 지점이 많기 때문에 이중 한지점에서 문제가 발생하면 데이터 누락이나 데이터 동기화가 중단될 수 있다. 이때는 다음 단계를 시도해 본다.
미핏과 구글 피트니스의 삭제후 다시 설치한다.
구글 피트니트 서비스에 연결된 앱들을 선택후 모두 연결 해제한다 ( 프로필 > 설정 > 연결된 앱 관리 : 앱을 탭한다)
미핏에서 구글 피트니스 계정을 끓은 후 구글 피트니스 계정을 다시 연결한다.
구글피트니스의 “활동 측정 항목 추적”을 꺼짐으로 설정하여 미핏의 피트니스 데이터만 저장 되도록 변경한다 ( 프로필 > 설정 > 활동 측정항목 추적 : 꺼짐 선택)
여러 데이터 소스 관리하기
구글 피트니스 서비스는 미핏이 아닌 다른 데이터 소스로부터도 데이터를 입력 받을 수 있다. 구글 피트니스는 내부적으로 여러 종류의 데이터를 가져와 병합한다. 예를들어 아래 스크린샤에서 미핏에서 보여주는 5월 27일의 걸음 수는 8,531이지만 스마트폰의 센서에 의해 측정된 걸음수와 병합된 구글피트니스 앱에서는 7,078걸음이다.
병합이 정상적으로 이루어졌다면 걸음 수가 비슷하게 나와야 한다. 하지만 걸음 수가 더 줄어든 것을 확인할 수 있다. 이런 현상이 발생하는 원인은 미핏이 데이터를 구글 피트니스로 동기화 하는 방식에 원인이 있다. 미핏은 걸음 수가 측정된 시간 구간의 데이터만 동기화 하는 것이 아니라 걸음 수가 발생하지 않는 구간의 데이터도 무조건 0걸음으로 구글피트니스로 전송을 한다.
그리고 구글 피트니스는 미핏의 데이터 전 시간 구간에 맞춰 들어왔다고 판단하고 데이터를 병합하기 시작하는데 이때 같은 시간 구간에 스마트폰 센서에 의해 측정된 걸음수가 동시에 데이터가 존재하면 구글 피트니스는 시간 세그먼트에 기반해서 데이터 소스 하나를 선택하는 방식으로 병합이 된다. 문제는 미핏이 0걸음으로 저장한 시간 구간 데이터가 반영되면 다른 기기에 의해 걸음 수가 발생했더라도 0걸음으로 계산되어 걸음 수가 합산이 정상적으로 이루어지지 않는 것이다.
따라서 미핏을 사용하다가 다른 스마트밴드를 이용하고 싶은 경우 반드시 미핏에서 구글 피트니스 동기화를 제거한 후 사용해야 한다. (프로필 > 계정 추가 > Googlt Fit > “Google FIt에서 제거” 선택)
파일 데이터 익스포트
구글 피트니스는 외부 데이터 소스로부터 데이터 저장 요청을 받으면 비동기로 내부에서 데이터 병합 과정을 거쳐 최종 저장하는데 이때 문제가 생겨 데이터가 저장이 실패할 수 있다. 이 상황에서 미핏 입장에서는 성공적으로 구글 피트니스로 데이터 저장을 했다고 생각하므로 다시 해당 데이터를 동기화 시도 하지 않기 때문에 데이터가 누락이 발생할 수 있다. 누락데이터는 구글 피트니스에 저장이 안되있을뿐 샤오미 서버에는 남아 있기 때문에 미핏 앱에서 수동으로 다운로드 받을 수 있다.
데이터는 미핏을 통해 요청한 후 이메일로 전송받은 링크를 통해 다운로드 받게 된다. 미핏앱의 프로필 > 설정 > 정보 > 사용자의 권리 행사 > 데이터 내보내기” 를 탭하면 된다.
데이터 내보내기를 원하는 계정을 로그인 하고 내보낼 데이터와 기한을 입력한다. 그리고 다운로드 링크를 전달하려는 이메일 주소도 입력하고 확인을 탭하면 이메일이 전송되었다는 메시지가 나온다.
이후 몇십분 정도 기다리면 다음과 같은 이메일이 도착한다. 그리고 회원가입시 사용한 외부 계정(지메일, 페이스북 등) 아이콘을 눌러서 인증을 받는다.
DOWNLOAD 버튼을 클릭하여 파일을 다운로드 받는다. 파일은 화면에 출력되어 출력되는 비번으로 압축을 해제할 수 있다.
개발자를 위한 구글 피트니스 API 사용 주의 사항
미핏이 저장한 데이터는 구글피트니스 앱을 통해서는 거의 실시간 수준으로 볼 수 있다. 하지만 개발자등이 쓰는 구글 피티니스 REST API로 조회시 보통은 1시간 안에 조회가 된다. 하지만 반나절 혹은 5일이 지나서야 모든 데이터가 조회되는 것을 본적도 있다. 구글의 다른 로그 수집서비스인 파이어베이스 애널리틱스의 경우에도 이런 경우가 있어서 놀랍지는 않지만 여러모로 불편한게 사실이다. 구글피트니스앱으로 보여주는 데이터 저장소와 API로 조회하는 데이터 저장소가 각각 다르게 운영되고 처리 주기가 다른게 원인인 것으로 생각된다.
그외 API 조회시 구글피트니스 앱을 아이폰과 안드로이드폰 등의 여러 디바이스에 같은 계정으로 설치 하는 경우 데이터가 원하지 않는 디바이스의 정보로 저장되는 경우가 발생할 수 있다. API로 데이터 조회시 구글피트니스 앱에서 출력되는 데이터와 다른 값이 나오는 경우가 있었는데 살펴보니 다른 디바이스에 설치된 구글피트니스앱에서 출력되는 데이터가 쓰여진 상황있었다.
결론
안드로이드 버전 미핏의 데이터 동기화 기능은 일상적인 신체 데이터 모니터링 용도로는 큰 문제가 없지만 아무 이유 없이 데이터 누락이 발생하는 경우가 종종 발생하는 등 완성도가 그리 높아 보이지 않는다. 이 문제는 백그라운드 실행 권한, 서비스 접근 권한 문제나 여러 서비스간의 연계시 오류로 인한 것으로 생각된다. 삼성 헬스의 데이터를 구글 피트니스로 동기화해주는 헬스싱크라는 앱에서는 이런 동기화 누락 문제가 발생하지 않는다. 따라서 데이터 동기화 문제는 미핏의 오류일 가능성이 크다.
미핏의 이런 오류 문제는 하나의 구글피트니스 계정에 여러 종류의 스마트밴드의 데이터를 동기화해서 사용하는 경우 더욱 잦아지는 경향이 있으므로 다른 스마트밴드로 교체시에는 구글 피트니스 서비스에 연결된 앱들 중 안쓰는 앱들은 모두 연결 해제하도록 한다.
따라서 안드로이드에서 미핏의 기본 구글 피트니스 동기화가 문제가 자주 생긴다면 Notify & Fitness for Mi Band라는 비 오피셜 앱을 이용하여 데이터를 동기화하는 방법을 쓸 수도 있다. 미핏과는 다르게 동기화가 실패할 경우 구글 피트니스로 데이터를 다시 저장하는 방법을 지원하므로 데이터 누락에 대처가 가능해진다. 이 앱 사용법은 글쓴이가 작성한 다른 글을 참고한다.