キャリアの識別

コレクションでコンテンツを整理 必要に応じて、コンテンツの保存と分類を行います。

Android 9を実行しているデバイスは、サブスクリプションキャリア情報を認識して、IDとキャリア名を提供できます。 Androidは、各キャリアとその一意のキャリアIDの一致ルールを使用して、キャリアIDデータベースを維持しています。 AOSPは、キャリアIDデータベースのコンテンツをcarrier_list.textpbファイルに含めます。統合データベースは、キャリアを識別する必要があるアプリの重複ロジックを最小限に抑え、キャリア識別属性の公開を制限します。

キャリア識別のカバレッジと精度を向上させるために、Androidは帯域外およびキャリアIDテーブルの更新をサポートしています。各アップデートにはバージョン番号が付いており、AOSPに公開されます。

実装

帯域外更新を実装したいユーザーは、AOSPからcarrier_list.pbバイナリをダウンロードできます。テーブルの読み取り可能な形式を表示するには、 carrier_list.textpbを参照してください。

キャリアIDテーブルをデバイスの/data/misc/carrierid/データパーティションに配置します。キャリアIDテーブルが既存のバージョンよりも新しい場合、デバイスはテーブルをキャリアIDデータベースクラスに保持します。キャリアIDデータベースからの最新情報は、パブリックメソッドgetSimCarrierId()およびgetSimCarrierIdName()によって取得されます。

データベースへのキャリアID情報の追加

キャリアIDをデータベースに追加または更新するには、キャリア識別情報フォームを使用してリクエストを送信します。

リクエストが確認され、承認された場合、変更はcarrier_list.pbのAOSPコードベースにプッシュされます。次に、更新されたリストをコピーして、カスタマイズしたビルドに組み込むことができます。

キャリアIDとCarrierConfigの統合

Android 10以降、キャリア構成は、 CarrierServiceからキャリア固有の構成をフェッチするためのキーとしてキャリアIDを使用することをサポートしています。

キャリアIDをCarrierConfigと統合することには、次の利点があります。

  • 各キャリアのすべてのMCC / MNCペアを単一の場所に統合し、重複または一貫性のないデータを削除します。
  • 各キャリアの正規の識別子を作成し、あいまいさを取り除きます。
  • モバイルネットワークオペレーター(MNO)の一部として構成する代わりに、モバイル仮想ネットワークオペレーター(MVNO)を個々のIDで識別できるようにします。

構成データのキャリアIDへの移行

設定データをMCC / MNCペアからキャリアIDに移行するには、次の手順に従います。

  1. 単一のキャリアからのcarrier_config_mccmnc.xmlファイルをグループ化します。参照としてcarrier_list.textpbを使用して、MCC、MNC、およびMVNO情報を特定のキャリアにマッピングします。

  2. 構成を1つのファイルにマージします。

  3. (オプション)MNOからデータを継承します。 MVNOは、レガシーcarrier_config_mccmnc.xmlファイルのMNOから設定を継承します。キャリアIDを使用すると、MVNOを含むすべてのキャリアが専用の設定ファイルを持つことができるため、移行中にMNOデータを含めることをお勧めします。

  4. MVNOキャリアIDの設定が存在しない場合は、 getCarrierIdFromSimMccMncを使用してMNOキャリアIDから設定をフェッチします。

  5. 新しいファイルの名前をcarrier_config_carrierid_ carrierid _ carriername .xmlに変更します。ここで、 carrieridcanonical_idに対応し、 carriernamecarrier_list.textpbcarrier_nameに対応する必要があります。