Universal/App Link + Custom Scheme Test Page

This page provides ready-to-use test links for the current deep-link solution: Universal Links / App Links, Custom Scheme, and Hosting fallback / resolver.

Test school codes: dfbf581ab887767b9a068a0abf84816f and cfe1bc1117a5353788cc216012eafe8b

parents qilin https + custom scheme hosting fallback store fallback

Quick notes

Icon legend (platform-specific behavior)
  • iOS Safari (same-domain HTTPS from this page): usually does not trigger Universal Links.
  • HTTPS copied to Notes / Messages and then tapped: reliable Universal Link verification flow on iOS.
  • Android Chrome / emulator (HTTPS App Link): should trigger app when domain verification is active.
  • Custom Scheme: direct app wake-up path. If app is not installed, nothing happens.

Test page URL after deployment: /test-links.html

⚠️ Why HTTPS links may not wake up the app from this page

This page is hosted on parents-dev.sentral.com.au, and the HTTPS test links point to the same domain. iOS Safari ignores Universal Links for same-domain navigation — the link opens as a normal web page instead of launching the app.

This is an Apple platform limitation, not a bug. The same applies when:

Recommended test method: copy an HTTPS link from this page, paste it into Notes or Messages, then tap it there.

✅ Reliable ways to test app wake-up

Recommended app test scenarios

1. Open current school directly
Log in to one school first, then open any link for that same school code. Expected result: app opens the target page directly.
2. Switch to another logged-in school
Log in to both test schools. Open a link for the school that is not current. Expected result: school switch confirmation appears, then app navigates after confirmation.
3. Login continuation for target school
Keep one school not logged in, then open a link for that school. Expected result: app goes to the target-school login page first, then continues to the target destination after login.
4. Hosting fallback / resolver
Open the fallback links in a browser where the app is not installed, or where deep-link association is intentionally unavailable. Expected result: resolver or store fallback is used.

Hosting fallback scenarios

These test cases use parents as the appId. To verify other brands (qilin, teachers, etc.), simply replace /parents in the URL with the target appId.