Skip to content

App links and universal links

PlatformStatusWhere
iOSdonevulture-ios/Modules/App/Sources/Application/SceneDelegate+Routing.swiftvulture-ios/Packages/Utilities/Sources/Utilities/URL+DeepLink.swiftvulture-ios/Modules/App/Resources/Entitlements/Release.entitlements
applinks:vulture.aero
Androiddonevulture-android/app/src/main/AndroidManifest.xmlvulture-android/app/src/main/kotlin/be/fousa/vulture/servicesvulture-android/domain/services
Verified App Links (autoVerify).
Webdonevulture-web/app/association.rbvulture-web/app/asset_links.rb
App links and universal links on Android
  • https://vulture.aero/open/… links open in the app when it is installed:
    • /open/soaringspot/<comp> and /open/soaringspot/results/<comp>[/<class>/<day>] open a competition or a day.
    • /open/soaringspot/flight/<id> downloads a contest flight from Soaring Spot.
    • /open/charronline/igc/<year>/<file> downloads a Charron.line flight.
  • Every route waits until the app is unlocked (past the paywall when the free tier is off).
  • Without the app the link opens the web page (or the App Clip on iPhone).
  • vulture-web serves the AASA (/open/* and /auth/weglide, plus the App Clip) and assetlinks.json (release and debug fingerprints). Android claims /open/* only; /auth/weglide looks legacy since WeGlide uses an API key.
  • /open/flight?id= falls under /open/* on both, but only iOS routes it (Flight widget).
  • vulture-android/docs/app-links.md still says the release fingerprint list is empty; vulture-web already has it.
  • Neither app calls /api/open?url= (P7-D18).