Skip to content

Fix interceptor reinitialization and separate the demo minimum SDK - #1087

Merged
zhi1ong merged 2 commits into
developfrom
fix/device-validation
Sep 5, 2026
Merged

zhi1ong merged 2 commits into
developfrom
fix/device-validation

Conversation

@zhi1ong

@zhi1ong zhi1ong commented Sep 5, 2026

Copy link
Copy Markdown
Member

Summary

  • Keep initialized interceptors within their service instance and snapshot the ordered class registry before asynchronous initialization. A retired initializer can no longer append to a replacement service's chain after a debug destroy/re-init.
  • Wait on the service's own initialization state, preserve failure/timeout behavior, and complete an empty registry without scheduling executor work.
  • Add deterministic regression coverage for retired initialization, registry reset during initialization, and empty registration.
  • Declare API 21 for the Gson-based demo application and module-java while keeping the ARouter runtime at API 14. Update both READMEs and testing guidance; do not downgrade Gson.

Validation

  • The retired-initialization regression failed before the runtime fix and passed afterward.
  • API 21 and API 34 complete Debug suites: 19 framework and 30 application tests on each API.
  • API 21 and API 34 complete Release/R8 suites: 30 application tests on each API. Six fresh local XML reports contain 158 device-test executions with zero failures, errors or skips.
  • API 14 framework and independent minimum-AndroidX consumer validation was completed before the demo-only minimum adjustment. The runtime AAR after that adjustment is byte-identical; the full API 14 Gson demo failure is explicitly not claimed to be fixed.
  • Supplementary independent Release/R8 consumer checks on API 21 and API 34 passed the same-ID/same-version daily-to-online-to-daily replacement sequence and cold-start cache reuse, retaining application data throughout. These 12 executions are separate from the complete framework/demo suite.
  • Final packaged manifests retain runtime minSdk 14 and declare demo minSdk 21. No public routing API or dependency version changed in this patch.

Remote CI for this PR still needs to pass. Local results do not make the earlier develop Build successful. This change does not publish a release or close historical issues.

@zhi1ong
zhi1ong merged commit 84f451d into develop Sep 5, 2026
16 checks passed
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.

1 participant