| <html devsite><head> |
| |
| <meta name="book_path" value="/_book.yaml"/> |
| |
| <meta name="project_path" value="/_project.yaml"/> |
| </head> |
| <body> |
| <!-- |
| Copyright 2018 The Android Open Source Project |
| |
| Licensed under the Apache License, Version 2.0 (the "License"); |
| you may not use this file except in compliance with the License. |
| You may obtain a copy of the License at |
| |
| http://www.apache.org/licenses/LICENSE-2.0 |
| |
| Unless required by applicable law or agreed to in writing, software |
| distributed under the License is distributed on an "AS IS" BASIS, |
| WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| See the License for the specific language governing permissions and |
| limitations under the License. |
| --> |
| |
| <h1 id="modem_requirements_for_esim_support" class="page-title">针对 eSIM 支持的调制解调器要求</h1> |
| |
| <p>本页总结了支持 eSIM 芯片或可卸载 eSIM 4FF 卡所需的调制解调器功能。</p> |
| |
| <h2 id="general_requirements">常规要求</h2> |
| |
| <p>以下是针对常规 eSIM 支持的调制解调器要求。只有在调制解调器满足下列所有要求时,本地配置文件助理程序 (LPA) 才可正常发挥作用。</p> |
| |
| <h3 id="handle_the_default_boot_profile_correctly">正确处理默认启动配置文件</h3> |
| |
| <p>如果未在 eSIM 卡上启用操作或测试配置文件,则系统会启用默认启动配置文件。调制解调器应将已启用默认启动配置文件的 eSIM 卡识别为有效的 SIM 卡。调制解调器应将相应的卡报告至上层,且不应关闭 SIM 卡电源。</p> |
| |
| <h3 id="send_terminal_capabilities_correctly">正确发送终端功能</h3> |
| |
| <p>接通电源后,调制解调器应向 eSIM 卡发送正确的终端功能。终端功能必须进行编码以支持 eUICC 卡功能:“本地配置文件管理”和“配置文件下载”。</p> |
| |
| <p>请参阅 <a href="https://www.etsi.org/deliver/etsi_ts/102200_102299/102221/15.00.00_60/ts_102221v150000p.pdf">ETSI TS 102 221 第 11.1.19.2.4 节</a>:“Additional Terminal capability indications related to eUICC”。字节 [1-3] 应为:‘83’(代码)‘01’(长度)‘07’(eUICC 功能)。</p> |
| |
| <h3 id="optional_support_esim_os_ota_updates">(可选)支持 eSIM 卡操作系统 OTA 更新</h3> |
| <aside class="note"><strong>注意</strong>:<span>由于 eSIM 卡操作系统无线下载 (OTA) 更新未标准化,因此是否支持此更新取决于提供 eSIM 卡操作系统的供应商。</span></aside> |
| <p>调制解调器应该支持 eSIM 卡操作系统 OTA 更新的所有要求,例如切换到直通模式并确保 eSIM 卡在 OTA 更新过程中一直处于通电状态。</p> |
| |
| <h2 id="hal_requirements">HAL 要求</h2> |
| |
| <p>以下是常规 eSIM 卡支持所需的 API 实现。</p> |
| |
| <h3 id="implement_setsimpower_api_in_radio_hal_v11">在 Radio HAL v1.1 中实现 setSimPower API</h3> |
| |
| <p>调制解调器应该支持 <a href="/reference/hidl/android/hardware/radio/1.1/IRadio#setsimcardpower_1_1">setSimPower</a> API。</p> |
| |
| <h3 id="implement_getsimslotsstatus_api_in_iradioconfig_hal_v10">在 IRadioConfig HAL v1.0 中实现 getSimSlotsStatus API</h3> |
| |
| <p>调制解调器应该支持 <a href="https://android.googlesource.com/platform/hardware/interfaces/+/master/radio/config/1.0/IRadioConfig.hal#51" class="external">getSimSlotsStatus</a> API,此 API 会指出插槽中是否有 eSIM 卡。</p> |
| |
| <h3 id="implement_geticccardstatus_api_in_iradio_hal_v12">在 IRadio HAL v1.2 中实现 getIccCardStatus API</h3> |
| |
| <p>调制解调器应在 <a href="https://source.android.com/reference/hidl/android/hardware/radio/1.0/IRadioResponse#geticccardstatusresponse">getIccCardStatusResponse</a> API 中提供卡状态的复位应答 (ATR) 和插槽 ID。在 v1.0 中引入了此 API,并且在 v1.2 中,对 <a href="https://android.googlesource.com/platform/hardware/interfaces/+/master/radio/1.2/types.hal#341" class="external">CardStatus</a> 进行了更改以纳入 <a href="https://android.googlesource.com/platform/hardware/interfaces/+/master/radio/1.2/types.hal#351" class="external">ATR</a>。</p> |
| |
| <h3 id="set_cardstaterestricted_on_sim_lock_subsidy_lock">在 SIM 卡锁定功能(subsidy 锁)上设置 CardState:RESTRICTED</h3> |
| |
| <p>如果 eSIM 卡处于 SIM 锁定(subsidy 锁定)状态,则调制解调器应在 <a href="https://source.android.com/reference/hidl/android/hardware/radio/1.0/IRadioResponse#geticccardstatusresponse">getIccCardStatusResponse</a> API 中将卡状态设置为 <a href="https://source.android.com/reference/hidl/android/hardware/radio/1.0/types#cardstate"><code>CardState:RESTRICTED</code></a>。</p> |
| |
| <h3 id="optional_implement_setsimslotsmapping_api_in_iradioconfig_hal_v10">(可选)在 IRadioConfig HAL v1.0 中实现 setSimSlotsMapping API</h3> |
| <aside class="note"><strong>注意</strong>:<span>仅在需要切换插槽的设备配置中才需执行此操作,例如,设备具有一个 eSIM 卡插槽和一个实体/可移除的 SIM (pSIM) 卡插槽,并且一次只有一个插槽可处于有效状态。</span></aside> |
| <p>调制解调器应支持 <a href="https://android.googlesource.com/platform/hardware/interfaces/+/master/radio/config/1.0/IRadioConfig.hal#81" class="external">setSimSlotsMapping API</a>,此 API 能够设置从实体插槽到逻辑插槽的映射。LPA 使用此 API 来选择处于有效状态的 SIM 卡插槽。</p> |
| |
| <h2 id="logging_requirements">日志记录要求</h2> |
| |
| <p>以下是用于调试 eSIM 卡问题的一般调制解调器日志记录要求。</p> |
| |
| <h3 id="log_capture">日志捕获</h3> |
| |
| <p>日志记录应捕获处理器间通信、SIM 卡功能、无线接口层 (RIL) 日志记录以及应用协议数据单元 (APDU) 日志记录。</p> |
| |
| <h3 id="on-device_logging">设备上的日志记录</h3> |
| |
| <p>设备软件应该支持设备上的调制解调器日志捕获机制。</p> |
| |
| <h3 id="log_config_support">日志配置支持</h3> |
| |
| <p>设备软件应该支持不同的调制解调器日志记录配置(级别、模块)。设备上的日志记录和基于 PC 工具的日志记录都应该支持这些配置。</p> |
| |
| <h3 id="android_bug_report">Android 错误报告</h3> |
| |
| <p>错误报告应该包含调制解调器日志、供应商 RIL 日志、应急签名日志和 Android 日志。</p> |
| |
| </body></html> |