예외 캐치 및 처리
컬렉션을 사용해 정리하기
내 환경설정을 기준으로 콘텐츠를 저장하고 분류하세요.
헬스 커넥트는 문제가 발생하면 CRUD 작업에 관한 표준 예외를 발생시킵니다. 앱은 이러한 예외를 적절하게 포착하고 처리해야 합니다.
HealthConnectClient
의 각 메서드는 발생할 수 있는 예외를 나열합니다.
앱에서는 일반적으로 다음을 처리해야 합니다.
예외 |
설명 |
권장사항 |
SecurityException
| 요청에 부여되지 않은 권한이 필요한 경우 문제가 발생합니다.
| 이를 방지하려면
게시된 앱의 헬스 커넥트 데이터 유형 사용 선언
있습니다. 또한 헬스 커넥트 권한을 선언해야 합니다.
매니페스트 파일 및 활동에서 확인할 수 있습니다.
|
IOException
| 디스크에서 데이터를 읽고 쓸 때 문제가 발생합니다.
| 이 문제를 방지하기 위한 권장사항은 다음과 같습니다.
- 사용자 입력을 백업합니다.
- 일괄 쓰기 작업 중에 발생하는 모든 문제를 처리할 수 있어야 합니다. 예를 들어, 문제가 발생하더라도 이 프로세스가 계속 진행되고 나머지 작업을 수행하도록 합니다.
- 재시도 및 백오프 전략을 적용하여 요청 문제를 처리합니다.
|
IllegalStateException
| 다음 시나리오 중 하나가 발생했습니다.
- 헬스 커넥트 서비스를 사용할 수 없습니다.
- 요청이 유효한 구성이 아닙니다. 예를 들어,
Instant 객체가 timeRangeFilter 에 사용되는 주기적 버킷의 포함된 집계 요청입니다.
| 요청을 진행하기 전에 먼저 입력과 관련하여 발생할 수 있는 문제를 해결합니다.
오류 처리 전략을 적용할 수 있도록, 요청에서 값을 직접 사용하는 대신 값을 변수에 할당하거나 사용자설정 함수 내에서 매개변수로 사용합니다.
|
RemoteException
| SDK가 연결되는 기본 서비스에서 또는 서비스와 통신하면서 오류가 발생했습니다.
예를 들어, 앱이 주어진 uid 를 사용하여 레코드를 삭제하려고 하지만 앱이 기본 서비스에서 레코드가 존재하지 않는다는 사실을 확인한 후에 예외가 발생합니다.
| 이 문제를 방지하기 위한 권장사항은 다음과 같습니다.
- 앱의 데이터 스토어와 헬스 커넥트를 정기적으로 동기화합니다.
- 재시도 및 백오프 전략을 적용하여 요청 문제를 처리합니다.
|
이 페이지에 나와 있는 콘텐츠와 코드 샘플에는 콘텐츠 라이선스에서 설명하는 라이선스가 적용됩니다. 자바 및 OpenJDK는 Oracle 및 Oracle 계열사의 상표 또는 등록 상표입니다.
최종 업데이트: 2024-09-05(UTC)
[[["이해하기 쉬움","easyToUnderstand","thumb-up"],["문제가 해결됨","solvedMyProblem","thumb-up"],["기타","otherUp","thumb-up"]],[["필요한 정보가 없음","missingTheInformationINeed","thumb-down"],["너무 복잡함/단계 수가 너무 많음","tooComplicatedTooManySteps","thumb-down"],["오래됨","outOfDate","thumb-down"],["번역 문제","translationIssue","thumb-down"],["샘플/코드 문제","samplesCodeIssue","thumb-down"],["기타","otherDown","thumb-down"]],["최종 업데이트: 2024-09-05(UTC)"],[],[]]