From bf30f1478c01c32c0093bb75ac128c6f7eb20842 Mon Sep 17 00:00:00 2001 From: Peter Cai Date: Sun, 14 Sep 2025 14:48:32 -0400 Subject: [PATCH 1/4] Update README.md --- README.md | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/README.md b/README.md index f953f9e..740478a 100644 --- a/README.md +++ b/README.md @@ -16,7 +16,7 @@ There are two variants of this project, OpenEUICC and EasyEUICC: Some side notes: 1. When privileged, OpenEUICC supports any eUICC chip that implements the SGP.22 standard, internal or external. However, there is __no guarantee__ that external (removable) eSIMs actually follow the standard. Please __DO NOT__ submit bug reports for non-functioning removable eSIMs. They are __NOT__ officially supported unless they also support / are supported by EasyEUICC, the unprivileged variant. 2. Both variants support accessing eUICC chips through USB CCID readers, regardless of whether the chip contains the correct ARA-M hash to allow for unprivileged access. However, only `T=0` readers that use the standard [USB CCID protocol](https://en.wikipedia.org/wiki/CCID_(protocol)) are supported. -3. Prebuilt release-mode EasyEUICC apks can be downloaded [here](https://gitea.angry.im/PeterCxy/OpenEUICC/releases). For OpenEUICC, no official release is currently provided and only debug mode APKs can be found in the CI page. +3. Prebuilt release-mode EasyEUICC apks can be downloaded [here](https://gitea.angry.im/PeterCxy/OpenEUICC/releases). For OpenEUICC, no official release is currently provided and only debug mode APKs and Magisk modules can be found in the [CI page](https://gitea.angry.im/PeterCxy/OpenEUICC/actions). 4. For removable eSIM chip vendors: to have your chip supported by official builds of EasyEUICC when inserted, include the ARA-M hash `2A2FA878BC7C3354C2CF82935A5945A3EDAE4AFA`. __This project is Free Software licensed under GNU GPL v3, WITHOUT the "or later" clause.__ Any modification and derivative work __MUST__ be released under the SAME license, which means, at the very least, that the source code __MUST__ be available upon request. @@ -74,10 +74,7 @@ FAQs === - Q: Do you provide prebuilt binaries for OpenEUICC? -- A: Debug-mode APKs are available continuously as an artifact of the [Actions](https://gitea.angry.im/PeterCxy/OpenEUICC/actions) CI used by this project. However, these debug-mode APKs are **not** intended for inclusion inside system images, nor are they supported by the developer in any sense. If you are a custom ROM developer, either include the entire OpenEUICC repository in your AOSP source tree, or generate an APK using `gradle` and import that as a prebuilt system app. Note that you might want `privapp_whitelist_im.angry.openeuicc.xml` as well. - -- Q: AOSP's Settings app seems to be confused by OpenEUICC (for example, disabling / enabling profiles from the Networks page do not work properly) -- A: When your device has internal eSIM chip(s) __and__ you have inserted a removable eSIM chip, the Settings app can misbehave since it was never designed for this scenario. __Please prefer using OpenEUICC's own management interface whenever possible.__ In the future, there might be an option to exclude removable SIMs from being reported to the Android system. +- A: Debug-mode APKs and Magisk modules are available continuously as an artifact of the [Actions](https://gitea.angry.im/PeterCxy/OpenEUICC/actions) CI used by this project. However, these debug-mode APKs are **not** intended for inclusion inside system images, nor are they supported by the developer in any sense. If you are a custom ROM developer, either include the entire OpenEUICC repository in your AOSP source tree, or generate an APK using `gradle` and import that as a prebuilt system app. Note that you might want `privapp_whitelist_im.angry.openeuicc.xml` as well. - Q: Can EasyEUICC manage my phone's internal eSIM? - A: No. For EasyEUICC to work, the eSIM chip MUST proactively grant access via its ARA-M field. From 525212c1b8889f68b8772bb4c2291eff5a7c63b1 Mon Sep 17 00:00:00 2001 From: reindex Date: Mon, 22 Sep 2025 00:49:57 +0200 Subject: [PATCH 2/4] Update Japanese Language (#229) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 日本語を更新しといたよ。 間違ったところも修正済み。 Reviewed-on: https://gitea.angry.im/PeterCxy/OpenEUICC/pulls/229 Co-authored-by: reindex Co-committed-by: reindex --- app-common/src/main/res/values-ja/strings.xml | 108 +++++++++--------- app-unpriv/src/main/res/values-ja/strings.xml | 19 +-- app/src/main/res/values-ja/strings.xml | 5 +- 3 files changed, 70 insertions(+), 62 deletions(-) diff --git a/app-common/src/main/res/values-ja/strings.xml b/app-common/src/main/res/values-ja/strings.xml index da9d708..b171972 100644 --- a/app-common/src/main/res/values-ja/strings.xml +++ b/app-common/src/main/res/values-ja/strings.xml @@ -2,14 +2,13 @@ このアプリでアクセスできるリムーバブル eUICC カードがデバイス上で検出されていません。互換性のあるカード挿入または USB リーダーを接続してください。 この eSIM にはプロファイルがありません。 - 不明 - 情報がありません ヘルプ スロットを再読み込み - 未知 + 不明 論理スロット %d - 有効済み - 無効済み + + 有効化済み + 無効化済み プロバイダー: クラス: テスト中 @@ -23,6 +22,8 @@ 操作は成功しましたが、デバイスのモデムが更新を拒否しました。新しいプロファイルを使用するには機内モードに切り替えるか、再起動する必要があります。 新しい eSIM プロファイルに切り替えることができません。 確認文字列が一致しません + 確認文字列が一致しません + このチップは消去されました ICCID をクリップボードにコピーしました シリアル番号をクリップボードにコピーしました EID をクリップボードにコピーしました @@ -39,14 +40,16 @@ eSIM プロファイルの削除に失敗しました eSIM プロファイルを切り替え中 eSIM プロファイルの切り替えに失敗しました + eSIM チップを消去中 + eSIM チップの消去に失敗しました 新しい eSIM サーバー (RSP / SM-DP+) アクティベーションコード 確認コード (オプション) 確認コード (必須) IMEI (オプション) - 残り容量が少ない - 残り容量が少ないため、ダウンロードに失敗する可能性があります。 + 残りの容量が少量です + 残り容量が少ないため、このプロファイルのダウンロードに失敗する可能性があります。 クリップボードに LPA コードがありません 解析できません QR コードまたはクリップボードの内容を LPA コードとして解析できませんでした。 @@ -84,7 +87,27 @@ 最終の APDU 例外: 保存 「%s」での診断 - 別のネットワークに接続し(例:Wi-Fi とデータを切り替える)、もう一度お試しください。 + この eSIM プロファイルはすでに eSIM チップに存在します。 + eSIM チップにはプロファイルをダウンロードするのに必要なメモリが残っていません。 + この eSIM プロファイルは、eSIM チップではサポートされていません。 + eSIM チップでエラーが発生しました。 + 使用しているデバイスまたは eSIM チップの EID は、通信事業者によってサポートされていません。 + この eSIM プロファイルは、別のデバイスにダウンロードされています。 + この eSIM プロファイルは取り消されました。 + アクティベーションコードが無効です。 + eSIM プロファイルのダウンロード試行回数の上限を超えました。 + このプロファイルをダウンロードするには確認コードが必要です。 + 入力した確認コードは無効です。 + この eSIM プロファイルは有効期限が切れています。 + 確認コードのダウンロード試行回数の上限を超えました。 + 不明な SM-DP+ アドレス + ネットワークにアクセスできません + TLS 証明書エラー、この eSIM プロファイルはサポートされていません + ダウンロード済みの eSIM プロファイルを再インストールしようとしています + 未使用の eSIM プロファイルをいくつか削除して、再度お試しください + サポートについては、通信事業者にお問い合わせください。 + この eSIM プロファイルを再発行するには、通信事業者にお問い合わせください。 + 別のネットワークに接続後 (例: Wi-Fi とデータを切り替え) を行った後に再度お試しください。 ログは共有したパスに保存されました。別のアプリで共有しますか? 新しいニックネーム ニックネームを UTF-8 にエンコードできませんでした @@ -98,8 +121,8 @@ eSIM プロファイルはダウンロードや削除、有効化や無効化されたときに通信事業者に通知を送信できます。送信されるこれらの通知のキューはここにリストされます。\n\n設定では、各タイプの通知を自動的に送信するかどうかを指定できます。通知が送信された場合でもキューのスペースが不足していない限り、記録から自動的に削除されることはありません。\n\nここでは保留中の各通知を手動で送信または削除できます。 ダウンロードしました 削除しました - 有効化しました - 無効化しました + 有効化済み + 無効化済み 処理 削除 eUICC 情報 @@ -116,18 +139,29 @@ SAS 認定番号 保護されたプロファイルのバージョン NVRAM の空き容量 (eSIM プロファイルストレージ) - (目安) + (参照用) 証明書発行者 (CI) GSMA ライブ CI GSMA テスト CI 不明な eSIM CI + eUICC を消去 + eUICC を消去 + このチップ上のすべてのプロファイルを削除することを確認してください。この操作は元に戻せないことを理解してください。\n\nEID: %1$s\n\n%2$s + 確認のために「%s」を入力してください + EID が %s で終わるチップを消去することを確認し、この操作は元に戻せないことを理解してください + 消去 + はい いいえ + 不明 + 情報がありません 保存 %s のログ 開発者になるまであと %d ステップです。 あなたは開発者になりました! - カスタム ISD-R AID リストが保存されました + ISD-R AID リスト + カスタム ISD-R AID リストを保存しました。 + リセット 設定 通知 eSIM のプロファイル操作により、通信事業者に通知が送信されます。必要に応じてこの動作を微調整できます。 @@ -139,7 +173,7 @@ プロファイルを切り替え中の通知を送信します\nこのタイプの通知は信頼できないことに注意してください。 高度な設定 プロファイルの無効化と削除を許可 - デフォルトでは、このアプリでデバイスに挿入された取り外し可能な eSIM の有効なプロファイルを無効化することを防いでいます。なぜなのかというと時々アクセスができなくなるからです。\nこのチェックボックスを ON にすることで、この保護機能を解除します。 + デフォルトでは、このアプリでデバイスに挿入されたリムーバブル eSIM の有効なプロファイルを無効化することを防いでいます。なぜなのかというと時々アクセスができなくなるからです。\nこのチェックボックスを ON にすることで、この保護機能を解除します。 詳細ログ 詳細ログを有効化します。これには個人的な情報が含まれている可能性があります。この機能を ON にした後は、信頼できるユーザーとのみログを共有してください。 言語 @@ -147,50 +181,22 @@ ログ アプリの最新デバッグログを表示します 開発者オプション - プロファイルを切り替えた後にモデムに更新コマンドを送信するかどうか。クラッシュが発生する場合は、これを無効にしてみてください。 + モデムに更新コマンドを送信 + プロファイルを切り替えた後にモデムに更新コマンドを送信するかどうかを設定します。クラッシュが発生する場合は、この機能を無効化してください。 フィルタリングされていないプロファイル一覧を表示 非運用のプロファイルも含めます SM-DP+ TLS 証明書を無視する RSP サーバーで使用される TLS 証明書を受け入れます - 一部のブランドの取り外し可能な eUICC では、独自の非標準 ISD-R AID が使用されている場合があり、サードパーティ アプリからアクセスできなくなります。アプリはこのリストに追加された非標準の AID の使用を試みる可能性がありますが、動作することは保証されません。 + eUICC の消去を許可 + これは危険な操作であり、デフォルトでは非表示になっています。代わりとしてすべてのプロファイルを手動で削除することもできます。 グローバル ES10x MSS + + 高速 + 互換モード + + ISD-R AID リストをカスタマイズ + 一部ブランドのリムーバブル eUICC は独自の非標準な ISD-R AID を使用しているため、サードパーティー製アプリからアクセスできない場合があります。このリストに追加された非標準な AID の使用を試みますが、動作の保証はできません。 情報 アプリバージョン ソースコード - 確認文字列が一致しません - このチップは消去されました - eSIM チップを消去しています - eSIM チップの消去は失敗しました - eSIM を消去する - eSIM を消去する - このチップ内のすべてのプロファイルを削除することをご確認してください。この操作は元に戻せないことをご理解してください。\n\nEID: %1$s\n\n%2$s - 確認のため、ここに「%s」を入力してください - EID が %s で終わるチップを消去することに同意します。これは元に戻せないことを理解しています。 - 消去する - eUICC の消去を可能にする - この操作は、デフォルトでは非表示になっている危険な操作です。代わりに、すべての構成ファイルを手動で削除することもできます。 - モデムに更新コマンドを送信 - ISD-R AID リストのカスタマイズ - リセット - ISD-R AID リスト - この eSIM プロファイルはすでに eSIM チップに存在しています。 - eSIM チップには十分なメモリ容量が残っていません。 - この eSIM プロファイルは、ダウンロード先のeSIM チップではサポートされていません。 - eSIMチップでエラーが発生しました。 - お使いのデバイスまたは eSIM チップの EID は、通信事業者によってサポートされていません。 - この eSIM プロファイルはすでに別のデバイスにダウンロードされています。 - この eSIM プロファイルはキャンセルされました。 - アクティベーションコードが無効です。 - eSIM プロファイルのダウンロード試行回数の上限を超えました。 - このプロファイルをダウンロードするには確認コードが必要です。 - 入力した確認コードは無効です。 - この eSIM プロファイルの有効期限が切れています。 - 確認コードのダウンロード試行回数の上限を超えました。 - 不明なSM-DP+アドレス - ネットワークにアクセスできません - TLS証明書エラー。このeSIMプロファイルはサポートされていません - すでにダウンロードしたeSIMプロファイルを再インストールしようとしています - 不要なeSIMプロファイルをいくつか削除して、もう一度お試しください - 通信事業者にお問い合わせください。 - この eSIM プロファイルを再発行するには、通信事業者にお問い合わせください。 diff --git a/app-unpriv/src/main/res/values-ja/strings.xml b/app-unpriv/src/main/res/values-ja/strings.xml index f3ff41f..0734ba3 100644 --- a/app-unpriv/src/main/res/values-ja/strings.xml +++ b/app-unpriv/src/main/res/values-ja/strings.xml @@ -1,20 +1,21 @@ - 互換性のチェック + 互換性の確認 SIM ツールキットを開く ARA-M SHA-1 をクリップボードにコピーしました 「%s」アプリを有効化してください - 互換性のチェック - お使いのスマートフォンは %s 対応 SIM カードを管理できます - お使いのスマートフォンは %s と互換性がありません - お使いのスマートフォンは %s と完全な互換性がありません。ただし、USBスマートカードリーダーを使用する場合、ほぼすべての機能を利用できます。 - アクセス可能なスロット: %s + + クイックで互換性を確認 + このデバイスで「%s」の対応カードを管理できます + 使用しているデバイスは「%s」と互換性がありません + 使用しているデバイスは「%s」と完全に互換性がありません。ただし、USB スマートカードリーダーを使用すればほぼすべての機能を利用できます。 + アクセス可能スロット: %s ISD-R アクセス: %s - 注: これらの結果は参考用です。以上に記載されていない SIM スロットでも、SIM カードを挿入すれば利用できる可能性があります。 - 注:現在 SIM カードが挿入されていない場合は、SIM カードを挿入してから再度互換性チェックをお試しください。どの SIM カードでも構いません。 - つづく + 注意: これらの結果は参考値です。上記に記載されていない SIM スロットでも、SIM カードを挿入すれば互換性がある場合があります。 + 注意: 現在 SIM カードが挿入されていない場合は、SIM カードを挿入してから再度互換性の確認をお試しください。どの SIM カードでも構いません。 + 続行 このメッセージを再度表示しない 不明 diff --git a/app/src/main/res/values-ja/strings.xml b/app/src/main/res/values-ja/strings.xml index fbf5c53..920801c 100644 --- a/app/src/main/res/values-ja/strings.xml +++ b/app/src/main/res/values-ja/strings.xml @@ -17,6 +17,7 @@ 使用しているデバイスは eSIM をサポートしています。モバイルネットワークに接続するには通信事業者が発行した eSIM をダウンロードするか、物理 SIM を挿入してください。 スキップ eSIM をダウンロード - TelephonyManagerをどこでも使用 - デフォルトでは、非特権モード (EasyEUICC) と一致するように、取り外し可能な eUICC に対して OMAPI のみが試行されます。これは、一部のデバイスではうまく機能しない可能性があります。このオプションを選択する場合、取り外し可能な eUICC でも TelephonyManager を使用することになります。 + + TelephonyManager を常に使用可能にする + デフォルトでは、非特権モード (EasyEUICC など) での動作と一致させるためにリムーバブル eUICC に対しては OMAPI のみを試行します。ただし、一部デバイスでは正常に動作しない場合があります。このオプションを選択するとリムーバブル eUICC でも TelephonyManager の使用が強制されます。 From 0096b9005fb781b3970a066713b3591e94dbc97b Mon Sep 17 00:00:00 2001 From: septs Date: Mon, 22 Sep 2025 00:50:16 +0200 Subject: [PATCH 3/4] chore: update ES10x MSS preference labels for clarity (#231) Reviewed-on: https://gitea.angry.im/PeterCxy/OpenEUICC/pulls/231 Co-authored-by: septs Co-committed-by: septs --- app-common/src/main/res/values-zh-rCN/strings.xml | 4 ++++ app-common/src/main/res/values/strings.xml | 4 ++-- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/app-common/src/main/res/values-zh-rCN/strings.xml b/app-common/src/main/res/values-zh-rCN/strings.xml index 4457e6d..7303d2d 100644 --- a/app-common/src/main/res/values-zh-rCN/strings.xml +++ b/app-common/src/main/res/values-zh-rCN/strings.xml @@ -86,6 +86,10 @@ 查看应用程序的最新调试日志 某些品牌的可移除 eUICC 可能会使用自己的非标准 ISD-R AID,导致第三方应用无法访问。此 App 可以尝试使用此列表中添加的非标准 AID,但不能保证它们一定有效。 全局 ES10x MSS + + 最佳效率 + 最佳兼容性 + 信息 App 版本 源码 diff --git a/app-common/src/main/res/values/strings.xml b/app-common/src/main/res/values/strings.xml index a7f2c10..39a762f 100644 --- a/app-common/src/main/res/values/strings.xml +++ b/app-common/src/main/res/values/strings.xml @@ -225,8 +225,8 @@ ES10x MSS Global ES10x MSS - High Speed - Compatibility Mode + High Efficiency + Most Compatible 255 From 351567a972c9abb53d6c4c3631fe142886359fdb Mon Sep 17 00:00:00 2001 From: septs Date: Mon, 22 Sep 2025 00:50:30 +0200 Subject: [PATCH 4/4] chore: improve variant compare (#230) Reviewed-on: https://gitea.angry.im/PeterCxy/OpenEUICC/pulls/230 Co-authored-by: septs Co-committed-by: septs --- README.md | 20 ++++++++++++-------- 1 file changed, 12 insertions(+), 8 deletions(-) diff --git a/README.md b/README.md index 740478a..8a67e41 100644 --- a/README.md +++ b/README.md @@ -4,14 +4,18 @@ A fully free and open-source Local Profile Assistant implementation for Android There are two variants of this project, OpenEUICC and EasyEUICC: -| | OpenEUICC | EasyEUICC | -|:------------------------------|:-----------------------------------------------:|:-----------------:| -| Privileged | Must be installed as system app | No | -| Internal eSIM | Supported | Unsupported | -| External (Removable) eSIM | Supported | Supported | -| USB Readers | Supported | Supported | -| Requires allowlisting by eSIM | No | Yes -- except USB | -| System Integration | Partial (carrier partner API unimplemented yet) | No | +| | OpenEUICC | EasyEUICC | +| :---------------------------- | :-----------------------------: | :-----------------: | +| Privileged | Must be installed as system app | No | +| Internal eSIM | Supported | Unsupported | +| External eSIM [^1] | Supported | Supported | +| USB Readers | Supported | Supported | +| Requires allowlisting by eSIM | No | Yes -- except USB | +| System Integration | Partial [^2] | No | +| Minimum Android Version | Android 11 or higher | Android 9 or higher | + +[^1]: Also known as "Removable eSIM" +[^2]: Carrier Partner API unimplemented yet Some side notes: 1. When privileged, OpenEUICC supports any eUICC chip that implements the SGP.22 standard, internal or external. However, there is __no guarantee__ that external (removable) eSIMs actually follow the standard. Please __DO NOT__ submit bug reports for non-functioning removable eSIMs. They are __NOT__ officially supported unless they also support / are supported by EasyEUICC, the unprivileged variant.