Application security feature

Data loss prevention

How to evaluate mobile data loss prevention: which exit routes customer data takes from your app, and how Otukan controls them on Android and iOS.

  • Android
  • iOS
  • Flutter
  • React Native
Data copied off screen is met at the app interface boundary before it reaches the appData copied off screenApp interfaceYour app
  • Every exit route named

    Screenshots, recordings, the clipboard, the keyboard and app-switcher previews are treated as separate routes, each with its own control.

  • Scoped per platform

    Android can block capture on marked screens; iOS lets apps detect recording and mask content. Otukan uses what each platform allows.

  • Users can still work

    Controls apply to the screens and fields you mark, so sharing, support and assistive tools keep working everywhere else.

Leak routes Otukan controls

Pick a route to see how Otukan detects it, how the app responds and what your team receives.

Screenshots of marked screens

  1. Detect

    On Android, capture is blocked on screens you mark; on iOS, the app is notified right after a screenshot is taken.

  2. Respond

    On Android the capture is refused or comes out blank; on iOS, your policy can warn the user, record the event or end the session.

  3. Report

    Screenshot events on marked screens are recorded with the screen and flow for your privacy team.

Recording and mirroring

  1. Detect

    On iOS, Otukan detects active screen recording and mirroring; on Android, marked screens are excluded from capture.

  2. Respond

    Sensitive content is masked for as long as recording or mirroring is active.

  3. Report

    A capture signal reaches your backend with the screen it affected.

Clipboard harvesting

  1. Detect

    Otukan limits copy actions on the fields you mark, and on iOS keeps any permitted copy on the device with an expiry time.

  2. Respond

    Card numbers, codes and account details stay out of a clipboard that other apps or synced devices can read.

  3. Report

    Refused copy attempts on marked fields are recorded for your privacy team.

Keyboard capture

  1. Detect

    On Android, Otukan flags a non-system keyboard active on a sensitive field; on iOS, the app can decline third-party keyboards.

  2. Respond

    Sensitive entry uses the system keyboard on iOS; on Android, your policy decides whether entry continues.

  3. Report

    A keyboard-risk signal travels with the next request to your backend.

App-switcher previews

  1. Detect

    Otukan sees the moment the app leaves the foreground, on Android and on iOS.

  2. Respond

    Marked screens are covered before the system takes its preview image.

  3. Report

    Masking of marked screens is part of the test record for each protected release.

Data loss controls in Otukan

Each control closes one exit route; you choose the screens and fields it applies to.

  • Screen capture protection

    Blocks capture of marked screens on Android and detects recording and mirroring on iOS, with masking on both.

  • Clipboard limits

    Restricts copying from sensitive fields; on iOS, any permitted copy stays on the device and expires.

  • Keyboard privacy

    Keeps passwords, codes and account numbers out of keyboard learning and suggestion history.

  • Background masking

    Covers marked screens when the app moves to the background, so previews reveal nothing.

  • Keylogging detection

    Flags non-system keyboards on sensitive Android fields and steers sensitive iOS entry to the system keyboard.

  • Overlay detection

    On Android, spots other apps drawing over your screens to read or trick users.

You choose the response

Set a response for each user flow. Start by observing, then tighten flow by flow as the signals prove themselves.

Observe

Signal sent to your backend

Rolling out a new policy and measuring real-world signals.

Warn

This device looks modified. Continue with care.

Conditions some genuine users create, such as developer settings.

Restrict

Payments are unavailable on this device.

Payments, stored data and account changes.

Terminate

Session closed for your security.

Clear tampering on a high-risk flow.

How it works

  1. Trace the exits

    List where customer data could leave each sensitive screen: capture, clipboard, keyboard, previews.

  2. Mark screens and fields

    Apply controls to the places that hold regulated or high-value data, not the whole app.

  3. Set responses

    Choose to block, mask, warn or log for each route and platform.

  4. Confirm with users

    Test marked flows with support, accessibility and sharing needs before tightening further.

Free for app publishers

Check your app's exposure

A passive review of your published app by an Otukan engineer. No files, no access to your systems. Findings go by email to the verified publisher.

You finish the request on the next page.

Evaluate mobile data loss prevention by tracing every route customer data can take out of your app once it is on screen, then checking which routes each platform lets you close, detect or only mask. The routes are screenshots, screen recording and mirroring, the clipboard, the keyboard and the preview images the system takes when users switch apps. Otukan controls each route on Android and iOS, including Flutter and React Native apps, on the screens and fields you mark. Android can block capture outright; iOS allows detection and masking. The strongest control of all sits on your server: data it never sends to the device cannot leak from it.

Leak routes and the flows they touch

Data loss on mobile rarely looks like a breach. A customer screenshots a statement and the image syncs to a shared album. A card number is copied and another app reads the clipboard. A keyboard learns an account number and suggests it later. Each route is ordinary behaviour that becomes a leak on the wrong screen.

Flows at risk

FlowData on screenRoute most likely to leak it
Card details and PIN revealFull card number, security codeScreenshot, clipboard
Statements and transaction historyBalances, payees, referencesScreenshot, app-switcher preview
Identity and onboardingDocument images, dates of birthScreen recording, mirroring
Health and insurance recordsDiagnoses, policy numbersScreenshot, clipboard
Sign-in and one-time codesPasswords, codesKeyboard learning, keylogging

The boundary you are defending

The boundary is your app’s interface and the system services it hands data to. Once content reaches a screenshot, a clipboard entry or a keyboard’s memory, it is outside your app and outside your control. Data loss prevention keeps the high-value content on the inside of that line.

Control fit

The app, the operating system and your backend each own part of the answer. The table shows who does what.

RouteOperating systemYour app with OtukanYour backend
ScreenshotsAndroid can exclude marked windows from capture; iOS notifies after the eventMarks screens, masks content, applies your policyKeeps a record of events on marked screens
Recording and mirroringiOS reports when capture is active; Android excludes secure windowsMasks content while capture is activeReceives the capture signal
ClipboardiOS lets apps keep a copy on the device and set it to expire; recent Android versions stop background apps reading the clipboard and let apps mark a copied value as sensitiveLimits copying from marked fieldsSends only the data the screen needs
KeyboardAndroid fields can ask the keyboard not to learn from input; iOS secure text fields use the system keyboard and skip learning, and apps can decline third-party keyboardsApplies the right flags to marked fields; flags non-system keyboards on AndroidTreats a keyboard-risk signal as account risk
App-switcher previewsCaptures an image as the app leaves the foregroundCovers marked screens firstNothing further needed

The backend’s role is easy to overlook. Masking a full card number on screen matters less when the server sends only the last digits. The strongest data loss design removes data from the device before any control has to guard it.

On iOS, privacy manifests describe which data and system features your app uses. Guidance on avoiding manifest conflicts is on preventing conflicts with iOS privacy manifests.

Evaluation

Judge a data loss prevention offer on three things: per-platform honesty, evidence on your own flows and the effect on real users.

Supported platforms

Ask for each route by platform, because the answers differ: Android lets an app block capture of a screen, while iOS lets it detect capture and mask content. Otukan states for each route whether it blocks, detects or masks on Android and on iOS, and treats Flutter and React Native screens with the same per-platform rules.

Evidence

In an authorised lab, take a screenshot, start a recording, copy a marked field and switch apps on each marked screen, and confirm the expected block, mask or signal. On a legitimate device, the same journey with no capture active should show the screen normally. After each protected release, repeat install, update, sign-in and the marked flows, with OS versions, devices, results and reviewer recorded.

User impact

Marking too much frustrates people who need to share a reference number with a partner or send support a picture of an error. Mark the screens and fields that hold regulated or high-value data, check them with the assistive settings your users rely on and widen coverage only when the evidence supports it.

For the privacy background, see better mobile privacy and privacy by design for mobile apps.

The package and memory controls that complete the picture are covered on code and data protection. For content capture in media apps, see streaming and media application security.

Common questions

  • Can an app block screenshots on iOS?

    iOS does not let an app prevent a screenshot. It tells the app afterwards, and it lets the app know when the screen is being recorded or mirrored. Otukan uses those signals to mask sensitive content during recording and to apply your policy after a screenshot. On Android, marked screens can be excluded from capture entirely.

  • Will these controls get in the way of customer support?

    Only on the screens you mark. Most support conversations involve settings, errors and navigation, which stay capturable. For marked screens, give support a way to see the same information from your back office, so customers never need to send a screenshot of their data.

  • Is mobile data loss prevention the same as a privacy programme?

    It is one part of it. Data loss prevention controls where data can leave the app on the device. Your privacy programme also decides what data the app collects, what the server sends to it and how long anything is kept. The least data to protect is the data your server never sends to the device.

  • Do these controls affect accessibility tools?

    They are designed not to. Screen readers and other assistive services read the interface differently from screen capture, and marked screens stay usable with them. We test marked flows with the assistive settings your users rely on before the protected release ships.

On the mobile engineering team?

How protection fits your build, signing and release, platform by platform.

Keep customer data inside your app

Tell us the platform, the framework and the screens or fields that hold the data you must keep in the app, such as statements, card details or health records. Please keep binaries, keys and production data out of the enquiry; we do not need them.

Or request a technical demo