運營商可以在 Android 開源項目 (AOSP) 中更新其接入點名稱 (APN) 信息和運營商特定配置設置 ( CarrierConfig )。
使用您的公司電子郵件地址的 Google 帳戶
要更新 APN 信息或您的 CarrierConfig,您需要使用具有有效公司電子郵件地址的 Google 帳戶提交請求(例如,來自 Acme 公司的 APN 更新請求應來自諸如foobar@acme.com 之類的電子郵件地址)。
如果您沒有鏈接到公司電子郵件地址的 Google 帳戶,請從瀏覽器中退出所有 Gmail 帳戶(我們建議使用隱私瀏覽功能,例如隱身窗口,以避免與您的其他帳戶混淆),然後使用您的公司電子郵件地址創建一個 Google 帳戶。
準備本地開發環境
如果您以前從未向 AOSP 提交過代碼,則需要初始化構建環境、熟悉工具並了解如何提交補丁:
此外,我們強烈建議您使用Google 問題跟踪器來跟踪更改。
提交錯誤
- 轉到issuetracker.google.com並使用您的公司電子郵件地址登錄(請參閱使用您的公司電子郵件地址的 Google 帳戶)。
- 登錄後,單擊屏幕左側的創建問題。
- 在Component中,選擇Android Public Tracker > Framework
- 根據需要繼續APN update或CarrierConfig update以輸入標題和描述。
APN 錯誤
設置bug屬性如下:
標題:為 CarrierXYZ添加/修改/刪除APN
說明:添加您請求的更改的詳細說明,包括 APN 設置本身。
運營商配置錯誤
設置bug屬性如下:
標題: CarrierXYZ 的配置更改
說明:添加您請求的更改的詳細說明。
提交更改
要進行更改:
- 確定要更改的文件。
- 對文件進行更改。
- 按照提交補丁的說明將更改提交到本地存儲庫,注意提交消息指南,包括推薦的格式。
- 提交對個人歷史記錄的更改後,使用
repo upload
命令將其上傳到 Gerrit。 - 成功上傳後,repo 會提供 Gerrit 上新頁面的 URL。使用此 URL 來:
- 在審核服務器上查看您的補丁
- 添加評論
- 為您的補丁請求特定的審閱者
APN 語法
Android 項目名稱- 設備/示例
文件名- etc/apns-full-conf.xml( 谷歌 Git 主鏈接)
該文件包含 XML 格式的 APN 設置並用作示例文件,因此 Android 設備的行為沒有變化。
典型的 APN 配置如下所示:
<apn carrier="CarrierXYZ" mcc="123" mnc="123" apn="carrierxyz" type="default,supl,mms,ims,cbs" mmsc="http://mms.carrierxyz.com" mmsproxy="0.0.0.0" mmsport="80" bearer_bitmask="4|5|6|7|8|12" />
測試
- 連接您擁有 root 訪問權限的任何 Android 設備。
- 將設置添加到 /etc/apns-conf.xml。
- 重置 APN 設置。
- 在 APN 設置中,確認配置文件已正確加載。
- 對於每個配置文件,測試數據連接、Wi-Fi 熱點和彩信以確保它們正常工作。
提交消息
[Example - "Add CarrierXYZ apns to sample apns"] Bug: [Issue ID from Google Issue Tracker] Test: No change to behavior as this is only a sample file
樣品 CL
有關示例 CL,請參閱示例 BICS APN 。
CarrierConfig 語法
項目名稱- platform/packages/apps/CarrierConfig
文件名- assets/carrier_config_
通過相關的 MCC/MNC 元組識別資產文件夾中的相關 XML 文件。該文件包含 XML 格式的運營商配置對象。屬性名稱定義為CarrierConfigManager下的鍵,值的類型(int/string/bool)由後綴指示。
典型的 int/string/bool 屬性如下所示:
<int name="vvm_port_number_int" value="5499" /> <string name="vvm_type_string">vvm_type_omtp</string > <boolean name="vvm_cellular_data_required_bool" value="true" />
提交消息
[Example - "Add VVM settings for CarrierXYZ"] [Example - "Updated <mccmnc> carrier config file to include VVM settings as defined by CarrierXYZ."] Bug: [Issue ID from Google Issue Tracker] Test: [Testing notes]
樣品 CL
有關示例 CL,請參閱更新的運營商配置文件。
請求審查
請求審查:
- 轉到更改的 Gerrit URL 並添加android-carrier-config-review@google.com作為審閱者。
- 您還可以將您的 Google 聯繫人添加到 Gerrit 上的抄送列表中。
- 出於跟踪目的,您可以將問題的受讓人更改為android-carrier-config-review@google.com 。
在提交通過審查和驗證過程後,Gerrit 會自動將更改合併到公共存儲庫中。其他用戶可以運行repo sync
以將更新拉入他們的本地客戶端。