XPrivacyLua repo

Hook definitions are provided "as is". Using hook definitions is entirely at your own risk.

THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

See here about how to define hooks.

Collection Group Name Author Version Updated (UTC) Downloads
FifInstall Play GamesGMS.NoPlayGamesFif_12020-05-28 02:13:3688
This hook has nothing to do with privacy. It blocks the "Please install/upgrade/login to Google Play Games" dialog shown by some games. This hook reimplements the "No Play Games" Xposed module at http://repo.xposed.info/module/com.fifsource.android.noplaygames / https://forum.xda-developers.com/showthread.php?t=3332763 Only one of the Xposed module or XPL hook must be enabled at the same time. EdXposed users: Google Play Services (aka. GMS) must be whitelisted (or not blacklisted) in EdXposed Manager. This means that your device will not pass SafetyNet. Instructions: 1. Download this hook. 2. Make sure that the Fif collection is enabled in XPL Pro. 3. In XPL, navigate to the Google Play Services app (you may have to change the filter to "Show all apps" first), and expand the restriction categories. 4.a. Check the "Install Play Games" category. 4.b. Or, alternately, enable GMS.NoPlayGames hook for "Google Play Services" in XPL Pro. Changelog: v1 - 2020-05-27 First public release.
FifUtilitiesGMS.PlayGamesUpgradeChimeraActivityFif_22020-05-28 02:13:041414
*** The hook stopped working as of GMS 20.15 update. *** *** Use the GMS.NoPlayGames hook instead *** This hook has nothing to do with privacy. It blocks the "Please install/upgrade/login to Google Play Games" dialog shown by some games. This hook reimplements the "No Play Games" Xposed module at http://repo.xposed.info/module/com.fifsource.android.noplaygames / https://forum.xda-developers.com/showthread.php?t=3332763 Only one of the Xposed module or XPL hook must be enabled at the same time. Instructions: 1. Download this hook. 2. Make sure that the Fif collection is enabled in XPL Pro. 3. In XPL, navigate to the Google Play Services app (you may have to change the filter to "Show all apps" first), and expand the restriction categories. 4.a. Check the "Utility" category. 4.b. Or, alternately, enable GMS.PlayGamesUpgradeChimeraActivity hook for "Google Play Services" in XPL Pro. Changelog: v2a - 2020-05-27 Add reference to GMS.NoPlayGames in doc string. v2 - 2020-05-09 Add max APK. Document the hook stopped working. v1 - 2018-08-29 First public release.
FifGet.ApplicationsPackageManager.getPackageInfo/packageNameFif_32020-05-25 19:09:202417
This hook complements the built-in PackageManager XPrivacyLua hooks. ★★★ Please make sure all hooks in the set are the same version! ★★★ ★★★ Please read the changelog below when upgrading from version 1! ★★★ Instructions: 1. Download these hooks: - PackageManager.getApplicationEnabledSetting (all Android versions) - PackageManager.getApplicationInfo (Marshmallow 6.0 and earlier) - PackageManager.getApplicationInfoAsUser (Nougat 7.0 and later) - PackageManager.getPackageInfo/packageName (Marshmallow 6.0 and earlier) - PackageManager.getPackageInfoAsUser (Nougat 7.0 and later) - PackageManager.getPackageInfo/versionedPackage (Oreo 8.0 and later) - PackageManager.getPackageGids (Marshmallow 6.0 and earlier) - PackageManager.getPackageGids/flags (Nougat 7.0 and later) - PackageManager.getPackageUid (Marshmallow 6.0 and earlier - PackageManager.getPackageUidAsUser (Nougat 7.0 and later) Note that it won't hurt and won't cause unnecessary overhead to download hooks for the wrong Android version, they'll be greyed out in "Manage hook defininitions". 2. Make sure that the Fif collection is enabled in XPL Pro. 3. For any app for which you want the hooks to apply: 3.a. Toggle the "Get Applications" category until it's fully enabled (red) in XPL. 3.b. Or, alternately, enable in XPL Pro all the hooks listed above that apply to your Android version. Changelog: v3 - 2020-05-25 Fix exception in PackageManager.getApplicationEnabledSetting. v2 - 2018-10-10 Fix exception in getPackageUid/Gids hooks. Added getApplicationEnabledSetting, getApplicationInfo, getApplicationInfoAsUser, getPackageInfoAsUser and getPackageUidAsUser hooks. Made getPackageInfo/packageName, getPackageGids and getPackageUid available on MM and earlier only. Note hook users: if you are running Nougat 7.0 and later and had assigments for getPackageInfo/packageName, getPackageGids or getPackageUid you will have to reassign them respectively to getPackageInfoAsUser, getPackageGids/flags and getPackageUidAsUser when upgrading to version 2. v1 - 2018-10-04 First public release.
FifGet.ApplicationsPackageManager.getPackageUidAsUserFif_32020-05-25 19:09:141866
Please refer to the PackageManager.getPackageInfo/packageName hook documentation.
FifGet.ApplicationsPackageManager.getPackageUidFif_32020-05-25 19:09:121745
Please refer to the PackageManager.getPackageInfo/packageName hook documentation.
FifGet.ApplicationsPackageManager.getPackageInfoAsUserFif_32020-05-25 19:09:012049
Please refer to the PackageManager.getPackageInfo/packageName hook documentation.
FifGet.ApplicationsPackageManager.getPackageInfo/versionedPackageFif_32020-05-25 19:08:361857
Please refer to the PackageManager.getPackageInfo/packageName hook documentation.
FifGet.ApplicationsPackageManager.getPackageGids/flagsFif_32020-05-25 19:08:301862
Please refer to the PackageManager.getPackageInfo/packageName hook documentation.
FifGet.ApplicationsPackageManager.getPackageGidsFif_32020-05-25 19:08:281721
Please refer to the PackageManager.getPackageInfo/packageName hook documentation.
FifGet.ApplicationsPackageManager.getApplicationInfoAsUserFif_32020-05-25 19:08:262042
Please refer to the PackageManager.getPackageInfo/packageName hook documentation.
FifGet.ApplicationsPackageManager.getApplicationInfoFif_32020-05-25 19:08:201852
Please refer to the PackageManager.getPackageInfo/packageName hook documentation.
FifGet.ApplicationsPackageManager.getApplicationEnabledSettingFif_32020-05-25 19:08:151895
Please refer to the PackageManager.getPackageInfo/packageName hook documentation.
FifUse sliderThreeKeyHw.isSupportSocThreeKeyFif_ on XDA12020-05-25 01:00:5756
For OnePlus 5 running OOS 9.0 only (may work on other OnePlus devices and OOS versions). This hook has nothing to do with privacy. It prevents the three-state alert slider from having any effect on the ringer/vibration. You can then remap it for your own purposes by reading as root /sys/devices/virtual/switch/tri-state-key/state with Tasker, Automate or other device automation tools. Tested with OOS 9.0.13 on OP5. Instructions: 1. Download this hook. 2. Make sure that the Fif collection is enabled in XPL Pro. 3. In XPL, navigate to the "Android System" app (you may have to change the filter to "Show all apps" first), and expand the restriction categories. 4.a. Check the "Use slider" category. 4.b. Or, alternately, enable ThreeKeyHw.isSupportSocThreeKey hook for "Android System" in XPL Pro. Changelog: v1 - 2020-05-23 First public release.
FifPublic.StorageBlockGuardOs.openM66B, Fif_112020-02-21 05:29:523980
This is an expanded version of the hook by the same name published by M66B. It should be used instead of the M66B hook as it is less prone to crash apps. Blocks file access to any but a whitelist of acceptable directories. This should prevent apps from accessing any files outside of app-specific directories. The whitelist consists of (some paths are computed dynamically and will change from a device or Android version to an other): /data/data/<app-id> /data/app/<app-id>-* /data/app/com.android.chrome-* /data/app/com.android.webview-* /data/app/com.google.android.gms-* /data/app/com.google.android.webview-* /data/app/com.google.ar.core-* /data/media/<user-id>/Android/data/<app-id> /data/media/<user-id>/Android/media/<app-id> /data/media/<user-id>/Android/obb/<app-id> /data/misc/ /data/user/<user-id>/<app-id> /data/user_de/<user-id>/<app-id> /data/user_de/<user-id>/com.google.android.gms /dev/ /etc/textclassifier/ /etc/timezone /proc/<pid>/ /proc/self/ /proc/vmstat /proc/zoneinfo /system/ /vendor/ Changelog: v11 - 2020-02-20 Allow /etc/textclassifier/ for AI models (Pie). v10 - 2019-07-20 - Allow /data/app/com.google.ar.core-* for ARCore integration in other apps (eg. Maps). v9 - 2019-07-04 - Allow access to /data/app/com.android.webview-* for Bromite.
FifPrevent downgradesPackageManagerService.checkDowngradeFif_12020-02-19 01:21:48482
This hook has nothing to do with privacy. When enabled, it allows the Android Package Manager to downgrade any app (possibly with loss of app data). By default, downgrading is not allowed. Instructions: 1. Download this hook. 2. Make sure that the Fif collection is enabled in XPL Pro. 3. In XPL, navigate to the "Android System" app (you may have to change the filter to "Show all apps" first), and expand the restriction categories. 4.a. Check the "Prevent downgrades" category. 4.b. Or, alternately, enable PackageManagerService.checkDowngrade hook for "Android System" in XPL Pro. Changelog: v1 - 2020-02-18 First public release.
FifUse.ShellProcessBuilder.startM66B, Fif_12020-02-18 17:01:19626
The ProcessBuilder.start and Runtime.exec* hooks allow you to filter which commands Android apps are allowed to run. By default, once installed, the hooks will not allow apps to run any commands (except for the Maps-related getprop command described below). The hooks will prevent apps from running or detecting su unless the su command is whitelisted. You can whitelist some commands by changing the "Allowed commands (Java regex)" custom value. It is recommended to use these hooks from the Fif collection without also using the original hooks with the exact same names from M66B which are in the Privacy collection. The Fif hooks supersedes the M66B ones and the M66B hooks should be removed if you have downloaded them from the repo before. Instructions: 1. Download these 7 hooks in the Fif collection: - ProcessBuilder.start - Runtime.exec/array - Runtime.exec/array/env - Runtime.exec/array/env/file - Runtime.exec/cmd - Runtime.exec/cmd/env - Runtime.exec/cmd/env/file 2. Make sure that the Fif collection is enabled in XPL Pro. 3.a. In XPL, enable the (new) "Use.Shell" collection for apps for which you want to filter shell commands. 3.b. Or, in XPL Pro, enable the seven hooks listed above. 4. If needed, configure a regular expression matching commands to be allowed in XPL Pro, Custom values, "Allowed commands (Java regex)". By default, and unless you configure a regular expression (either globally or on a per-app basis), all commands will be denied and logged to the XPL Pro log. The regular expression will always automatically include commands of the form "getprop debug.mapview..." to not break Maps. The regular expression language is described at https://developer.android.com/reference/java/util/regex/Pattern.html For example "(/system/bin/)getprop oem\.somestring\..*" will allow all commands starting with "/system/bin/getprop oem.sometring." or with "getprop oem.somestring.". To whitelist the su command for root apps, you can use the following regular expression: "su(\s.*)?". Changelog: v1a - 2020-02-18 Documentation fixes (no code changes). v1 - 2020-02-17 First public release.
FifUse.ShellRuntime.exec/arrayM66B, Fif_12020-02-18 06:53:02517
Please refer to the ProcessBuilder.start hook documentation.
FifUse.ShellRuntime.exec/array/envM66B, Fif_12020-02-18 06:53:00508
Please refer to the ProcessBuilder.start hook documentation.
FifUse.ShellRuntime.exec/array/env/fileM66B, Fif_12020-02-18 06:52:58511
Please refer to the ProcessBuilder.start hook documentation.
FifUse.ShellRuntime.exec/cmdM66B, Fif_12020-02-18 06:52:55512
Please refer to the ProcessBuilder.start hook documentation.
FifUse.ShellRuntime.exec/cmd/envM66B, Fif_12020-02-18 06:52:53515
Please refer to the ProcessBuilder.start hook documentation.
FifUse.ShellRuntime.exec/cmd/env/fileM66B, Fif_12020-02-18 06:52:49502
Please refer to the ProcessBuilder.start hook documentation.
FifVibrate when pluggedVibratorService.startVibrationLockedFif_22020-01-04 06:55:161132
For OnePlus devices only. This hook has nothing to do with privacy. It blocks the short double vibration that occurs whenever a OnePlus phone is plugged in. This vibration cannot be disabled by any setting. Tested with OOS 4.5.15 on OP5, OOS 9.5.13 on OP7Pro. Instructions: 1. Download this hook. 2. Make sure that the Fif collection is enabled in XPL Pro. 3. In XPL, navigate to the "Android System" app (you may have to change the filter to "Show all apps" first), and expand the restriction categories. 4.a. Check the "Vibrate when plugged" category. 4.b. Or, alternately, enable VibratorService.startVibrationLocked hook for "Android System" in XPL Pro. Changelog: v2 - 2020-01-03 Changed the group to "Vibrate when plugged" (no action required when upgrading the hook from version 1). Now works on all Android versions where XPrivacyLua works (v1 was broken on Oreo and later). v1 - 2018-09-06 First public release.
FifGroup notificationsNotification.GroupHelper.onNotificationPostedFif_42019-12-20 22:44:11386
This hook has nothing to do with privacy. It prevents notifications from being grouped by Android Oreo and later for a set of user-configrable apps. Look into the Notification.Ranker.onNotification* hooks for the same functionality for Marshmallow and Nougat. Instructions: 1. Download both hooks: - Notification.GroupHelper.onNotificationPosted - Notification.GroupHelper.onNotificationRemoved 2. Make sure that the Fif collection is enabled in XPL Pro. 3. In XPL, navigate to the "Android System" (android) app (you may have to change the filter to "Show all apps" first), and expand the restriction categories. 4.a. Check the "Group notifications" category. 4.b. Or, alternately, enable both Notification.GroupHelper.onNotificationPosted and Notification.GroupHelper.onNotificationRemoved hooks for "Android System" (android) in XPL Pro. 5. Configure a list of apps whose notifications should not be grouped with XPrivacyLua Pro, under "Custom Values", "Ungrouped notification package names". List items are whitespace separated, and must match exactly, eg. "com.android.chrome". Notes: It is recommended not to force stop the system app, but reboot between changes to the hook or its configuration/settings. Changelog: v4 - 2019-12-17 First public release.
FifGroup notificationsNotification.GroupHelper.onNotificationRemovedFif_42019-12-20 22:44:09361
Refer to the Notification.GroupHelper.onNotificationPosted hook for documentation.
FifGroup notificationsNotification.Ranker.onNotificationPostedFif_42019-12-20 22:43:541470
This hook has nothing to do with privacy. It prevents notifications from being grouped by Android Marshmallow or Nougat for a set of user-configrable apps. Look into the Notification.GroupHelper.onNotification* hooks for the same functionality for Oreo and later. Instructions: 1. Download both hooks: - Notification.Ranker.onNotificationPosted - Notification.Ranker.onNotificationRemoved 2. Make sure that the Fif collection is enabled in XPL Pro. 3. In XPL, navigate to the "Android Services Library" (com.google.android.ext.services) app (you may have to change the filter to "Show all apps" first), and expand the restriction categories. 4.a. Check the "Group notifications" category. 4.b. Or, alternately, enable both Notification.Ranker.onNotificationPosted and Notification.Ranker.onNotificationRemoved hooks for "Android Services Library" (com.google.android.ext.services) in XPL Pro. 5. Configure a list of apps whose notifications should not be grouped with XPrivacyLua Pro, under "Custom Values", "Ungrouped notification package names". List items are whitespace separated, and must match exactly, eg. "com.android.chrome". Notes: It is recommended not to force stop the system app, but reboot between changes to the hook or its configuration/settings. Changelog: v4 - 2019-12-17 Add pointer to Notification.GroupHelper.onNotification* hooks. Changed group name to "Group notifications" (no action needed when upgrading). v3 - 2018-08-29 Change Max. SDK to 25, the hooks do not work on Oreo. Expanded documentation.
FifGroup notificationsNotification.Ranker.onNotificationRemovedFif_42019-12-20 22:43:541481
Refer to the Notification.Ranker.onNotificationPosted hook for documentation.
PrivacyUse.TrackingTelephonyManager/getSimCountryIsoM66B,gently12019-11-25 00:04:13868
fake country iso name such as jp,hk,us,uk.....etc
PrivacyUse.TrackingTelephonyManager/getNetworkCountryIsoM66B,gently12019-11-25 00:03:43824
fake country iso name such as jp,hk,us,uk.....etc
PrivacyUse.TrackingSubscriptionInfo.getCountryIsoM66B,gently12019-11-25 00:03:13782
fake country iso name such as jp,hk,us,uk.....etc
PrivacyUse.TrackingTelephonyManager/getSimOperatorNameM66B,gently12019-11-22 03:02:39825
ISP name fake
PrivacyUse.TrackingTelephonyManager/getNetworkOperatorNameM66B,gently12019-11-22 03:02:02819
ISP name fake
PrivacyRead.NetworkWifiInfo.getSSIDM66B,gently12019-11-22 03:00:53844
change WiFi SSID name
FifRead batteryIntent.createFromParcel/batteryFif12019-11-17 06:35:401670
These hooks hide your current battery level and status by: - Reporting that the battery is not plugged, discharging, at 95%, 4200mV, 150Wh, 25°C, in good health, and with a charge count of 0. - Converting all POWER_CONNECTED events into POWER_DISCONNECTED. - Converting all BATTERY_LOW events into BATTERY_OK. Obviously, don't use on battery monitoring apps, but there's no reason to share battery levels with anyone else. Instructions: 1. Download these hooks: - BatteryManager.getIntProperty - BatteryManager.getLongProperty - BatteryManager.isCharging - Intent.createFromParcel/battery 2. Make sure that the Fif collection is enabled in XPL Pro. 3.a. In XPL, enable the (new) "Use battery" collection for apps for which you want to fake the battery status. 3.b. Or, in XPL Pro, enable the four hooks listed above. Changelog: v1 - 2018-10-09 First public release.
FifRead batteryBatteryManager.isChargingFif12019-11-17 06:35:331552
Please refer to the Intent.createFromParcel/battery hook documentation.
FifRead batteryBatteryManager.getLongPropertyFif12019-11-17 06:35:311539
Please refer to the Intent.createFromParcel/battery hook documentation.
FifRead batteryBatteryManager.getIntPropertyFif12019-11-17 06:35:291526
Please refer to the Intent.createFromParcel/battery hook documentation.
FifRead batteryBatteryManager.computeChargeTimeRemainingFif12019-11-17 06:34:51601
Please refer to the Intent.createFromParcel/battery hook documentation.
FifGet app updatesAppUpdateManagerFactory.createFif_ on XDA22019-11-15 08:45:08658
This hook has nothing to do with privacy: it prevents apps from detecting that a new update is available on the Play Store. That should take care of the nagging about "upgrading". It only is effective on apps that use the Play Services' AppUpdateManager. Warning: you may miss important updates when using this hook. ★★★ XPrivacyLua 1.26 or later is required starting with version 2 of the hook. ★★★ Instructions: 1. Download this hook. 2. Make sure that the Fif collection is enabled in XPL Pro. 3.a. In XPL, enable the (new) "Get app updates" group for apps you want to prevent from getting update information. 3.b. Or, in XPL Pro, enable the AppUpdateManagerFactory.create hook. Changelog: v2 - 2019-11-15 Fix hangs on some apps. Requires XPrivacyLua 1.26 or later. v1 - 2019-11-10 First public release.
FifKill background appsOnePlusHighPowerDetector.isProcInWhiteListFif_22019-10-01 04:28:30778
For OnePlus OS (OOS) ROMs up to and including OOS 9.X (Pie) only. This hook has nothing to do with privacy. It disables OOS background process kills by making all apps white-listed. These hooks are not necessary on OOS 10 / Android 10. Instructions: 1. Download both hooks: - OnePlusHighPowerDetector.isProcInWhiteList - OnePlusHighPowerDetector.isForkedProcInWhiteList 2. Make sure that the Fif collection is enabled in XPL Pro. 3. In XPL, navigate to the "Android System" app (you may have to change the filter to "Show all apps" first), and expand the restriction categories. 4.a. Check the "Kill background apps" category. 4.b. Or, alternately, enable the two hooks listed above for "Android System" in XPL Pro. Changelog: v2 - 2019-09-30 Disable on Android 10 / OOS 10 via Max SDK. No code changes. v1 - 2019-03-18 First public release.
FifKill background appsOnePlusHighPowerDetector.isForkedProcInWhiteListFif_22019-10-01 04:28:21722
Please refer to the OnePlusHighPowerDetector.isProcInWhiteList hook documentation.
FifRead battery saverPowerManager.isPowerSaveModeFif12019-09-03 19:09:44675
This hook prevents apps from detecting that the Android battery saver mode is engaged (Settings > Battery > Battery Saver). It fakes the Battery Saver status to false for any app querying it. Applying this hook to an app will prevent it from engaging in any power saving strategy it may apply when the Power Saver is on because it won't be able to detect it anymore. Use it with extra caution. Instructions: 1. Download this hook. 2. Make sure that the Fif collection is enabled in XPL Pro. 3.a. In XPL, enable the (new) "Read battery saver" group for apps for which you want to fake the battery saver status. 3.b. Or, in XPL Pro, enable the "PowerManager.isPowerSaveMode" hook. Changelog: v1a - 2019-09-03 Corrected documentation - no Lua code changes. v1 - 2019-08-31 First public release.
FifUtilitiesDownloadHelper.downloadTextContentFif_ on XDA.12019-05-26 04:13:50726
This hook has nothing to do with privacy. It fixes the "Explain xkcd" feature of the "xkcd Browser" (com.floern.xkcd) app version 4.2 (24). "xkcd Browser" is a fine app, but it hasn't been maintained in a while and the "Explain XKCD" feature is broken and shows a 301 HTTP error. This hook will fix the "Explain XKCD" button. Note that this hook will only show up for and can only be applied to the "xkcd Browser" app version 4.2 (24). Instructions: 1. Download this hook. 2. Make sure that the Fif collection is enabled in XPL Pro. 3. In XPL, navigate to the "xkcd Browser" app, and expand the restriction categories. 4.a. Check the "Utilities" category. 4.b. Or, alternately, enable DownloadHelper.downloadTextContent hook for "xkcd Browser" in XPL Pro. Changelog: v1 - 2019-05-25 First public release.
FifRead.NetworkWifiInfo.toStringFif_12018-10-08 22:41:232021
NetworkInfo.toString and WifiInfo.toString block other ways an app can get your SSID (Wi-Fi Network Name) and other private network parameters. The NetworkInfo.toString hook also blocks the APN leaking when connected via a cellular network. The hooks will attempt to edit SSID, BSSID, APN and MAC address in the semi-formatted data returned by the toString methods, but will fall back to just overwriting everything if that fails. For complete coverage, you may also want to enable the following hooks: - NetworkInfo.toString (repo) - NetworkInfo.getExtraInfo (stock) - WifiInfo.getIpAddress (repo) - WifiInfo.getBSSID (stock or repo version) - WifiInfo.getMacAddress (repo, may not be necessary in Android 6 Marshmallow or later) - WifiInfo.getSSID (stock) You may also want NetworkInfo.createFromParcel (in the repo), but that's for hiding online state, and has a separate category ("Internet offline") Instructions: 1. Download either or both NetworkInfo.toString and WifiInfo.toString hooks. 2. Make sure that the Fif collection is enabled in XPL Pro. 3. For any app for which you want the hook to apply: 3.a. Toggle the "Read Network" category until it's fully enabled (red) in XPL. 3.b. Or, alternately, enable either or both NetworkInfo.toString and WifiInfo.toString hook in XPL Pro. Changelog (for WifiInfo.toString): v1 - 2018-10-08 First public release.
FifRead.NetworkNetworkInfo.toStringFif_32018-10-08 22:41:162091
Please refer to the WifiInfo.toString hook documentation. Changelog (for NetworkInfo.toString): v3 - 2018-10-08 When anonymizing fails, set the returned value to Private. v2 - 2018-10-08 Update doc string. Actually set the fake return value, doh. v1 - 2018-09-05 First public release.
FifUse.AnalyticsPlacedAgent.registerUserFif_12018-10-07 15:59:511754
Blocks the Placed SDK which sends your location to Placed's server at all times. Based upon the documentation at https://github.com/placed/android-placed-sdk/blob/master/README.md The hook will be added to the "Use analytics" category. A single hook is enough to block the entire SDK as it converts register calls to unregister ones. Instructions: 1. Download this hook. 2. Make sure that the Fif collection is enabled in XPL Pro. 3. For any app for which you want the hook to apply: 3.a. Toggle the "Use analytics" category until it's fully enabled (red) in XPL. 3.b. Or, alternately, enable the Placed.registerUser hook in XPL Pro. Changelog: v1p1 - 2018-10-06 Fix typos in description string, version code still at 1. v1 - 2018-10-06 First public release.
FifUse proximity wakelockPowerManager.newWakeLockFif_12018-10-02 17:28:351290
These hooks have nothing to do with privacy. They prevent apps from blanking the screen when the proximity sensor detects a close object like your cheek. If your proximity sensor is busted, you can use the hooks to make calls and keep the screen on if you apply them to the system dialer, hangouts, skype, etc. Instructions: 1. Download both hooks: - PowerManager.newWakelock - PowerManager.Wakelock.release 2. Make sure that the Fif collection is enabled in XPL Pro. 3.a. In XPL, activate the "Use proximity wakelock" category for the apps that make use of the proximity wakelock. 3.b. Or, alternately, enable both PowerManager.newWakelock and PowerManager.Wakelock.release hooks in XPL Pro. Changelog: v1 - 2018-10-02 First public release.
FifUse proximity wakelockPowerManager.WakeLock.releaseFif_12018-10-02 17:28:321269
Please refer to the PowerManager.newWakelock hook documentation.
FifUse.TrackingSystemProperties.get/customFif_52018-10-01 05:47:232403
This hook complements the built-in XPrivacyLua hooks of the same name. Instructions: 1. Download these two hooks: - SystemProperties.get/custom - SystemProperties.get.default/custom 2. Make sure that the Fif collection is enabled in XPL Pro. 3. Configure a property blacklist with XPrivacyLua Pro, under "Custom Values", "Property blacklist (prefixes)". List items are whitespace separated, and will match if they are a prefix of the requested property. For example, if the blacklist is "persist. net", all of persist.usb, persist.key, net.DNS and netif will be blocked. 4. For any app for which you want the hooks to apply: 4.a. Toggle the "Use tracking" category until it's fully enabled (red) in XPL. 4.b. Or, alternately, enable both SystemProperties.get/custom SystemProperties.get.default/custom hook in XPL Pro. Note that the builtin hooks SystemProperties.get/build, /operator, /serial, and /vendor, and their get.default counterparts (8 hooks total) can either complement the /custom hooks, or the /custom hooks can completely replace them. It is recommended to use the builtin SystemProperties.get/operator (and get.default/operator) for masking the operator as the built-in hooks return valid (but fake) operator ids and countries, while the /custom hooks would return completely invalid values. The builtin /build, /serial and /vendor .get and .get.default hooks can safely be replaced with this version, provided that you respectively configure the "Property blacklist (prefixes)" custom values with: - "ro.build." for replacing the builtin /build hooks. - "ro.serialno ro.boot.serialno" for replacing the builtin /serial hooks. - "ro.vendor." for replacing the builtin /vendor hooks. The /custom hooks will generate fake values using this heuristic: - If the original value looks like a number or hexadecimal number, the fake value will be a number of same magnitude (number of digits) but with all zeroes. Eg. 9138474 will become 0000000 and 8d8fe will become 00000. - Otherwise the string "Private" will be returned. Changelog: v5 - 2018-09-30 Actually set the fake value in the hook instead of nil. v4 - 2018-09-30 Expanded description field / documentation. Now the faked value is not nil (crashes Coc), but either a zeroed out number or the string "Private".
FifUse.TrackingSystemProperties.get.default/customFif_52018-10-01 05:47:202245
Please refer to the SystemProperties.get/custom hook documentation.
FifUse fingerprintFingerprintManager.isHardwareDetectedFif_12018-09-22 18:05:421349
This hook has nothing to do with privacy. It hides the fingerprint sensor from applications. Instructions: 1. Download this hook. 2. Make sure that the Fif collection is enabled in XPL Pro. 3. In XPL, enable the (new) "Use fingerprint" collection for apps from which the fingerprint sensors should be hidden. Changelog: v1 - 2018-09-22 First public release.
FifUse.AnalyticsLocalytics.setPrivacyOptedOutFif_12018-04-21 22:02:352302
Blocks the Localytics Analytics platform. Based upon SDK docs https://docs.localytics.com/dev/android.html
FifUse.AnalyticsLocalytics.setOptedOutFif_12018-04-21 22:02:322175
Blocks the Localytics Analytics platform. Based upon SDK docs https://docs.localytics.com/dev/android.html
FifUse.AnalyticsLocalytics.integrateFif_12018-04-21 22:02:292150
Blocks the Localytics Analytics platform. Based upon SDK docs https://docs.localytics.com/dev/android.html
FifUse.AnalyticsCuebiq.PersistenceManagerImpl.isSDKCollectionEnabledFif_12018-04-11 06:11:082119
Blocks the CuebiQ Analytics platform. Reverse engineered from published apps.
FifUse.AnalyticsNeuraApiClient.authenticateFif_12018-04-11 06:10:482128
Blocks the Neura Analytics and Location tracking platform. Based upon the published Neura SDK https://docs.neura,com/android
FifUse.AnalyticsNeuraApiClient.authenticate/anonymous_requestFif_12018-04-11 06:10:462098
Blocks the Neura Analytics and Location tracking platform. Based upon the published Neura SDK https://docs.neura,com/android
FifUse.AnalyticsNeuraApiClient.authenticate/requestFif_12018-04-11 06:10:442069
Blocks the Neura Analytics and Location tracking platform. Based upon the published Neura SDK https://docs.neura,com/android
FifUse.AnalyticsNeuraApiClient.enableNeuraHandingStateAlertMessagesFif_12018-04-11 06:10:422070
Blocks the Neura Analytics and Location tracking platform. Based upon the published Neura SDK https://docs.neura,com/android
FifUse.AnalyticsNeuraApiClient.enableNeuraHandlePermissionsFif_12018-04-11 06:10:382077
Blocks the Neura Analytics and Location tracking platform. Based upon the published Neura SDK https://docs.neura,com/android
FifUse.AnalyticsNeuraApiClient.enableNeuraHandleSensorsStateFif_12018-04-11 06:10:352064
Blocks the Neura Analytics and Location tracking platform. Based upon the published Neura SDK https://docs.neura,com/android
FifUse.AnalyticsNeuraApiClient.enablePedometerWithHighBatteryUsageFif_12018-04-11 06:10:322058
Blocks the Neura Analytics and Location tracking platform. Based upon the published Neura SDK https://docs.neura,com/android
FifUse.AnalyticsNeuraApiClient.registerFirebaseTokenFif_12018-04-11 06:09:432070
Blocks the Neura Analytics and Location tracking platform. Based upon the published Neura SDK https://docs.neura,com/android
FifUse.AnalyticsNeuraApiClient.registerFirebaseToken/activityFif_12018-04-11 06:09:382067
Blocks the Neura Analytics and Location tracking platform. Based upon the published Neura SDK https://docs.neura,com/android
FifUse.AnalyticsNeuraApiClient.registerPushServerApiKeyFif_12018-04-11 06:09:322058
Blocks the Neura Analytics and Location tracking platform. Based upon the published Neura SDK https://docs.neura,com/android
FifInternet.FirewallInetAddress.getByNameFif_42018-03-22 20:53:172286
This hook prevents apps from getting a successful DNS resolution for a user-defined list of domains. The host/domain blacklist can be edited with XPrivacyLua Pro, under "Custom Values", "Firewall host/domain blacklist". List items are whitespace separated, and will match the whole string and/or any subdomains. For example, if the blacklist is "google.com facebook.com", all of google.com, www.google.com, we.love.google.com and www.facebook.com will be blocked.
FifInternet.FirewallInetAddress.getAllByNameFif_42018-03-22 20:53:112205
This hook prevents apps from getting a successful DNS resolution for a user-defined list of domains. The host/domain blacklist can be edited with XPrivacyLua Pro, under "Custom Values", "Firewall host/domain blacklist". List items are whitespace separated, and will match the whole string and/or any subdomains. For example, if the blacklist is "google.com facebook.com", all of google.com, www.google.com, we.love.google.com and www.facebook.com will be blocked.
PrivacyRead.NetworkWifiInfo.getBSSIDM66B,hKFirEs12018-03-17 07:02:272271
Replace the built-in hook to define your own WIFI BSSID value.Setting must match exactly like "AA:BB:CC:DD:EE:FF".
PrivacyUse.TrackingTelephonyManager/getNetworkOperatorM66B,hKFirEs42018-03-17 06:18:302216
Replace the built-in hook to fake mcc and mnc with getNetworkOperator method,for gsm users only.Setting must match exactly like "MCC,MNC",for example,"460,00".If you want to get a fake location by Celluar,you should also download and enable my modified getCellLocation hook definition.
FifRead.NetworkInetAddress.getLocalHostFif_12018-03-14 23:07:452158
Local network IP address restriction.
FifRead.NetworkNetworkInterface.getInetAddressesFif_12018-03-14 23:07:382186
Better version (won't crash most apps) of the same hook by A200K. Local network IP address restriction (using java network interface).
FifRead.NetworkWifiInfo.getIpAddressFif_12018-03-14 23:07:312244
Better version (logs the IP address in human-readable form) of the same hook by A200K. Internal Wifi IP address restriction.
PrivacyRead.NetworkTelephonyManager.getCellLocationM66B,hKFirEs42018-03-14 10:56:052162
Replace the built-in hook to fake cid and lac with getCellLocation method,for gsm users only.Don't use with my previous getCID and getLAC hooks simultaneously.Setting must match exactly like "LAC,CID",for example,"26550,187363073".If you want to get a fake location by Celluar,you should also download and enable my modified getNetworkOperator hook definition.
PrivacyRead.NetworkNetworkInterface.getInetAddressesA200K12018-03-12 16:09:111815
Local network IP address restriction (using java network interface)
PrivacyUse.TrackingBluetoothAdapter.getNameA200K12018-03-12 13:33:461962
Bluetooth device name restriction
MyPrivacyFake.LocationGsmCellLocation.getLachKFirEs112018-03-11 04:11:531909
Fake the LAC of your carrier.You can use your own value per app in the pro companion app,just input a number in custom value named "FakeLAC" and save.Please disable the getCellLocation hook in "Read.Network" group,or it will not work.
MyPrivacyFake.LocationGsmCellLocation.getCidhKFirEs112018-03-11 04:11:491929
Fake the CID of your carrier.You can use your own value per app in the pro companion app,just input a number in custom value named "FakeCID" and save.Please disable the getCellLocation hook in "Read.Network" group,or it will not work.
PrivacyRead.NetworkWifiInfo.getIpAddressA200K12018-03-06 20:59:211962
Internal Wifi IP address restriction
PrivacyUse.TrackingNetworkInterface.getHardwareAddressM66B12018-02-27 10:03:592567
Network MAC address restriction
PrivacyUse.TrackingWifiInfo.getMacAddressM66B12018-02-27 08:16:262863
Wi-Fi MAC address restriction
PrivacyUse.TrackingBluetoothAdapter.getAddressM66B12018-02-27 08:16:042390
Bluetooth MAC address restriction
FifUse.AnalyticsRadar.updateLocationFif_22018-02-20 23:04:582388
Blocks the Radar Analytics and Location tracking platform. Based upon the published Radar SDK https://radar.io/documentation/sdk
FifUse.AnalyticsRadar.trackOnceFif_22018-02-20 23:04:562306
Blocks the Radar Analytics and Location tracking platform. Based upon the published Radar SDK https://radar.io/documentation/sdk
FifUse.AnalyticsRadar.stopTrackingFif_22018-02-20 23:04:532315
Blocks the Radar Analytics and Location tracking platform. Based upon the published Radar SDK https://radar.io/documentation/sdk
FifUse.AnalyticsRadar.startTrackingFif_22018-02-20 23:04:492274
Blocks the Radar Analytics and Location tracking platform. Based upon the published Radar SDK https://radar.io/documentation/sdk
FifUse.AnalyticsRadar.setUserIdFif_22018-02-20 23:04:442275
Blocks the Radar Analytics and Location tracking platform. Based upon the published Radar SDK https://radar.io/documentation/sdk
FifUse.AnalyticsRadar.setTrackingPriorityFif_22018-02-20 23:04:412248
Blocks the Radar Analytics and Location tracking platform. Based upon the published Radar SDK https://radar.io/documentation/sdk
FifUse.AnalyticsRadar.setPlacesProviderFif_22018-02-20 23:04:372234
Blocks the Radar Analytics and Location tracking platform. Based upon the published Radar SDK https://radar.io/documentation/sdk
FifUse.AnalyticsRadar.setMetadataFif_22018-02-20 23:04:332257
Blocks the Radar Analytics and Location tracking platform. Based upon the published Radar SDK https://radar.io/documentation/sdk
FifUse.AnalyticsRadar.setDescriptionFif_22018-02-20 23:04:292235
Blocks the Radar Analytics and Location tracking platform. Based upon the published Radar SDK https://radar.io/documentation/sdk
FifUse.AnalyticsRadar.requestPermissionsFif_22018-02-20 23:04:252247
Blocks the Radar Analytics and Location tracking platform. Based upon the published Radar SDK https://radar.io/documentation/sdk
FifUse.AnalyticsRadar.rejectEventFif_22018-02-20 23:04:222221
Blocks the Radar Analytics and Location tracking platform. Based upon the published Radar SDK https://radar.io/documentation/sdk
FifUse.AnalyticsRadar.isWifiEnabledFif_22018-02-20 23:04:182305
Blocks the Radar Analytics and Location tracking platform. Based upon the published Radar SDK https://radar.io/documentation/sdk
FifUse.AnalyticsRadar.isTrackingFif_22018-02-20 23:04:142238
Blocks the Radar Analytics and Location tracking platform. Based upon the published Radar SDK https://radar.io/documentation/sdk
FifUse.AnalyticsRadar.initialize/context/stringFif_22018-02-20 23:04:122224
Blocks the Radar Analytics and Location tracking platform. Based upon the published Radar SDK https://radar.io/documentation/sdk
FifUse.AnalyticsRadar.initialize/contextFif_22018-02-20 23:04:082196
Blocks the Radar Analytics and Location tracking platform. Based upon the published Radar SDK https://radar.io/documentation/sdk
FifUse.AnalyticsRadar.checkSelfPermissionsFif_22018-02-20 23:04:052212
Blocks the Radar Analytics and Location tracking platform. Based upon the published Radar SDK https://radar.io/documentation/sdk
FifUse.AnalyticsRadar.acceptEventFif_22018-02-20 23:04:012211
Blocks the Radar Analytics and Location tracking platform. Based upon the published Radar SDK https://radar.io/documentation/sdk
FifUse.AnalyticsPresage.startFif_22018-02-20 23:01:012175
Blocks the Presage Analytics/Ad Serving platform. Since there are no published Android SDK documentation for this platform, the blocking may be incomplete.
FifUse.AnalyticsPresage.setContextFif_22018-02-20 23:00:572163
Blocks the Presage Analytics/Ad Serving platform. Since there are no published Android SDK documentation for this platform, the blocking may be incomplete.
FifUse.AnalyticsPresage.adToServeFif_22018-02-20 23:00:542170
Blocks the Presage Analytics/Ad Serving platform. Since there are no published Android SDK documentation for this platform, the blocking may be incomplete.
FifInternet.FirewallInetAddress.getByAddress/host/addrFif_22018-02-20 23:00:171950
Logs access to InetAddress.getByAdress, no blocking is performed.
FifInternet.FirewallInetAddress.getByAddress/addrFif_22018-02-20 23:00:121876
Logs access to InetAddress.getByAdress, no blocking is performed.
FifPublic.StorageFile.mkdirsFif_22018-02-20 22:59:581861
Blocks creating directories outside of a whitelist of acceptable directories. This should prevent apps from creating directories outside of app-specific locations.
FifPublic.StorageFile.mkdirFif_22018-02-20 22:59:551810
Blocks creating directories outside of a whitelist of acceptable directories. This should prevent apps from creating directories outside of app-specific locations.
PrivacyInternet.OfflineNetworkInfo.createFromParcelM66B12018-02-20 18:09:062077
Fake offline state
PrivacyUse.ShellRuntime.exec/cmd/env/fileM66B12018-02-20 09:58:471822
Log shell commands
PrivacyUse.ShellRuntime.exec/cmd/envM66B12018-02-20 09:58:441802
Log shell commands
PrivacyUse.ShellRuntime.exec/cmdM66B12018-02-20 09:58:411808
Log shell commands
PrivacyUse.ShellRuntime.exec/array/env/fileM66B12018-02-20 09:58:391809
Log shell commands
PrivacyUse.ShellRuntime.exec/array/envM66B12018-02-20 09:58:351781
Log shell commands
PrivacyUse.ShellRuntime.exec/arrayM66B12018-02-20 09:58:321772
Log shell commands
PrivacyUse.ShellProcessBuilder.command/listM66B12018-02-20 09:58:291781
Log shell commands
PrivacyUse.ShellProcessBuilder.command/arrayM66B12018-02-20 09:58:241780
Log shell commands
PrivacyPublic.StorageBlockGuardOs.openM66B22018-02-20 09:24:351604
Confine app to own storage, might crash
PrivacyUse.AnalyticsFlurryAgent.setLocationM66B22018-02-20 09:22:061918
Yahoo's Flurry restriction, might crash
PrivacyUse.AnalyticsFlurryAgent.setGenderM66B22018-02-20 09:21:371868
Yahoo's Flurry restriction, might crash
PrivacyUse.AnalyticsFlurryAgent.setAgeM66B22018-02-20 09:21:341854
Yahoo's Flurry restriction, might crash
PrivacyUse.AnalyticsFlurryAgent.onStartSession/apikeyM66B22018-02-20 09:21:331843
Yahoo's Flurry restriction, might crash
PrivacyUse.AnalyticsFlurryAgent.onStartSessionM66B22018-02-20 09:21:311845
Yahoo's Flurry restriction, might crash
PrivacyUse.AnalyticsFlurryAgent.onPageViewM66B22018-02-20 09:21:291850
Yahoo's Flurry restriction, might crash
PrivacyUse.AnalyticsFlurryAgent.onEndSessionM66B22018-02-20 09:21:261864
Yahoo's Flurry restriction, might crash
PrivacyUse.AnalyticsFlurryAgent.logEvent/id/timedM66B22018-02-20 09:21:241862
Yahoo's Flurry restriction, might crash
PrivacyUse.AnalyticsFlurryAgent.logEvent/id/parameters/timedM66B22018-02-20 09:21:231872
Yahoo's Flurry restriction, might crash
PrivacyUse.AnalyticsFlurryAgent.logEvent/id/parametersM66B22018-02-20 09:21:211890
Yahoo's Flurry restriction, might crash
PrivacyUse.AnalyticsFlurryAgent.logEvent/idM66B32018-02-20 09:21:191879
Yahoo's Flurry restriction, might crash
PrivacyUse.AnalyticsFlurryAgent.endTimedEvent/id/parametersM66B22018-02-20 09:18:581915
Yahoo's Flurry restriction, might crash
PrivacyUse.AnalyticsFlurryAgent.endTimedEvent/idM66B22018-02-20 09:18:151877
Yahoo's Flurry restriction, might crash
223072