기본 콘텐츠로 건너뛰기

Flutter GoogleSignInException 해결기 - Debug는 되는데 Release에서만 Google 로그인 실패하는 이유

Flutter로 안드로이드 앱을 개발하면서 Google Sign-In과 Firebase Authentication을 함께 사용하는 경우가 많다. 나 역시 Windows 환경에서 Antigravity IDE를 사용하여 Flutter 앱을 개발하고 있었고, 개발 중에는 Google 로그인이 정상적으로 동작했다. 하지만 앱을 Google Play Console의 내부 테스트 트랙에 배포한 후 테스트를 진행하자 예상치 못한 문제가 발생했다. Google Sign-in failed. GoogleSignInException( code: GoogleSignInExceptionCode.canceled, activity is cancelled by the user. ) 처음에는 정말 사용자가 로그인을 취소한 것처럼 보였다. 하지만 실제 원인은 전혀 다른 곳에 있었다. Debug에서는 정상인데 Release에서는 왜 실패할까? 개발 중에는 Antigravity에서 Debug 모드로 실행했기 때문에 모든 것이 정상적으로 동작했다. Google 계정을 선택하면 Firebase Authentication까지 문제없이 로그인되었다. 하지만 Release App Bundle(AAB)을 만들어 Google Play 내부 테스트에 업로드한 후 설치하면 Google 계정 선택 이후 바로 예외가 발생했다. 처음에는 Firebase 설정이나 코드의 문제라고 생각했지만, 실제 원인은 앱이 서명(Signing)되는 방식에 있었다. Google Sign-In은 SHA-1을 이용해 앱을 인증한다 Google Sign-In은 단순히 패키지 이름만 확인하는 것이 아니다. Android 앱은 다음 두 가지 정보를 이용해 인증된다. Package Name SHA-1 인증서 지문 Firebase Console에 Android 앱을 등록할 때 SHA-1을 입력하는 이유도 바로 이것이다. Debug 환경에서는 Debug Keystore의 SHA-1이 사용된다. Release APK를 직접 설치하면 Relea...

건강한 간헐적 단식 식단! 공복 시간을 활용한 효과적인 식사법

 간헐적 단식은 특정 시간 동안 공복을 유지하고, 정해진 시간 내에 식사를 하는 방법이다. 체중 감량뿐만 아니라 혈당 조절, 장 건강 개선 등의 다양한 건강 효과를 제공한다. 이 글에서는 간헐적 단식의 원리, 효과적인 식단 구성법, 그리고 건강하게 실천하는 방법을 소개한다.

단식


1. 간헐적 단식이란?

간헐적 단식(Intermittent Fasting, IF)은 하루 중 일정 시간을 공복 상태로 유지하고 나머지 시간에 식사를 하는 식사 패턴이다. 대표적인 방식은 다음과 같다.

  • 16:8 방식: 하루 16시간 공복 후, 8시간 동안 식사 (예: 오전 11시~오후 7시 식사)

  • 5:2 방식: 일주일 중 5일은 일반식, 2일은 하루 500~600kcal 섭취

  • 24시간 단식: 일주일에 1~2회 하루 동안 금식 후 정상 식사

이러한 방식은 인슐린 수치를 조절하고 체내 지방 연소를 촉진하는 데 도움이 된다.

2. 간헐적 단식의 건강 효과

2.1 체중 감량 및 지방 연소

공복 시간이 길어지면 체내 글리코겐이 소모되고 지방이 에너지원으로 사용된다. 또한 자연스럽게 총 섭취 칼로리가 감소하여 체중 감량에 효과적이다.

2.2 인슐린 저항성 개선

단식 중 인슐린 수치가 낮아지면서 인슐린 감수성이 향상된다. 이는 당뇨 예방 및 혈당 조절에 긍정적인 영향을 미친다.

2.3 노화 방지 및 세포 재생

단식은 세포 자가포식(Autophagy)을 촉진해 노화 관련 질병 예방 및 세포 건강을 개선하는 데 기여한다.

3. 건강한 간헐적 단식 식단 구성법

단식 후 첫 식사와 단식 중 섭취하는 음식이 중요하다. 건강한 간헐적 단식을 위한 식단을 구성할 때는 다음 사항을 고려해야 한다.

3.1 첫 식사(단식 후 첫 끼)

  • 단백질과 건강한 지방 위주로 구성

  • 예시: 삶은 달걀, 아보카도, 닭가슴살 샐러드, 견과류

  • 혈당 급상승을 방지하기 위해 정제 탄수화물(빵, 설탕 등) 섭취 최소화

3.2 정식 식사 (두 번째 끼니)

  • 균형 잡힌 영양소 섭취

  • 예시: 현미밥, 연어 또는 닭가슴살, 다양한 채소, 올리브오일 드레싱 샐러드

  • 충분한 단백질과 섬유질을 섭취해 포만감을 유지

3.3 간식 및 단식 중 허용 음식

  • 칼로리가 낮고 인슐린 자극이 적은 음식 섭취

  • 예시: 블랙커피, 녹차, 레몬물, 저탄수화물 견과류

  • 가공식품, 단순 당분이 많은 음식은 피하는 것이 좋다.

4. 간헐적 단식 실천 시 주의사항

4.1 충분한 수분 섭취

단식 중 수분 섭취가 부족하면 피로감과 두통이 발생할 수 있다. 하루 2L 이상의 물을 마시는 것이 권장된다.

4.2 영양 불균형 방지

지속적인 저칼로리 식사는 근육 손실 및 영양 결핍을 초래할 수 있다. 균형 잡힌 영양소 섭취가 중요하다.

4.3 개인별 맞춤 조정

간헐적 단식이 모든 사람에게 적합한 것은 아니다. 건강 상태에 따라 기간과 방식을 조정해야 하며, 만성 질환이 있는 경우 전문가와 상담 후 시작하는 것이 좋다.

5. 결론

간헐적 단식은 체중 감량, 혈당 조절, 노화 방지 등 다양한 건강 효과를 제공하는 식사법이다. 하지만 건강한 식단과 충분한 영양소 섭취가 동반되어야 효과적이다.

댓글

이 블로그의 인기 게시물

호주 입국 신고서 작성법 총정리! 꼭 알아야 할 유의사항

 호주는 아름다운 자연과 높은 삶의 질로 많은 여행자와 유학생이 찾는 나라다. 하지만 입국 절차를 제대로 준비하지 않으면 공항에서 예상치 못한 문제를 겪을 수 있다. 그중에서도 "입국 신고서"는 필수적으로 작성해야 하는 문서 중 하나다. 이번 글에서는 호주 입국 신고서 작성법과 주의해야 할 사항 을 상세히 정리해 본다. 1. 호주 입국 신고서란? 호주 입국 신고서(Australian Incoming Passenger Card, IPC) 는 모든 여행자가 공항 입국 심사 시 제출해야 하는 서류다. 이는 세관 신고 및 검역 목적 으로 사용되며, 호주 정부가 여행자의 신상 정보와 반입 물품을 파악하는 데 도움을 준다. 2. 입국 신고서 작성 시기 및 방법 ① 언제 작성해야 할까? 호주 입국 신고서는 비행기 안에서 승무원이 배포 한다. 따라서 비행기가 호주 공항에 도착하기 전, 미리 작성해 두는 것이 좋다. ② 어떻게 작성해야 할까? 입국신고서 내용: 반드시 영어로 작성해야 한다. 개인 정보 입력: 여권에 기재된 영문 이름, 생년월일, 국적 등을 정확하게 기입한다. 호주 내 주소: 체류할 호텔이나 숙소 주소를 적어야 한다. 만약 정확한 주소를 모르면, 예약한 호텔 이름이라도 적어두는 것이 좋다. 방문 목적: 관광(Tourism), 사업(Business), 유학(Study) 등 방문 목적을 선택한다. 반입 물품 신고: 음식, 동식물, 의약품, 현금(10,000 AUD 이상) 등 신고해야 하는 품목이 있는지 체크 해야 한다. 특히 네 ( Yes )/아니오(No) 를 선택하는 부분에서는 잘 모르겠으면 무조건 네 ( Yes )에 체크해야 미신고 항목에 대한 벌금을 피할 수 있다. 건강 상태 및 범죄 이력: 최근 6일 이내에 방문한 국가 및 건강 상태에 대한 질문이 포함되며, 범죄 기록 여부도 체크해야 한다. 3. 신고해야 하는 물품과 주의사항 호주는 검역 규정이 매우 엄격한 국가 다. 따라서 아래와 같은 물품을 반입할 경우 반드시 신고해야 한다. ...

호주 485 졸업생 비자 비용 2배 인상! 2026년 변경 내용 총정리

2026년 3월부터 호주 정부가 졸업생 임시비자(Temporary Graduate Visa, Subclass 485) 신청 비용을 대폭 인상했다. 이번 조치는 국제학생 정책 변화의 일환으로 시행되었으며, 호주에서 학업을 마친 유학생들에게 상당한 영향을 줄 것으로 예상된다. 이 글에서는 485 비자 비용 인상 내용, 기본 조건, 그리고 유학생에게 미칠 영향 을 정리한다. 1. 호주 485 비자란 무엇인가 호주 졸업생 임시비자(Subclass 485) 는 호주에서 학업을 마친 국제학생이 일정 기간 동안 호주에서 거주하고 일할 수 있도록 허용하는 비자 다. 이 비자의 주요 목적은 다음과 같다. 호주 대학 졸업생에게 현지 취업 경험 제공 졸업 후 경력 개발 기회 제공 향후 영주권(PR) 신청을 위한 경력 확보 즉, 많은 유학생들에게 학업 이후 체류와 취업의 핵심 단계 로 활용되는 비자다. 2. 2026년 3월부터 485 비자 비용 대폭 인상 2026년 3월 1일부터 485 비자 신청 비용이 두 배로 인상 되었다. 변경 전 기본 신청비: AUD $2,300 변경 후 기본 신청비: AUD $4,600 이는 100% 인상 된 수준이며, 갑작스럽게 시행되어 많은 유학생들에게 부담이 되고 있다. 가족을 포함해 신청하는 경우 비용 은 다음과 같다. 주 신청자: $4,600 성인 동반자: $2,300 18세 미만 자녀: $1,160 예를 들어 배우자와 함께 신청하는 경우 총 비용이 6,900달러 이상 이 될 수 있다. 3. 이번 비자 비용 인상은 언제부터 적용되는가 이번 변경은 2026년 3월 1일부터 즉시 적용 된다. 즉 다음과 같은 경우 새로운 비용 이 적용된다. 2026년 3월 1일 이후 485 비자를 새로 신청하는 경우 이미 신청이 완료된 경우에는 이전 비용이 적용될 수 있지만, 신청 접수 날짜 기준으로 비용이 결정된다. 4. 485 비자의 기본 조건 호주 ...

Flutter GoogleSignInException 해결기 - Debug는 되는데 Release에서만 Google 로그인 실패하는 이유

Flutter로 안드로이드 앱을 개발하면서 Google Sign-In과 Firebase Authentication을 함께 사용하는 경우가 많다. 나 역시 Windows 환경에서 Antigravity IDE를 사용하여 Flutter 앱을 개발하고 있었고, 개발 중에는 Google 로그인이 정상적으로 동작했다. 하지만 앱을 Google Play Console의 내부 테스트 트랙에 배포한 후 테스트를 진행하자 예상치 못한 문제가 발생했다. Google Sign-in failed. GoogleSignInException( code: GoogleSignInExceptionCode.canceled, activity is cancelled by the user. ) 처음에는 정말 사용자가 로그인을 취소한 것처럼 보였다. 하지만 실제 원인은 전혀 다른 곳에 있었다. Debug에서는 정상인데 Release에서는 왜 실패할까? 개발 중에는 Antigravity에서 Debug 모드로 실행했기 때문에 모든 것이 정상적으로 동작했다. Google 계정을 선택하면 Firebase Authentication까지 문제없이 로그인되었다. 하지만 Release App Bundle(AAB)을 만들어 Google Play 내부 테스트에 업로드한 후 설치하면 Google 계정 선택 이후 바로 예외가 발생했다. 처음에는 Firebase 설정이나 코드의 문제라고 생각했지만, 실제 원인은 앱이 서명(Signing)되는 방식에 있었다. Google Sign-In은 SHA-1을 이용해 앱을 인증한다 Google Sign-In은 단순히 패키지 이름만 확인하는 것이 아니다. Android 앱은 다음 두 가지 정보를 이용해 인증된다. Package Name SHA-1 인증서 지문 Firebase Console에 Android 앱을 등록할 때 SHA-1을 입력하는 이유도 바로 이것이다. Debug 환경에서는 Debug Keystore의 SHA-1이 사용된다. Release APK를 직접 설치하면 Relea...