Thanks to visit codestin.com
Credit goes to github.com

Skip to content

core: route RCS and carrier auth off DummyService#3294

Open
juzigu40-ui wants to merge 24 commits intomicrog:masterfrom
juzigu40-ui:codex/microg-2994-rcs-shim
Open

core: route RCS and carrier auth off DummyService#3294
juzigu40-ui wants to merge 24 commits intomicrog:masterfrom
juzigu40-ui:codex/microg-2994-rcs-shim

Conversation

@juzigu40-ui
Copy link

@juzigu40-ui juzigu40-ui commented Feb 27, 2026

Summary

This patch removes com.google.android.gms.rcs.START and com.google.android.gms.carrierauth.service.START from DummyService and routes them to dedicated services.

Why

For this issue, the current DummyService path always returns API_DISABLED, which blocks the RCS path immediately and gives no useful runtime signal for further implementation.

What changed

  • Added org.microg.gms.rcs.RcsService and org.microg.gms.rcs.CarrierAuthService.
  • Added a small binder shim that:
    • returns SUCCESS at service bind time,
    • records incoming transaction metadata (caller, code, flags, interface token),
    • can dump recent traces through binder dump transaction.
  • Updated AndroidManifest.xml:
    • registered both dedicated services,
    • removed the two corresponding actions from DummyService.

Scope

This is a focused infrastructure step. It does not claim full end-to-end RCS messaging support yet.

Verification steps

  1. Install patched build.
  2. Open Google Messages and attempt to enable RCS.
  3. Capture logs:
    • adb logcat | grep -E "RcsApiService|CarrierAuthService"
  4. Confirm that requests are routed to dedicated services instead of DummyService API_DISABLED.

Rationale for this split

  • Keeps diff auditable and small.
  • Avoids hardcoded carrier/Jibe endpoints.
  • Produces concrete runtime traces required for a real protocol implementation in follow-up patches.

@mar-v-in
Copy link
Member

mar-v-in commented Mar 2, 2026

I wonder the following:

  1. Did you run microG on a microG-enabled ROM on a physical phone with SIM card and tried to use RCS with Google Messages app before attempting to solve this issue? If so, what device, ROM and Android version did you use?
  2. Did you run microG with this patchset applied on the same environment as in 1 to test that it passes the verification steps you outlined yourself?

@juzigu40-ui
Copy link
Author

juzigu40-ui commented Mar 2, 2026

我想知道以下问题:

  1. 在尝试解决此问题之前,您是否在装有 SIM 卡的实体手机上,使用支持 microG 的 ROM 运行了 microG,并尝试通过 Google Messages 应用使用 RCS?如果是,您使用的是什么设备、ROM 和 Android 版本?
  2. 您是否在与步骤 1 相同的环境下运行了应用了此补丁集的 microG,以测试它是否通过了您自己概述的验证步骤?

Thanks for the clear questions. Direct answers first:
No, I have not yet validated this on a physical SIM-equipped device running a microG-capable custom ROM.
this patchset has not yet been end-to-end validated in that exact physical carrier environment.
The current scope of this PR is Phase 1: protocol-layer isolation and deterministic binder-contract analysis.
Phase 2 is now in progress: physical-device validation with SIM and carrier-backed conditions.
To keep this transparent and reproducible, I have added a concrete Phase 2 validation matrix and a structured reporting template to this branch under docs/juzi/.
I will update this PR with structured carrier-backed logs and results as soon as field telemetry is available. Please keep this PR active as the implementation hub while Phase 2 validation is running.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants