AOS

Google Fitness Api

asu2880 2022. 4. 13. 16:11

  1. Google API 콘솔 프로젝트 생성
    가. 새 프로젝트 생성
    나. API 및 서비스 -> 라이브러리 -> Fitness API 검색 -> '사용' 클릭 


  2. Google Firebase 콘솔 프로젝트 생성 및 안드로이드 앱 추가
    가. 새 프로젝트 생성
      - Google API 콘솔에서 생성된 프로젝트와 연결
      - 프로젝트를 연결해주면 자동으로 Google API 콘솔에 정보 등록됨
    나. 안드로이드 앱 추가
      - 프로젝트 설정 -> 내 앱 -> Android 앱 추가
      - 가이드 대로 프로젝트 설정
      - google-services.json 파일을 안드로이드 프로젝트 파일 app 하위에 추가


  3. OAuth 동의 화면 등록
    가. User Type 설정
      1) 내부
        - 조직 내 사용자만 사용할 수 있음. 인증을 위해 앱을 제출할 필요는 없음.
      2) 외부
        - Google 계정이 있는 모든 테스트 사용자가 사용할 수 있음. 
        - 인증을 위해 앱을 제출할 해야할 수 있음.
    나. OAuth 동의 화면 內 앱 정보 입력
    다. 범위 입력
      1) /auth/fitness.activity.read
      2) /auth/fitness.body.read
      ☞ 필요한 정보 추가
    라. 선택적 정보 입력
    마. 요약 내용 확인 후 '대시보드로 돌아가기' 클릭


  4. Google API 콘솔 클라이언트 ID 등록
    다. '사용자 인증 정보' 클릭
      ☞ Google Firebase와 연결되서 자동으로 등록된 값 확인할 수 있음
    라. '사용자 인증 정보 만들기'를 클릭 한 다음 'OAuth 클라이언트 ID' 를 선택
    마. 애플리케이션 유형 에서 Android를 선택
    바. 앱의 SHA-1 지문과 패키지 이름을 입력 후 만들기 클릭
      ☞ 아래 SHA-1값 내용 참고
    사. Android OAuth 2.0 클라이언트 ID 및 암호가 프로젝트의 ID 목록에 나타남.
      - OAuth 2.0 클라이언트 ID는 아래와 같은 문자열
        ☞ 780816631155-gbvyo1o7r2pn95qc4ei9d61io4uh48hl.apps.googleusercontent.com


  5. Google Firebase 콘솔 프로젝트 SHA-1 값 추가
    가. Google API 콘솔 클라이언트 ID에 Android에 추가한 SHA-1값을 Google Firebase 콘솔 프로젝트에도 추가
      ☞ 이 값까지 추가한 google-services.json 파일을 안드로이드 프로젝트 파일에 업데이트


  6. Android 프로젝트 설정
    가. Android 프로젝트에 Google API 라이브러리 추가
      1) . Android Studio에서 모듈용 파일을 열고 build.gradleGoogle Play 서비스 클라이언트 라이브러리를 종속성으로 추가.

plugin {
	id("com.android.application")
}

dependencies {
	implementation("com.google.android.gms:play-services-fitness:21.0.1")
	implementation("com.google.android.gms:play-services-auth:20.1.0")
}


    나. 필요한 Google Fitness API 권한 얻기
      1). 사용할 데이터 요청해야 함.
        - 데이터 유형
          https://developers.google.com/fit/android/authorization#data_types_that_need_android_permissions

 

Android Permissions  |  Google Fit  |  Google Developers

Send feedback Android Permissions Android permissions aim to protect the privacy of an Android user. They prompt the user when apps want to access data types for sensitive data like contacts or photos, and system features like location or step detection. U

developers.google.com


  SHA-1 값
    가. Google Fitness API를 활성화하려면 OAuth 2.0 클라이언트 ID가 필요
    나. Android OAuth 클라이언트 ID는 특정 인증서(SHA-1 지문)/패키지 쌍에 연결 필요
    다. 앱 인증서(SHA-1 지문)에는 디버그 인증서, 릴리즈 인증서가 있음
      1) 디버그 인증서
        - Android SDK 도구는 디버그 빌드를 수행할 때 이 인증서를 자동으로 생성 함.
        - 테스트 중인 앱에만 이 인증서를 사용 함.
      2) 릴리스 인증서
        - 릴리스 인증서 : 프로덕션 버전으로 앱 배포할때 이 인증서를 사용 함.
      3) 인증서 추출 방법 
        - 터미널 또는 명령 프롬프트에서 다음을 입력
          ☞ 디버그 인증서

keytool -list -v -keystore {keystore_name} -alias androiddebugkey -storepass android -keypass android


          ☞ 릴리즈 인증서
            - google play store에 배포 된 상태라면 앱 무결성 페이지에서 업로드 키 인증서에 SHA-1 값과 동일 함.

keytool -list -v -keystore {keystore_name} -alias {alias_name}

 


  Google Api OAuth 프로덕션 참고사항
    프로덕션으로 게시 할려면 아래 내용이 필요
    가. 앱 개인정보처리방침의 공식 링크
    나. 범위 내에서 가져오는 Google 사용자 데이터를 어떻게 사용할 계획인지 보여주는 YouTube 동영상
    다. 민감하거나 제한된 사용자 데이터에 액세스해야 하는 이유를 Google에 알리는 서면 설명서
    라. Google Search Console에서 확인된 모든 도메인


참고 url
https://blog.naver.com/PostView.nhn?blogId=rlawjdals18&logNo=221818634311&parentCategoryNo=&categoryNo=20&viewDate=&isShowPopularPosts=false&from=postView

728x90
반응형

'AOS' 카테고리의 다른 글

ConstraintLayout  (0) 2022.04.04
Android - Bottom Sheet Dialog  (0) 2021.08.23
안드로이드 웹뷰 통신  (0) 2021.06.28
meta-tag보안  (0) 2021.06.01
보안(서버도메인 등)  (0) 2021.06.01