Download link
app.lacroo.ai/download is the one link to send anyone who needs the Lacroo Pro app. Put it in a text, an email, a toolbox talk slide or a sign.
What it does
| Opened on | What happens |
|---|---|
| iPhone or iPad | Opens the App Store listing |
| Android | Opens the Google Play listing |
| Computer | Shows a QR code to scan with a phone, plus both store buttons |
The page shows while the store opens. If the store doesn’t open (some in-app browsers block it), the worker taps the button instead.
A link preview in Messages, WhatsApp, Slack or email shows the Lacroo Pro card, not a store page.
On iPhone, Safari also shows a banner at the top. It reads Open when the app is already installed.
Where it is used
- Printed download QR — QR Manager → Download the App. Older prints encode
/get-app, which still works and forwards here. - Worker invite email — the “Get it for iPhone or Android” link.
- Sign-in page — the Field worker? card.
Tracking a campaign
Add utm_ parameters to see which link drove Android installs:
https://app.lacroo.ai/download?utm_source=email&utm_campaign=inductionAndroid installs from that link show the campaign in the Play Console acquisition reports. The App Store does not receive it.
Only utm_source, utm_medium, utm_campaign, utm_term and utm_content are passed on; anything else is dropped. A QR shown on a computer keeps the same parameters.
For developers
- Store URLs live in exactly two modules:
apps/web/src/lib/app-stores.tsandbackend/pkg/appstores. Guard tests fail on a store URL anywhere else in the web, mobile or Go source. - Anything that cannot import those modules — an email, a printed QR, a message — links to
/download. - The Apple id and Play package come from
apps/mobile/eas.jsonandapps/mobile/app.json. Change those first, then both modules. /downloadis public. It is deliberately not claimed by the iOS universal-link paths or the Android intent filters, so the browser always handles it.