PadBench Privacy Policy
Last updated: October 17, 2026 (version 1.0, revision 2)
PadBench (package app.web.padbench) is an offline toolkit to test, calibrate and use a game controller on Android phones and tablets. Everything happens on your device. This policy explains what the app does with your information. In short: we don't collect it.
What we collect
Nothing. PadBench has no account, no server, no analytics, no advertising SDK and no crash reporting. The app has no internet permission, so Android does not let it send anything anywhere. We, the developers, never receive your data. Nothing is shared or sold.
What stays on your device
What you set up is stored only in the app's private storage on your device:
- the controllers you connect: their name and the identifier Android gives them (and, on Android 4.4 and newer, the
vendor and product numbers the controller reports), first and last seen dates;
- your calibration settings, button fixes and named profiles;
- couch-mode bindings and the apps you exclude from couch mode;
- touch-mapping layouts: the controls you placed (positions as fractions of the screen), their buttons, and the app you
chose for a layout, if any;
- controller reports, health-test results, polling measurements and the connection log (when each controller
connected or disconnected) that you create or that the tester keeps for you; CSV files are created only when you export them;
- the dates on which you agreed to the accessibility disclosure and read the Fair-play notice;
- your settings, and daily local snapshots (the last 7) inside the app's private storage.
Controller presses are processed in memory and never logged or stored. Only the bindings and settings you save are kept. Settings › Privacy & data shows what is stored and lets you delete it.
Accessibility service
Couch mode, pointer mode and gesture-based touch mapping use Android's Accessibility service. PadBench asks for your consent on its own screen before it sends you to Android's settings, and the service stays off until you turn it on. When it is on, it is used only to:
- read controller button presses (keyboard keys pass through untouched) while one of these modes is on;
- see which app is in front, to pause couch mode in apps you excluded and to load the layout you chose for that app;
- find on-screen buttons in normal app screens, so the controller can move a focus ring and select them (couch and
pointer mode);
- perform the taps and swipes you set up (pointer clicks and your touch layouts), and the system actions you bound
(Back, Home, Recents, notifications and similar).
It does not collect, store or send personal data. It does not read your messages, passwords or the text on your screen, it never takes screenshots for itself, and it does not act on its own: every action follows a press you made. The service is idle when no mode is on. You can turn it off at any time in Android's Settings › Accessibility, or from PadBench's Settings › Privacy & data.
PC helper (optional)
On any Android version you can start an optional helper from your own computer with an `adb` command that PadBench shows you, together with a fresh one-time pairing code. The helper is code inside the PadBench app itself, run by Android's shell user; nothing is downloaded.
- It talks only to PadBench, through a local, on-device channel that only PadBench can use: an Android binder
handed over through a system-protected channel (primary), or a Unix socket inside the phone on Android 4.3–7.1 (fallback). It accepts only the PadBench app (checked by the system), opens no network port and cannot be reached from another device.
- It accepts a small fixed set of commands: your layout, your controller presses and stick positions, a tap for pointer
mode, status and stop. It cannot run other commands, read files or reach the network.
- To read sticks while another app is in front, it reads the controller's input device, and nothing else. It never logs
key data.
- It writes only a small working folder (`/data/local/tmp/padbench/`) and stops when you tap Stop, after 15 minutes
without PadBench, when the app is updated or removed, and when the phone restarts. It never starts by itself.
Installed apps
When you choose an app for a layout or exclude an app from couch mode, PadBench lists the apps on your device that have a launcher icon, so you can pick one. The list is read on the device only for that picker. It is not stored, except the apps you choose, and it is never sent anywhere. PadBench does not request the "query all packages" permission.
Exports and backups
Nothing leaves the app unless you create a file yourself:
- Profiles (.padbench files): created only when you tap Export or Share, and saved to the location or app you choose.
- Encrypted backup: "Back up now" writes a backup file to a location you choose. With a passphrase of your own, the
file is encrypted (AES-GCM); without the passphrase it cannot be restored.
- Controller reports (text, CSV or PDF): created only when you tap Share or Save. They contain the controller's
name, axes and test results, and no personal data.
- On Android 4.3, which has no system file picker, files are saved to the Download folder.
- Once a file is written, it is under your control. If another app (for example a cloud drive) syncs that location,
that app's own policy applies.
- Import: a file you pick is read only to bring its profiles or layouts into the app, after it is checked.
Android device backup
Android's own device backup of PadBench's data is off by default. It is included only if you turn on "Android backup" in Settings › Privacy & data; Google then handles that backup under its own policy.
Permissions
- Draw over other apps (SYSTEM_ALERT_WINDOW): the status chip, the layout editor, the focus ring and the pointer
cursor over other apps when the accessibility service is not providing the overlay (for example with the PC helper only). Asked only when you use one of these features. Below Android 6 Android grants it at install.
- Vibration (VIBRATE): the rumble test when a controller has no vibrator of its own, and short haptic feedback.
- Advanced Protection state (QUERY_ADVANCED_PROTECTION_MODE, Android 16+): reads only whether Android's Advanced
Protection is on, so PadBench can explain why accessibility features are unavailable and offer helper-only mode.
- Storage (WRITE_EXTERNAL_STORAGE, Android 4.3 only): saving exports and backups to the Download folder.
- Accessibility service (BIND_ACCESSIBILITY_SERVICE) and Quick Settings tile (BIND_QUICK_SETTINGS_TILE, Android
7+): these let Android connect to PadBench's own service and tile; they give PadBench no extra access.
- Bluetooth pairing: PadBench only opens Android's own Bluetooth settings for you; it requests no Bluetooth
and no location permission.
- Motion sensors of a controller (Android 12+) are read through the controller's own input device, only while the
sensor test is open; no phone sensor permission is used.
- Not requested: internet, network state, location, camera, microphone, contacts, calendar, phone, SMS, Bluetooth,
storage reading, photos and media, "query all packages", exact alarms and foreground services.
Deleting your data
Settings › Privacy & data › Delete everything removes all controllers, profiles, layouts, bindings, reports, consents and settings from the app permanently. Uninstalling the app also removes them. Files you exported yourself stay where you saved them until you delete them.
Purchases
PadBench is a paid download from Google Play, handled entirely by Google Play under the Google Privacy Policy. There are no in-app purchases, subscriptions or ads, and the app contains no payment code.
Fair play
Some online games forbid third-party input tools, remappers or macros in their terms. Using them may get your account restricted. Check each game's rules. PadBench only turns your own presses into touches. It does not aim, automate, or hide itself.
Children
PadBench is meant for teenagers and adults (13+). It is not directed to children and collects no data from anyone.
Changes and contact
If this policy changes, the new version will be published at the same address with a new date. Questions: fighttech.vn@gmail.com