이 페이지에서는 Android에서 시간 및 시간대 감지가 작동하는 방식을 설명합니다. Android가 자동으로 시간과 시간대를 감지하는 방법, 기기 제조업체의 구성 옵션, 테스트 정보 등이 포함됩니다. Show 시간 및 시간대 개요상태 표시줄 등의 위치에 표시할 사용자의 현지 시간을 결정하기 위해 Android는 2개의 서로 관련 있으나 독립적인 상태를 추적합니다.
현재 Unix 에포크 시간과 현재 시간대는 기기 전체 상태여서 기기의 모든 사용자가 공유합니다. 현재 Unix 에포크 시간은 고정 값이 아닙니다. 시간의 경과를 반영하여 자동으로 업데이트됩니다. 일반적인 시간 경과 외에도, 예를 들어 기기의 전원 공급이 중단된 후 현재 Unix 에포크 시간이 잘못된 것으로 확인되면 조정됩니다. 현재 시간대는 현재 Unix 에포크 시간을 현지 시간으로 변환하기 위해 조정할 분량을 결정합니다. 예를 들어 로스앤젤레스의 여름에는 기기가 현재 Unix 에포크 시간에서 7시간을 빼고 겨울에는 8시간을 뺍니다. 이러한 현지 시간 계산을 지원하기 위해 모든 Android 기기에는 전체 글로벌 시간대 규칙의 데이터베이스가 있습니다. 시간대 규칙에 관한 자세한 내용은 시간대 규칙을 참고하세요. 사용자가 다른 시간대를 사용하는 새 위치로 이동하는 경우 현재 Unix 에포크 시간을 조정할 필요가 없습니다. 하지만 보통 사용자들은 예전의 위치가 아닌 현지 시간을 확인하길 원합니다. 현재 시간대를 변경하면 현재 Unix 에포크 시간에 올바른 오프셋이 적용되어 새 위치의 현지 시간이 올바르게 표시됩니다. AOSP에서 사용자는 다음 메커니즘을 통한 시간 및 시간대의 자동 설정 여부를 독립적으로 제어할 수 있습니다.
시간 자동 감지이 섹션에서는 시간 자동 감지, 사용자 컨트롤, 구성 옵션, 테스트 세부정보를 관리하는 time_detector 서비스Android 10 이상을
실행하는 기기에 있는
현재 Unix 에포크 시간을 자동으로 설정하기 위해 기기에는 사용할 수 있는 다양한 소스가 있습니다. 이 문서에서는 이러한 소스를 출처라고 합니다.
UTC 시간은 국제적으로 합의된 것이지만 Android 기기에서 현재 Unix 에포크 시간을 설정하는 것이 항상 간단하지는 않은 이유는 다음과 같이 다양합니다.
AOSP에서 기본적으로 사용하도록 구성된 두 가지 기본 시간 감지 출처는 다음과 같습니다.
전화 통신 출처와 네트워크 출처는 모두 항상 사용 가능하지는 않은 외부 네트워크에 연결해야 합니다. Android 12부터는 기본적으로 사용하도록 구성되지 않은 다음과 같은 출처도 지원합니다.
시간 설정사용자는 AOSP 설정 앱의 시스템 > 날짜 및 시간에서 시간 자동 감지를 사용 설정할 수 있습니다. 그림 1. 설정의 시간 자동 감지 다음 표에서는 AOSP 설정 앱의 시간 감지 관련 사용자 컨트롤을 설명합니다.
사용자가 시간을 직접 입력할 때는 Unix 에포크 시간이 아닌 현지 시간을 입력합니다. 현재 Unix 에포크 시간은 현재 시간대를 사용하여 계산되어 Unix 에포크 시간을 얻습니다. 구성기기 제조업체는 사용할 출처, 신호의 우선순위를 지정하는 방법 등 다양한 방식으로 출처 우선순위 지정Android 12부터 기기 제조업체는 Android 11 이하를 실행하는 기기의 경우 출처 우선순위는 기본 AOSP 구성은 다음과 같습니다.
Android 12에서 네트워크 및 전화 통신 추천은 기본적으로 사용되는 출처로 구성됩니다. 네트워크 시간 추천이 전화 통신 시간 추천보다 우선순위가 높습니다. 기기 제조업체는 출처의 순서를 변경하여 전화 통신의 우선순위가 더 높은 Android 11 이하 동작으로 되돌릴 수 있습니다. 기본적으로 우선순위가 가장 높은 유효한 추천이 기기의 현재 시스템 시계 시간과 몇 초 이내로 일치하면 기기 시간은 변경되지 않습니다. 이는 허용되는 출처 값은 다음과 같습니다.
시간 하한값Android 12에서는 Android 11 이하를 실행하는 기기의 경우 Android는 시간 상한값을 적용하지 않습니다. 시간 디버깅 및 테스트이 섹션에서는 time_detector 서비스와 상호작용
시간대 감지를 디버그하고 테스트하기 위한 추가 명령어를 보려면 다음을 사용합니다.
도움말 출력은 테스트용으로 또는 프로덕션에서 시간 자동 감지의 유효성을 확인하려면 테스터는
이 정보는 다음과 같이 해석할 수 있습니다.
시간 변경 로그는 추천 내역 정보는 각 출처에서 나온 추천 내용을 보여줍니다. 시간대 자동 감지이 섹션에서는 시간대 자동 감지, 설정의 사용자 제어, 전화 통신 및 위치 시간대 감지, 테스트 세부정보를 관리하는 time_zone_detector 서비스Android 11 이상을 실행하는 기기에 있는
시간대 자동 감지가 사용 설정된 경우
일반적으로
Android는 시간대 감지를 위해 다음 두 가지 출처를 지원합니다.
Android 13 이상을 실행하는 기기에서 전화 통신 대체 모드는 전화 통신 및 위치 감지가 모두 지원되고 사용자가 시간대 설정에서 위치 정보를 사용하여 시간대 설정을 설정한 기기에 적용됩니다. 이 모드는 기기가 재부팅될 때와 비행기 모드가 꺼질 때 자동으로 설정됩니다. 전화 통신 대체 모드에서 전화 통신 대체 모드의 구성 세부정보는 시간대 감지 구성을 참고하세요. 시간대 설정사용자는 AOSP 설정 앱에서 시간대 자동 감지를 사용 설정하고 구성할 수 있습니다. 그림 2. 설정의 시간대 자동 감지 다음 표에서는 AOSP 설정 앱의 시간대 감지 관련 사용자 컨트롤을 설명합니다.
다음은 사용자가 선택한 설정에 따른 시간대 감지 관련 기기 동작을 간략히 설명합니다.
여러 사용자 기기관련 설정 중 일부는 현재 사용자로 범위가 지정되므로 멀티 사용자 Android 기기에서 현재 사용자가 변경되면 기기의 시간대 감지 동작이 달라질 수 있습니다. 위치 정보를 사용하여 시간대 설 전환 버튼은 현재 사용자로 범위가 지정되며 기기 정책의 제한을 받지 않습니다. 즉, 자동으로 시간대 설정 전환 버튼이 꺼져 있을 때나 다른 시간 또는 시간대 컨트롤이 기기 정책 컨트롤러에 의해 제한되는 경우에도 사용자는 항상 값을 변경할 수 있습니다. 자동 감지를 사용 설정하거나 중지하는 경우 동작사용자가 시간대 감지를 수동에서 자동으로 전환하면 마찬가지로 사용자가 설정을 변경하여 전화 통신 시간대 감지전화 통신 시간대 감지는 전화 통신 신호를 사용하여 현재 시간대를 결정합니다. 자세한 내용은 전화 통신 시간대 감지를 참고하세요. 위치 시간대 감지위치 시간대 감지는 Android 12 이상에서 사용할 수 있습니다. 기기가 위치를 사용하여 현재 시간대를 결정할 수 있는 시간대 자동 감지 기능으로, 선택사항입니다. Android 12에 도입된 기능 채택 고려사항이 섹션에서는 기기 제조업체가 기기에서 기능을 채택할지 여부를 판단하는 데 도움이 되는 위치 시간대 감지 기능의 측면을 설명합니다. 전화 통신 감지와 위치 감지 비교다음 표에서는 시간대 감지를 위해 전화 통신 신호 대신 위치 정보를 사용할 때의 장단점을 비교합니다.
사용자 개인 정보 보호사용자의 기본 시간대는 일반적으로 지리적 위치에 따라 결정됩니다. 위치는 민감한 정보입니다. 시간대 감지의 일부로 사용자의 위치가 공유된다는 점을 사용자가 우려할 수도 있습니다. 시간대 감지와 관련 없이 기기에서 실행되는 모든 앱은 Android 권한을 요구하지 않고 기기의 현재 시간대를 읽을 수 있으며 앱은 이러한 정보를 통해 기기 위치에 관해 부정확한 아이디어를 추론할 수 있습니다. 구체적으로 시간대 감지는 수동적이거나 능동적인 수단을 통해 작동할 수 있습니다.
수동 감지(예: 전화 통신 출처 사용)는 사용자에게 개인 정보 보호 면에서 추가적인 영향을 미치지 않습니다. 능동 감지(예: 위치 출처 사용)에서는 사용자가 동의하지 않을 수도 있는 기기 위치 확인이 필요하며 시간대 ID를 결정하기 위해 네트워크를 통해 위치 정보가 전송될 수 있습니다. 시간대 감지와 관련한 Android의 사용자 개인 정보 보호 방식에서는 활성 상태일 것으로 예상되는 출처를 사용자가 개별적으로 사용 중지할 수 있습니다. 또한 AOSP 플랫폼 코드는 위치 자체를 직접 처리하지 않습니다. 위치 감지 및 위치와 시간대 ID 간 매핑은 기기 제조업체에서 구성한 플러그인 구성요소가 처리합니다. 사용자 개인 정보 보호 기능에 관한 자세한 내용은 위치 시간대 감지를 참고하세요. 구성기기 제조업체는 기본 AOSP 구성은
시간대 디버깅 및 테스트이 섹션에서는 device_config 서비스를 사용하여 기기 구성
Android 12 이상에서 플래그 동기화를 일시적으로 방지하려면 다음을 사용합니다.
테스트 후 플래그 동기화를 복원하려면 다음을 사용합니다.
플래그 동기화를 복원한 후 기기를 재부팅합니다. 자세한 내용을 보려면 time_zone_detector 서비스와 상호작용
시간대 감지를 디버그하고 테스트하기 위한 추가 명령어를 보려면 다음을 사용합니다.
도움말 출력은 테스트용으로 또는 프로덕션에서 시간대 감지의 유효성을 확인하려면 테스터는
다음은 현재 출처와 서비스 상태에 관한 정보가 굵게 표시된
이 정보는 다음과 같이 해석할 수 있습니다.
추천 내역 정보는 설정(수동)을 통해 그리고 전화 통신 및 위치 출처에서 나온 추천 내용을 보여줍니다. |