Fleet licensing
Licenses are offline, Ed25519-signed files â no Screenproof servers, no activation calls. For fleets, deliver the license through the same managed-preferences profile as everything else.
Why it matters: export gating
Unlicensed installs get a 14-day full trial from first launch; after it, release builds block exports until a valid license resolves. Never capture or redaction enforcement â an unlicensed device still captures, blocks, blurs, and audits; it just can't export. Fleet deployments never see any of this: with the license in the profile, no trial state is ever created. Deploy the license with (or before) the app so users never hit the gate.
Recommended: LicenseKey in the managed-preferences profile
Put the license itself â the base64 one-liner from your purchase email (the output of licensegen sign) â in the profile:
<key>LicenseKey</key>
<string>PASTE-THE-BASE64-LICENSE-HERE</string>
- One profile, nothing else to deploy. No file drop, no scripts â the license rides in the same
.mobileconfigas your policy keys. Ready-made template:examples/license-key.mobileconfig. - Instant. The license resolves as soon as the profile lands; validated on the test tenant (Mosyle).
Alternative: LicenseFilePath
Point the app at an Ed25519-signed license file you deploy separately (e.g. via an MDM script or PKG payload):
<key>LicenseFilePath</key>
<string>/Library/Application Support/Screenproof/license</string>
Use this only if your org prefers files on disk; you take on staging the file yourself, and the export gate stays closed until the file exists at that path.
Precedence
When both keys are set, LicenseKey wins over LicenseFilePath.
What users see
On a managed device, the Settings â License tab shows the license as "Managed by your organization" â locked, not user-editable. Remove the key from the profile and the user's own license setting applies again.