New in version 2.3.1
- Battery Saver: a switch Android refuses while the phone is charging now says so, instead of "the system accepted the command and left the state unchanged"
- Mobile Data on dual-SIM phones: the state check now reads the SIM that carries data, not the first SIM
- The unlock skip for Airplane Mode and Battery Saver now says "not turned on by Privacy Flip" instead of "manually set"
Privacy Flip automatically manages your device's privacy features based on screen lock/unlock state. When you lock your device, it can disable Wi-Fi, Bluetooth, mobile data, location services, NFC, and even camera/microphone sensors. When you unlock, it intelligently restores the features you want back on.
Works with Root OR Shizuku - Choose your preferred privilege method!
Features:
• Manage your device privacy based on lock/unlock state
• Dual privilege support: Root OR Shizuku (no root required!)
• Automatic privilege detection (Sui > Root > Dhizuku > Shizuku)
• Configurable feature control (Wi-Fi, Bluetooth, Mobile Data, Location, NFC, Camera, Microphone, Airplane Mode, Battery Saver)
• Customizable timing delays (0-60 seconds granular, 2 minutes, or 5 minutes)
• Smart "only if unused/not connected" modes for WiFi, Bluetooth, Location, and Mobile Data while media plays
• App exemption system (skip privacy for specific foreground apps)
• Detects NFC being turned back on by a payment or wallet app, with opt-in auto-retry
• Optional Accessibility Service as an extra lock and unlock signal
• Advanced multi-tier Bluetooth connection detection
• Background service for persistent monitoring
• Quick Settings tile integration
Privacy Features Controlled:
• Wi-Fi - Disable/enable wireless connectivity
• Bluetooth - Control Bluetooth radio
• Mobile data - Manage cellular data connection
• Location services - Control GPS and location tracking
• NFC - Control NFC sensor
• Camera - Disable/enable camera sensor privacy (Android 12+)
• Microphone - Disable/enable microphone sensor privacy (Android 12+)
• Airplane Mode - Enable on lock (opt-in, disables all radios at once)
• Battery Saver - Enable on lock (opt-in, reduces background activity)
Note: Camera and microphone ignore custom delays and trigger immediately, due to Android limitations. Microphone can skip this during a real call if enabled in settings; camera cannot detect active use, so it always triggers immediately
Requirements:
• Android 7.0+ (API level 24)
• Android 12+ (API level 31) for camera/microphone features
Choose your privilege method:
Option 1: Shizuku (No root required!)
• Shizuku app installed and running
• ADB privileges via USB or wireless debugging
• Perfect for non-rooted devices
Option 2: Root Access (Recommended for rooted devices)
• Root access via Magisk, SuperSU, or similar
• Best performance with UID 0 privileges
Option 3: Dhizuku (Device Owner method, 5 of 9 features)
• Device set as Device Owner
• No root required, no ADB after setup
• Persistent privileges across reboots
• Works for, each needing its own Android version: Camera and Microphone (Android 12+),
Bluetooth (Android 9+), Location (Android 11+), NFC (Android 15+). Below Android 9 a Dhizuku
setup can switch nothing at all.
• Cannot do WiFi, Mobile Data, Airplane Mode or Battery Saver - Android gives a Device Owner no
way to switch those. Use Root or Shizuku for them.
Option 4: Sui (Best of both worlds)
• Rooted device with Magisk
• Sui Magisk module installed
• Best user experience - automatic startup, no prompts
Privacy & Security:
• Zero telemetry - Nothing is sent to us or any third party
• Settings stay on your device, and in your own Android backup if you have one turned on - never sent anywhere else
• No network permissions - App cannot access internet
• Open source - https://github.com/dorumrr/privacyFlip
Donate
Versions
Although APK downloads are available below to give you the choice, you should be aware that by installing that way you will not receive update notifications and it's a less secure way to download. We recommend that you install the F-Droid client and use that.
Download F-Droid
-
This version requires Android 7.0 or newer.
It is built and signed by the original developer, and guaranteed to correspond to this source tarball.
Permissions
-
view network connections
Allows the app to view information about network connections such as which networks exist and are connected.
-
android.permission.BIND_QUICK_SETTINGS_TILE
-
pair with Bluetooth devices
Allows the app to view the configuration of the Bluetooth on the phone, and to make and accept connections with paired devices.
-
connect to paired Bluetooth devices
Allows the app to connect to paired Bluetooth devices
-
run foreground service
Allows the app to make use of foreground services.
-
run foreground service with the type "specialUse"
Allows the app to make use of foreground services with the type "specialUse"
-
android.permission.PACKAGE_USAGE_STATS
-
show notifications
Allows the app to show notifications
-
query all packages
Allows an app to see all installed packages.
-
run at startup
Allows the app to have itself started as soon as the system has finished booting. This can make it take longer to start the phone and allow the app to slow down the overall phone by always running.
-
ask to ignore battery optimizations
Allows an app to ask for permission to ignore battery optimizations for that app.
-
control vibration
Allows the app to control the vibrator.
-
prevent phone from sleeping
Allows the app to prevent the phone from going to sleep.
-
com.rosan.dhizuku.permission.ACCESS_DHIZUKU_SERVICE
-
com.rosan.dhizuku.permission.API
-
io.github.dorumrr.privacyflip.DYNAMIC_RECEIVER_NOT_EXPORTED_PERMISSION
-
moe.shizuku.manager.permission.API_V23
Download APK
2 MiB
PGP Signature
|
Build Log
New in version 2.3.0
- New opt-in "Keep off while locked": if something the lock switched is changed back before you unlock, for example from Quick Settings, the lock actions run again
- Shizuku and Sui on Android 15+: NFC turns off and on again on phones that refuse the NFC service's own command
- "Side Button Support" is now "Lock Screen Detection", and no longer promises camera and microphone with an instant power-button lock
- The debug log no longer says "Commands attempted: null"
-
This version requires Android 7.0 or newer.
It is built and signed by the original developer, and guaranteed to correspond to this source tarball.
Permissions
-
view network connections
Allows the app to view information about network connections such as which networks exist and are connected.
-
android.permission.BIND_QUICK_SETTINGS_TILE
-
pair with Bluetooth devices
Allows the app to view the configuration of the Bluetooth on the phone, and to make and accept connections with paired devices.
-
connect to paired Bluetooth devices
Allows the app to connect to paired Bluetooth devices
-
run foreground service
Allows the app to make use of foreground services.
-
run foreground service with the type "specialUse"
Allows the app to make use of foreground services with the type "specialUse"
-
android.permission.PACKAGE_USAGE_STATS
-
show notifications
Allows the app to show notifications
-
query all packages
Allows an app to see all installed packages.
-
run at startup
Allows the app to have itself started as soon as the system has finished booting. This can make it take longer to start the phone and allow the app to slow down the overall phone by always running.
-
ask to ignore battery optimizations
Allows an app to ask for permission to ignore battery optimizations for that app.
-
control vibration
Allows the app to control the vibrator.
-
prevent phone from sleeping
Allows the app to prevent the phone from going to sleep.
-
com.rosan.dhizuku.permission.ACCESS_DHIZUKU_SERVICE
-
com.rosan.dhizuku.permission.API
-
io.github.dorumrr.privacyflip.DYNAMIC_RECEIVER_NOT_EXPORTED_PERMISSION
-
moe.shizuku.manager.permission.API_V23
Download APK
2 MiB
PGP Signature
|
Build Log
New in version 2.2.3
- Bluetooth "Only if not connected" now also counts LE Audio earbuds and speakers, so a lock no longer turns Bluetooth off while they play
-
This version requires Android 7.0 or newer.
It is built and signed by the original developer, and guaranteed to correspond to this source tarball.
Permissions
-
view network connections
Allows the app to view information about network connections such as which networks exist and are connected.
-
android.permission.BIND_QUICK_SETTINGS_TILE
-
pair with Bluetooth devices
Allows the app to view the configuration of the Bluetooth on the phone, and to make and accept connections with paired devices.
-
connect to paired Bluetooth devices
Allows the app to connect to paired Bluetooth devices
-
run foreground service
Allows the app to make use of foreground services.
-
run foreground service with the type "specialUse"
Allows the app to make use of foreground services with the type "specialUse"
-
android.permission.PACKAGE_USAGE_STATS
-
show notifications
Allows the app to show notifications
-
query all packages
Allows an app to see all installed packages.
-
run at startup
Allows the app to have itself started as soon as the system has finished booting. This can make it take longer to start the phone and allow the app to slow down the overall phone by always running.
-
ask to ignore battery optimizations
Allows an app to ask for permission to ignore battery optimizations for that app.
-
control vibration
Allows the app to control the vibrator.
-
prevent phone from sleeping
Allows the app to prevent the phone from going to sleep.
-
com.rosan.dhizuku.permission.ACCESS_DHIZUKU_SERVICE
-
com.rosan.dhizuku.permission.API
-
io.github.dorumrr.privacyflip.DYNAMIC_RECEIVER_NOT_EXPORTED_PERMISSION
-
moe.shizuku.manager.permission.API_V23
Download APK
2 MiB
PGP Signature
|
Build Log