Google은 흑인 공동체를 위한 인종 간 평등을 진전시키기 위해 노력하고 있습니다. Google에서 어떤 노력을 하고 있는지 확인하세요.

Passpoint(핫스팟 2.0)

Passpoint는 휴대기기에서 인터넷 액세스를 제공하는 Wi-Fi 핫스팟을 검색하고 인증할 수 있는 WFA(Wi-Fi Alliance) 프로토콜입니다.

기기 지원

Passpoint를 지원하려면 기기 제조업체는 hardware/interfaces/wifi/supplicant/1.0 이상을 구현해야 합니다. Android 오픈소스 프로젝트(AOSP)에서 제공하는 Wi-Fi HAL Interface Design Language(HIDL)는 서플리컨트에 관해 HAL을 정의합니다. 서플리컨트는 802.11u 표준, 특히 GAS(Generic Advertisement Service) 및 ANQP(Access Network Query Protocol)와 같은 네트워크 검색 및 선택 기능을 지원합니다.

구현

Android 11 이상

Android 11 이상을 실행하는 기기에서 Passpoint를 지원하려면 기기 제조업체가 802.11u를 위한 펌웨어 지원을 제공해야 합니다. Passpoint 지원을 위한 기타 모든 요구사항은 AOSP에 포함되어 있습니다.

Android 10 이하

Android 10 이하를 실행하는 기기의 경우 기기 제조업체가 프레임워크와 HAL/펌웨어 지원을 모두 제공해야 합니다.

  • 프레임워크: Passpoint 사용 설정(기능 플래그 필요)
  • 펌웨어: 802.11u 지원

Passpoint를 지원하려면 Wi-Fi HAL을 구현하고 Passpoint에 기능 플래그를 사용하도록 설정합니다. device/<oem>/<device>에 있는 device.mk에서 Passpoint 기능 지원을 포함하도록 PRODUCT_COPY_FILES 환경 변수를 수정합니다.

PRODUCT_COPY_FILES +=
frameworks/native/data/etc/android.hardware.wifi.passpoint.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.wifi.passpoint.xml

Passpoint 지원을 위한 기타 모든 요구사항은 AOSP에 포함되어 있습니다.

유효성 검사

Passpoint 기능의 구현을 검사하려면 Android 커뮤니케이션 테스트 모음(ACTS)에서 제공하는 단위 테스트 및 통합 테스트 세트를 사용합니다.

단위 테스트

다음과 같은 Passpoint 패키지 단위 테스트를 실행합니다.

서비스 테스트:

atest com.android.server.wifi.hotspot2

관리자 테스트:

atest android.net.wifi.hotspot2

통합 테스트(ACTS)

tools/test/connectivity/acts/tests/google/wifi/WifiPasspointTest.py에 있는 ACTS Passpoint 테스트 모음은 기능 테스트 세트를 구현합니다.

Passpoint R1 프로비저닝

Android는 Android 6.0부터 Passpoint R1을 지원했습니다. 따라서 프로필 및 사용자 인증 정보가 포함된 특수 파일의 웹 기반 다운로드를 통해 Passpoint R1(출시 1) 사용자 인증 정보를 프로비저닝할 수 있습니다. 클라이언트는 Wi-Fi 정보용 특수 설치 프로그램을 자동으로 실행하여 사용자가 콘텐츠를 수락하거나 거부하기 전에 정보의 일부를 보도록 허용할 수 있습니다.

파일에 포함된 프로필 정보는 Passpoint를 사용하는 액세스 포인트에서 검색한 데이터와 일치하는지 확인하는 데 사용되며, 사용자 인증 정보는 일치하는 네트워크에 자동으로 적용됩니다.

Android 참조 구현은 EAP-TTLS, EAP-TLS, EAP-SIM, EAP-AKA 및 EAP-AKA'를 지원합니다.

다운로드 메커니즘

Passpoint 구성 파일은 웹 서버에 호스팅해야 하며, 일반 텍스트 비밀번호 또는 비공개 키 데이터를 포함할 수 있으므로 TLS(HTTPS)로 보호해야 합니다. 콘텐츠는 UTF-8로 표현되고 RFC-2045 섹션 6.8에 따라 base64로 인코딩되는 래핑된 멀티파트 MIME 텍스트로 구성됩니다.

클라이언트가 기기에 Wi-Fi 설치 프로그램을 자동으로 실행하는 데 사용하는 HTTP 헤더 필드는 다음과 같습니다.

  • Content-Typeapplication/x-wifi-config로 설정해야 합니다.
  • Content-Transfer-Encodingbase64로 설정해야 합니다.
  • Content-Disposition은 설정하면 안 됩니다.

파일을 검색하는 데 사용되는 HTTP 메서드는 GET이어야 합니다. 브라우저의 HTTP GET이 이러한 MIME 헤더로 응답을 받을 때마다 설치 앱이 시작됩니다. 버튼과 같은 HTML 요소를 탭하여 다운로드를 트리거해야 합니다(다운로드 URL로의 자동 리디렉션은 지원되지 않음). 이 동작은 Chrome에만 적용됩니다. 다른 웹브라우저는 유사한 기능을 제공하지 않을 수도 있습니다.

파일 구성

Base64 인코딩 콘텐츠는 Content-Typemultipart/mixed인 MIME 멀티파트 콘텐츠로 구성되어야 합니다. 다음 파트는 멀티파트 콘텐츠의 개별 파트를 구성합니다.

파트 Content-Type(따옴표 감소) 필수 항목 설명
프로필 application/x-passpoint-profile 항상 HomeSPCredential에 관한 Passpoint R1 PerProviderSubscription 형식 MO를 포함하는 OMA-DM SyncML 형식 페이로드
신뢰 인증서 application/x-x509-ca-cert EAP-TLS 및 EAP-TTLS에 필수 단일 X.509v3 base64 인코딩 인증서 페이로드
EAP-TLS 키 application/x-pkcs12 EAP-TLS에 필수 적어도 클라이언트 인증서 및 관련된 비공개 키가 있는 클라이언트 인증서 체인을 포함하는 base64 인코딩 PKCS #12 ASN.1 구조. PKCS 12 컨테이너는 물론 비공개 키 및 인증서도 모두 비밀번호 없는 일반 텍스트여야 합니다.

프로필 섹션은 Passpoint R2 기술 사양 버전 1.0.0의 섹션 9.1에서 HomeSPCredential 하위 트리의 일부를 지정하는 base64 인코딩, UTF-8 인코딩 XML 텍스트로서 전송되어야 합니다.

최상위 노드는 MgmtTree이고 바로 다음의 하위 노드는 PerProviderSubscription이어야 합니다. 예제 XML 파일은 예제 프로필 OMA-DM XML에 표시됩니다.

다음 하위 트리 노드는 HomeSP에서 사용됩니다.

  • FriendlyName: 설정해야 함, 표시 텍스트로 사용됨
  • FQDN: 필수
  • RoamingConsortiumOI

다음 하위 트리 노드는 Credential에서 사용됩니다.

  • Realm: 비어 있지 않은 문자열이어야 합니다.
  • UsernamePassword: EAP-TTLS에 필요하며 노드를 다음과 같이 설정해야 합니다.

    • Username: 사용자 이름이 포함된 문자열
    • Password: Base64 인코딩 문자열(cGFzc3dvcmQ=로 설정됨, 아래 예에서 'password'의 base64 인코딩 문자열)
    • EAPMethod/EAPType: 21로 설정해야 함
    • EAPMethod/InnerMethod: PAP, CHAP, MS-CHAP 또는 MS-CHAP-V2 중 하나로 설정해야 함
  • DigitalCertificate: EAP-TLS에 필요합니다. 다음 노드를 설정해야 합니다.

    • CertificateTypex509v3으로 설정
    • CertSHA256Fingerprint를 EAP-TLS 키 MIME 섹션에 있는 클라이언트 인증서의 올바른 SHA-256 다이제스트로 설정
  • SIM: EAP-SIM, EAP-AKA 및 EAP-AKA'에 필요합니다. EAPType 필드는 적절한 EAP 유형으로 설정해야 하며 IMSI는 프로비저닝 시 기기에 설치된 SIM 카드 중 하나의 IMSI와 일치해야 합니다. IMSI 문자열은 완전 동등 일치를 강제하기 위해 십진수로만 구성하거나 IMSI 일치를 접두사로만 완화하기 위해 별표(*)가 뒤에 오는 0개 이상의 십진수로 구성할 수 있습니다. 예를 들어, IMSI 문자열 123*는 123으로 시작하는 IMSI의 SIM 카드와 일치합니다.

Android 11에서는 Passpoint R1 프로비저닝을 더 유연하게 하는 기능이 도입되었습니다.

별도의 인증, 승인, 계정(AAA) 도메인 이름

액세스 네트워크 쿼리 프로토콜(ANQP)을 통해 네트워크에서 공지하는 정규화된 도메인 이름(FQDN)과 별도로 지정된 AAA 도메인 이름이 필요한 Passpoint 네트워크 관리자는 Extension 하위 트리 아래의 새 노드에서 세미콜론으로 구분된 FQDN 목록을 지정할 수 있습니다. 이는 선택적 노드이며 Android 버전 10 이하를 실행하는 기기는 이 노드를 무시합니다.

  • Android: Android 확장 하위 트리

    • AAAServerTrustedNames: 신뢰할 수 있는 AAA 서버 이름에 필요하며 노드를 다음과 같이 설정해야 합니다.

      • FQDN: 신뢰할 수 있는 AAA 서버 이름이 포함된 문자열. 세미콜론을 사용하여 신뢰할 수 있는 이름을 구분합니다. 예: example.org;example.com
자체 서명 비공개 루트 CA
인증서를 내부적으로 관리하는 Passpoint 네트워크 관리자는 AAA 인증을 위해 자체 서명 비공개 CA로 프로필을 프로비저닝할 수 있습니다.
루트 CA 인증서가 없는 프로필 설치 허용
프로필에 연결된 루트 CA 인증서는 AAA 서버 인증에 사용됩니다. 신뢰할 수 있는 공개 루트 CA를 AAA 서버 인증에 사용하려고 하는 Passpoint 네트워크 관리자는 루트 CA 인증서 없이 프로필을 프로비저닝할 수 있습니다. 이 경우 시스템은 신뢰할 수 있는 저장소에 설치된 공개 루트 CA 인증서와 비교해 AAA 서버 인증서를 확인합니다.

Passpoint R2 프로비저닝

Android 10은 Passpoint R2 기능을 지원합니다. Passpoint R2는 새 Passpoint 프로필을 프로비저닝하기 위한 표준 방법인 온라인 가입(OSU)을 구현합니다. Android 10 이상에서는 개방형 OSU ESS를 통해 SOAP-XML 프로토콜을 사용하여 EAP-TTLS 프로필의 프로비저닝을 지원합니다.

지원되는 Passpoint R2 기능에는 AOSP 참조 코드만 필요합니다. 추가 드라이버나 펌웨어 지원은 필요하지 않습니다. AOSP 참조 코드는 설정 앱에 있는 Passpoint R2 UI의 기본 구현도 포함합니다.

Android가 Passpoint R2 액세스 포인트를 감지하면 Android 프레임워크는 다음 작업을 실행합니다.

  1. SSID를 표시하는 것 외에도 Wi-Fi 선택도구의 AP에서 공지한 서비스 제공업체 목록을 표시합니다.
  2. Passpoint 프로필을 설정하려면 서비스 제공업체 중 하나를 탭하라는 메시지를 사용자에게 표시합니다.
  3. Passpoint 프로필 설정 과정을 사용자에게 안내합니다.
  4. 성공적으로 완료되면 Passpoint 프로필을 설치합니다.
  5. 새로 프로비저닝된 Passpoint 프로필을 사용하여 Passpoint 네트워크에 연결합니다.

Passpoint R3 기능

Android 12에서는 사용자 환경을 개선하고 네트워크가 현지 법규를 준수할 수 있도록 다음과 같은 Passpoint R3 기능을 도입합니다.

이용약관
일부 지역 및 장소에서는 네트워크 액세스를 제공하기 위해 이용약관에 동의하는 것이 법적으로 요구됩니다. 이 기능을 사용하면 네트워크 배포에서 개방형 네트워크를 사용하는 안전하지 않은 종속 포털을 안전한 Passpoint 네트워크로 대체할 수 있습니다. 이용약관에 동의해야 하는 경우 사용자에게 알림이 표시됩니다.
장소 정보 URL
네트워크 운영자와 장소가 장소 지도, 디렉터리, 프로모션, 쿠폰 등의 추가 정보를 사용자에게 제공할 수 있습니다. 네트워크가 연결되면 사용자에게 알림이 표시됩니다.

기타 Passpoint 기능

Android 11에서는 사용자 환경, 전력 사용량, 배포 유연성을 개선하는 다음과 같은 Passpoint 기능이 도입되었습니다.

만료일 적용 및 알림
프로필에 만료일을 적용하면 프레임워크에서 사용자 인증 정보가 만료된 액세스 포인트에 자동 연결되는 것을 방지할 수 있습니다(자동 연결이 실패함). 이렇게 하면 송수신 시간 사용이 방지되고 배터리 및 백엔드 대역폭이 절약됩니다. 프레임워크에서는 프로필과 일치하는 네트워크가 범위 내에 있고 프로필이 만료된 경우 사용자에게 알림을 표시합니다.
FQDN이 동일한 여러 프로필
Passpoint 네트워크를 배포하고 다중 PLMN(Public Land Mobile Network) ID를 사용하는 이동통신사는 설치된 SIM 카드와 자동으로 연결되고 네트워크를 연결하는 데 사용되는 FQDN(각 PLMN ID에 하나씩)이 동일한 여러 Passpoint 프로필을 프로비저닝할 수 있습니다.

Android 12에서는 사용자 환경, 전력 사용량, 배포 유연성을 개선하는 다음과 같은 Passpoint 기능이 도입되었습니다.

장식 ID 접두사
: 접두사 장식이 있는 네트워크에 인증할 때 장식된 ID 접두사를 사용하면 네트워크 운영자가 네트워크 액세스 식별자(NAI)를 업데이트하여 AAA 네트워크 내부의 여러 프록시를 통해 명시적 라우팅을 실행할 수 있습니다(자세한 내용은 RFC 7542 참고). Android 12는 PPS-MO 확장을 위한 WBA 사양에 따라 이 기능을 구현합니다.
인증 취소 임박 처리
네트워크 운영자가 네트워크를 인증하는 데 사용되는 사용자 인증 정보를 위해 서비스를 특정 시간(제한 시간 지연을 통해 지정됨) 동안 사용할 수 없음을 기기에 알릴 수 있습니다. 이 신호를 수신한 후에 기기는 제한 시간 지연이 만료될 때까지 동일한 사용자 인증 정보로 네트워크에 다시 연결하지 않습니다. 반면, 이 기능을 지원하지 않는 기기는 서비스를 사용할 수 없는 동안 반복적으로 네트워크에 다시 연결하려고 시도할 수도 있습니다.

OMA-DM PerProviderSubscription-MO XML 프로필의 예

사용자 이름/비밀번호 사용자 인증 정보가 있는 프로필(EAP-TTLS)

아래 예시는 다음을 포함하는 네트워크의 프로필을 보여줍니다.

  • Example Network로 설정된 네트워크 친화적 이름
  • hotspot.example.net으로 설정된 FQDN
  • 로밍 컨소시엄 OI(로밍용)
  • Base64로 인코딩된 사용자 이름 user, 비밀번호 password가 있는 사용자 인증 정보와 example.net으로 설정된 렐름
  • 21로 설정된 EAP 메서드(EAP-TTLS)
  • MS-CHAP-V2로 설정된 2단계 내부 메서드
  • trusted.comtrusted.net으로 설정된 대체 AAA 도메인 이름
<MgmtTree xmlns="syncml:dmddf1.2">
  <VerDTD>1.2</VerDTD>
  <Node>
    <NodeName>PerProviderSubscription</NodeName>
    <RTProperties>
      <Type>
        <DDFName>urn:wfa:mo:hotspot2dot0-perprovidersubscription:1.0</DDFName>
      </Type>
    </RTProperties>
    <Node>
      <NodeName>i001</NodeName>
      <Node>
        <NodeName>HomeSP</NodeName>
        <Node>
          <NodeName>FriendlyName</NodeName>
          <Value>Example Network</Value>
        </Node>
        <Node>
          <NodeName>FQDN</NodeName>
          <Value>hotspot.example.net</Value>
        </Node>
        <Node>
          <NodeName>RoamingConsortiumOI</NodeName>
          <Value>112233,445566</Value>
        </Node>
      </Node>
      <Node>
        <NodeName>Credential</NodeName>
        <Node>
          <NodeName>Realm</NodeName>
          <Value>example.net</Value>
        </Node>
        <Node>
          <NodeName>UsernamePassword</NodeName>
          <Node>
            <NodeName>Username</NodeName>
            <Value>user</Value>
          </Node>
          <Node>
            <NodeName>Password</NodeName>
            <Value>cGFzc3dvcmQ=</Value>
          </Node>
          <Node>
            <NodeName>EAPMethod</NodeName>
            <Node>
              <NodeName>EAPType</NodeName>
              <Value>21</Value>
            </Node>
            <Node>
              <NodeName>InnerMethod</NodeName>
              <Value>MS-CHAP-V2</Value>
            </Node>
          </Node>
        </Node>
      </Node>
      <Node>
        <NodeName>Extension</NodeName>
        <Node>
            <NodeName>Android</NodeName>
            <Node>
                <NodeName>AAAServerTrustedNames</NodeName>
                <Node>
                    <NodeName>FQDN</NodeName>
                    <Value>trusted.com;trusted.net</Value>
                </Node>
            </Node>
        </Node>
      </Node>
    </Node>
  </Node>
</MgmtTree>

디지털 인증서 사용자 인증 정보가 있는 프로필(EAP-TLS)

아래 예시는 다음을 포함하는 네트워크의 프로필을 보여줍니다.

  • GlobalRoaming로 설정된 네트워크 친화적 이름
  • globalroaming.net으로 설정된 FQDN
  • 로밍 컨소시엄 OI(로밍용)
  • users.globalroaming.net으로 설정된 렐름
  • 지정된 지문이 있는 디지털 인증서가 포함된 사용자 인증 정보
<MgmtTree xmlns="syncml:dmddf1.2">
  <VerDTD>1.2</VerDTD>
  <Node>
    <NodeName>PerProviderSubscription</NodeName>
    <RTProperties>
      <Type>
        <DDFName>urn:wfa:mo:hotspot2dot0-perprovidersubscription:1.0</DDFName>
      </Type>
    </RTProperties>
    <Node>
      <NodeName>i001</NodeName>
      <Node>
        <NodeName>HomeSP</NodeName>
        <Node>
          <NodeName>FriendlyName</NodeName>
          <Value>GlobalRoaming</Value>
        </Node>
        <Node>
          <NodeName>FQDN</NodeName>
          <Value>globalroaming.net</Value>
        </Node>
        <Node>
          <NodeName>RoamingConsortiumOI</NodeName>
          <Value>FFEEDDCC0,FFEEDDCC1,009999,008888</Value>
        </Node>
      </Node>
      <Node>
        <NodeName>Credential</NodeName>
        <Node>
          <NodeName>Realm</NodeName>
          <Value>users.globalroaming.net</Value>
        </Node>
        <Node>
          <NodeName>DigitalCertificate</NodeName>
          <Node>
            <NodeName>CertificateType</NodeName>
            <Value>x509v3</Value>
          </Node>
          <Node>
            <NodeName>CertSHA256Fingerprint</NodeName>
            <Value>0ef08a3d2118700474ca51fa25dc5e6d3d63d779aaad8238b608a853761da533</Value>
          </Node>
        </Node>
      </Node>
    </Node>
  </Node>
</MgmtTree>

SIM 사용자 인증 정보가 있는 프로필(EAP-AKA)

아래 예시는 다음을 포함하는 네트워크의 프로필을 보여줍니다.

  • Purple Passpoint로 설정된 네트워크 친화적 이름
  • wlan.mnc888.mcc999.3gppnetwork.org으로 설정된 FQDN
  • PLMN ID가 999888인 SIM 사용자 인증 정보
  • 23으로 설정된 EAP 메서드(EAP-AKA)
<MgmtTree xmlns="syncml:dmddf1.2">
  <VerDTD>1.2</VerDTD>
  <Node>
    <NodeName>PerProviderSubscription</NodeName>
    <RTProperties>
      <Type>
        <DDFName>urn:wfa:mo:hotspot2dot0-perprovidersubscription:1.0</DDFName>
      </Type>
    </RTProperties>
    <Node>
      <NodeName>i001</NodeName>
      <Node>
        <NodeName>HomeSP</NodeName>
        <Node>
          <NodeName>FriendlyName</NodeName>
          <Value>Purple Passpoint</Value>
        </Node>
        <Node>
          <NodeName>FQDN</NodeName>
          <Value>purplewifi.com</Value>
        </Node>
      </Node>
      <Node>
        <NodeName>Credential</NodeName>
        <Node>
          <NodeName>Realm</NodeName>
          <Value>wlan.mnc888.mcc999.3gppnetwork.org</Value>
        </Node>
        <Node>
          <NodeName>SIM</NodeName>
          <Node>
            <NodeName>IMSI</NodeName>
            <Value>999888*</Value>
          </Node>
          <Node>
            <NodeName>EAPType</NodeName>
            <Value>23</Value>
          </Node>
        </Node>
      </Node>
    </Node>
  </Node>
</MgmtTree>

인증 권고

Passpoint R1 EAP-SIM, EAP-AKA 또는 EAP-AKA' 프로필과 함께 Android 8.x 또는 Android 9을 실행하는 기기는 Passpoint 네트워크에 자동으로 연결되지 않습니다. 이 문제는 Wi-Fi 오프로드를 줄여 사용자, 이동통신사, 서비스에 영향을 줍니다.

세그먼트 영향 영향의 크기
이동통신사 및 Passpoint 서비스 제공업체 이동통신망의 로드 증가. Passpoint R1을 사용하는 모든 이동통신사.
사용자 이동통신사 Wi-Fi 액세스 포인트(AP)에 자동으로 연결할 기회의 손실로 데이터 비용 증가. Passpoint R1을 지원하는 이동통신사 네트워크에서 실행되는 기기의 사용자

실패 원인

Passpoint는 ANQP 서비스 제공업체가 기기에 설치된 프로필과 일치하는지 확인하는 메커니즘을 지정합니다. EAP-SIM, EAP-AKA 및 EAP-AKA'에 관한 다음 일치 규칙은 EAP-SIM/AKA/AKA' 실패에 초점을 맞춘 규칙의 일부입니다.

If the FQDN (Fully Qualified Domain Name) matches
    then the service is a Home Service Provider.
Else: If the PLMN ID (3GPP Network) matches
    then the service is a Roaming Service Provider.

두 번째 기준은 Android 8.0에서 수정되었습니다.

Else: If the PLMN ID (3GPP Network) matches AND the NAI Realm matches
    then the service is a Roaming Service Provider.

이 수정으로 시스템이 전에 작동하던 서비스 제공업체와 일치하는 항목을 관찰하지 못해서 Passpoint 기기가 자동으로 연결되지 않았습니다.

해결 방법

수정된 일치 기준 문제를 해결하려면 이동통신사와 서비스 제공업체가 Passpoint AP에서 게시한 정보에 네트워크 액세스 식별자(NAI) 영역을 추가해야 합니다.

권장 솔루션은 네트워크 서비스 제공업체가 가장 빨리 배포할 수 있는 네트워크 측 해결 방법을 구현하는 것입니다. 기기 측 해결 방법은 AOSP에서 변경 목록(CL)을 선택한 다음 필드의 기기를 업데이트하는 OEM에 따라 달라집니다.

이동통신사 및 Passpoint 서비스 제공업체의 네트워크 수정

네트워크 측 해결 방법은 NAI 영역 ANQP 요소를 아래에 지정된 대로 추가하도록 네트워크를 재구성하는 것입니다. Passpoint 사양에는 NAI 영역 ANQP 요소가 필요하지 않지만 이 속성을 추가하는 것이 Passpoint 사양을 준수하는 것이므로 사양을 준수하는 클라이언트 구현을 중단해서는 안 됩니다.

  1. NAI 영역 ANQP 요소를 추가합니다.
  2. NAI 영역 하위 필드를 기기에 설치된 프로필의 Realm과 일치하도록 설정합니다.
  3. 각 EAP 유형에 따라 다음 정보를 설정합니다.

    • EAP-TTLS: EAPMethod(21) 및 지원되는 내부 인증 유형(PAP, CHAP, MS-CHAP, MS-CHAP-V2) 설정
    • EAP-TLS: EAPMethod(13) 설정
    • EAP-SIM: EAPMethod(18) 설정
    • EAP-AKA: EAPMethod(23) 설정
    • EAP-AKA': EAPMethod(50) 설정

OEM용 기기/AOSP 수정

기기 측 해결 방법을 구현하려면 OEM은 패치 CL aosp/718508을 선택해야 합니다. 이 패치는 다음 출시 위에 적용할 수 있습니다(Android 10 이상에는 적용되지 않음).

  • Android 9
  • Android 8.x

패치가 선택되면 OEM은 필드의 기기를 업데이트해야 합니다.