mirror of
https://github.com/Magisk-Modules-Repo/MagiskHidePropsConf.git
synced 2024-10-02 21:02:09 +00:00
v5.0.0-v64
This commit is contained in:
parent
a222fb3edb
commit
94fb404db9
81
README.md
81
README.md
@ -36,8 +36,6 @@ Keep reading below to find out more details about the different parts of the mod
|
|||||||
- [Please update fingerprint X](https://github.com/Magisk-Modules-Repo/MagiskHidePropsConf/blob/master/README.md#please-update-fingerprint-x)
|
- [Please update fingerprint X](https://github.com/Magisk-Modules-Repo/MagiskHidePropsConf/blob/master/README.md#please-update-fingerprint-x)
|
||||||
##### Device simulation
|
##### Device simulation
|
||||||
- [Device simulation](https://github.com/Magisk-Modules-Repo/MagiskHidePropsConf/blob/master/README.md#device-simulation)
|
- [Device simulation](https://github.com/Magisk-Modules-Repo/MagiskHidePropsConf/blob/master/README.md#device-simulation)
|
||||||
##### Improved root hiding
|
|
||||||
- [Improved root hiding - Editing build.prop and default.prop](https://github.com/Magisk-Modules-Repo/MagiskHide-Props-Config/blob/master/README.md#improved-root-hiding---editing-buildprop-and-defaultprop)
|
|
||||||
##### MagiskHide props
|
##### MagiskHide props
|
||||||
- [Set/reset MagiskHide Sensitive props](https://github.com/Magisk-Modules-Repo/MagiskHide-Props-Config/blob/master/README.md#setreset-magiskhide-sensitive-props)
|
- [Set/reset MagiskHide Sensitive props](https://github.com/Magisk-Modules-Repo/MagiskHide-Props-Config/blob/master/README.md#setreset-magiskhide-sensitive-props)
|
||||||
##### Custom props
|
##### Custom props
|
||||||
@ -190,7 +188,7 @@ Just run the `props` command and the list will be updated automatically. Use the
|
|||||||
|
|
||||||
If you already have a device fingerprint set by the module, and it has been updated in the current fingerprints list, it will be automatically updated when the prints list gets an update. Just reboot to apply. This function can be turned of in the script settings (see ["Prop script settings"](https://github.com/Magisk-Modules-Repo/MagiskHide-Props-Config#prop-script-settings) below)
|
If you already have a device fingerprint set by the module, and it has been updated in the current fingerprints list, it will be automatically updated when the prints list gets an update. Just reboot to apply. This function can be turned of in the script settings (see ["Prop script settings"](https://github.com/Magisk-Modules-Repo/MagiskHide-Props-Config#prop-script-settings) below)
|
||||||
|
|
||||||
**_Current fingerprints list version - v63_**
|
**_Current fingerprints list version - v64_**
|
||||||
|
|
||||||
|
|
||||||
## Please add support for device X
|
## Please add support for device X
|
||||||
@ -217,6 +215,7 @@ If you want to simulate a specific device (to get access to device specific apps
|
|||||||
- ro.build.version.release
|
- ro.build.version.release
|
||||||
- ro.build.id
|
- ro.build.id
|
||||||
- ro.build.version.incremental
|
- ro.build.version.incremental
|
||||||
|
- ro.build.display.id
|
||||||
- ro.build.version.sdk
|
- ro.build.version.sdk
|
||||||
|
|
||||||
By default all props are set when this option is activated, but it is possible to deactivate and activate each prop individually.
|
By default all props are set when this option is activated, but it is possible to deactivate and activate each prop individually.
|
||||||
@ -224,10 +223,6 @@ By default all props are set when this option is activated, but it is possible t
|
|||||||
Whenever a fingerprint is set by the module, the `ro.build.description` prop will be set automatically independently from if the general device simulation option is enabled or not.
|
Whenever a fingerprint is set by the module, the `ro.build.description` prop will be set automatically independently from if the general device simulation option is enabled or not.
|
||||||
|
|
||||||
|
|
||||||
## Improved root hiding - Editing build.prop and default.prop
|
|
||||||
In some rare cases, apps and services look at the actual files (build.prop and default.prop), rather than the set prop values. With this module feature you can make sure that the actual prop in build.prop and default.prop is changed to match whatever value the prop has been set to by either MagiskHide or the module. If there's a prop value set by the module (see ["Set/reset MagiskHide Sensitive props"](https://github.com/Magisk-Modules-Repo/MagiskHide-Props-Config#setreset-magiskhide-sensitive-props) below), that value takes precedence.
|
|
||||||
|
|
||||||
|
|
||||||
## Set/reset MagiskHide Sensitive props
|
## Set/reset MagiskHide Sensitive props
|
||||||
By default, if MagiskHide detects certain sensitive prop values they will be changed to known safe values. These are currently:
|
By default, if MagiskHide detects certain sensitive prop values they will be changed to known safe values. These are currently:
|
||||||
- ro.debuggable (set to "0" by MagiskHide - sensitive value is "1")
|
- ro.debuggable (set to "0" by MagiskHide - sensitive value is "1")
|
||||||
@ -290,7 +285,7 @@ This option will disable or enable the automatic updating of the fingerprints li
|
|||||||
Whenever there is an update to the fingerprints list and if you have a fingerprint applied for a device that is on the list, the fingerprint will automatically be updated (if there is an update to that particular fingerprint). This option will not update a fingerprint to one for a different Android version if there are several fingerprints available for the same device.
|
Whenever there is an update to the fingerprints list and if you have a fingerprint applied for a device that is on the list, the fingerprint will automatically be updated (if there is an update to that particular fingerprint). This option will not update a fingerprint to one for a different Android version if there are several fingerprints available for the same device.
|
||||||
|
|
||||||
## Configuration file
|
## Configuration file
|
||||||
You can use a configuration file to set your desired options, rather than running the `props` command. This is particularly useful if you have a large amount of custom props you want to set. Download the [settings file](https://raw.githubusercontent.com/Magisk-Modules-Repo/MagiskHide-Props-Config/master/common/propsconf_conf) or extract it from the module zip ('propsconf_conf' in the common folder), fill in the desired options (follow the instructions in the file), place it /data or /cache (or /data/cache if you're using an A/B device) and reboot. You can also use the configuration file when first installing the module. Just place the file in the root of your internal storage (or one of the other previously mentioned locations) before flashing the module and the installation script will set everything up.
|
You can use a configuration file to set your desired options, rather than running the `props` command. This is particularly useful if you have a large amount of custom props you want to set. Download the [settings file](https://raw.githubusercontent.com/Magisk-Modules-Repo/MagiskHide-Props-Config/master/common/propsconf_conf) or extract it from the module zip ('propsconf_conf' in the common folder), fill in the desired options (follow the instructions in the file), place it in the root of your internal storage (/sdcard), in /data or in /cache (or /data/cache if you're using an A/B device) and reboot. You can also use the configuration file when first installing the module. Just place the file in the root of your internal storage (or one of the other previously mentioned locations) before flashing the module and the installation script will set everything up.
|
||||||
|
|
||||||
If you edit the configuration file in Windows, make sure that you use a text editor that can handle [Unix file endings](https://en.m.wikipedia.org/wiki/Newline), such as Notepad++ and similar editors (not regular Windows Notepad).
|
If you edit the configuration file in Windows, make sure that you use a text editor that can handle [Unix file endings](https://en.m.wikipedia.org/wiki/Newline), such as Notepad++ and similar editors (not regular Windows Notepad).
|
||||||
|
|
||||||
@ -299,7 +294,7 @@ This can also be done directly at the first install (through Manager or recovery
|
|||||||
**NOTE!** Upon detecting the file, the module installation/boot script will load the configured values into the module and then delete the the configuration file, so keep a copy somewhere if you want to use the same settings later.
|
**NOTE!** Upon detecting the file, the module installation/boot script will load the configured values into the module and then delete the the configuration file, so keep a copy somewhere if you want to use the same settings later.
|
||||||
|
|
||||||
### Setting up the module on a clean Magisk/ROM flash
|
### Setting up the module on a clean Magisk/ROM flash
|
||||||
After having made a clean ROM flash, the configuration file can be used to set the module up as you want without even having to boot first. First flash the ROM and Magisk. After that you can place the configuration file (see above) with your desired settings (fingerprint, custom props, etc) in the root of your internal storage (/sdcard), /data or /cache (or /data/cache if you're using an A/B device) and then install the module. This will set the module up just as you want it without having to do anything else. It is also possible to place the configuration file after having installed the module and rebooting (although you can only use /data or /cache as a location for the file, /sdcard will not be mounted in time). This will set everything up during boot, but it is possible that this won't work an all device/ROM combinations. If you experience issues, let the ROM boot once before setting everything up.
|
After having made a clean ROM flash, the configuration file can be used to set the module up as you want without even having to boot first. First flash the ROM and Magisk. After that you can place the configuration file (see above) with your desired settings (fingerprint, custom props, etc) in the root of your internal storage (/sdcard), in /data or in /cache (or /data/cache if you're using an A/B device) and then install the module. This will set the module up just as you want it without having to do anything else. It is also possible to place the configuration file after having installed the module and rebooting. This will set everything up during boot, but it is possible that this won't work an all device/ROM combinations. If you experience issues, let the ROM boot once before setting everything up.
|
||||||
|
|
||||||
|
|
||||||
## Miscellaneous MagiskHide issues
|
## Miscellaneous MagiskHide issues
|
||||||
@ -312,7 +307,7 @@ But first: have you tried turning it off and on again? Toggling MagiskHide off a
|
|||||||
If you have questions, suggestions or are experiencing some kind of issue, visit the [module support thread](https://forum.xda-developers.com/apps/magisk/module-magiskhide-props-config-t3789228) @ XDA.
|
If you have questions, suggestions or are experiencing some kind of issue, visit the [module support thread](https://forum.xda-developers.com/apps/magisk/module-magiskhide-props-config-t3789228) @ XDA.
|
||||||
|
|
||||||
### Known issues
|
### Known issues
|
||||||
- EdXposed sometimes causes Magisk's boot process to fail, resulting in one or the other of the module boot scripts not running as they should. Until this has been fixed with EdXposed, there are a couple of ways to work around this. Use the [Configuration file](https://github.com/Magisk-Modules-Repo/MagiskHide-Props-Config/blob/master/README.md#configuration-file) to set everything up during installation, or disable EdXposed before setting the module up and enable it again after the module works as you want it. Just make sure to use the default settings for boot stages.
|
- EdXposed sometimes causes Magisk's boot process to fail, resulting in the module boot scripts (mainly service.sh) not running as they should. Until this has been fixed with EdXposed, there are a couple of ways to work around this. Use the [Configuration file](https://github.com/Magisk-Modules-Repo/MagiskHide-Props-Config/blob/master/README.md#configuration-file) to set everything up during installation, or disable EdXposed before setting the module up and enable it again after the module works as you want it. Just make sure to use the default settings for boot stages.
|
||||||
|
|
||||||
### Requires Magisk v19+
|
### Requires Magisk v19+
|
||||||
If the module won't install, with the message that Magisk v19+ is required, but you have Magisk v19+ installed, that means that your Magisk installation is broken. It's likely that you did not update properly (always update directly from the Manager) from a previous Magisk version (or something along those lines) and core parts of Magisk are still from an old install. The solution is to do a reinstallation by using "Direct install" in the Magisk Manager. If you for some reason can't do a direct install you're likely going to have to uninstall Magisk and start over.
|
If the module won't install, with the message that Magisk v19+ is required, but you have Magisk v19+ installed, that means that your Magisk installation is broken. It's likely that you did not update properly (always update directly from the Manager) from a previous Magisk version (or something along those lines) and core parts of Magisk are still from an old install. The solution is to do a reinstallation by using "Direct install" in the Magisk Manager. If you for some reason can't do a direct install you're likely going to have to uninstall Magisk and start over.
|
||||||
@ -321,7 +316,6 @@ If the module won't install, with the message that Magisk v19+ is required, but
|
|||||||
A couple of the options in the `props` script will be automatically disabled in some circumstances. These are:
|
A couple of the options in the `props` script will be automatically disabled in some circumstances. These are:
|
||||||
- _"Edit device fingerprint"_ will be disabled if another Magisk module that is known to also edit the device fingerprint is installed.
|
- _"Edit device fingerprint"_ will be disabled if another Magisk module that is known to also edit the device fingerprint is installed.
|
||||||
- _"Device simulation"_ will be disabled if there is no device fingerprint set by the module.
|
- _"Device simulation"_ will be disabled if there is no device fingerprint set by the module.
|
||||||
- _"Improved hiding"_ will be disable if all relevant prop values already are "safe" (in other words: the option isn't needed), or if a conflicting module that also Magic Mounts build.prop is found.
|
|
||||||
|
|
||||||
### I can't pass the ctsProfile check
|
### I can't pass the ctsProfile check
|
||||||
See ["I still can't pass the ctsProfile check"](https://github.com/Magisk-Modules-Repo/MagiskHide-Props-Config/blob/master/README.md#i-still-cant-pass-the-ctsprofile-check) above.
|
See ["I still can't pass the ctsProfile check"](https://github.com/Magisk-Modules-Repo/MagiskHide-Props-Config/blob/master/README.md#i-still-cant-pass-the-ctsprofile-check) above.
|
||||||
@ -342,9 +336,11 @@ A common reason for issues with booting the device or with system apps force clo
|
|||||||
|
|
||||||
In case of issues, if you've set a prop value that doesn't work on your device causing it not to boot, etc, don't worry. There are options. You can follow the advice in the [Magisk troubleshooting guide](https://www.didgeridoohan.com/magisk/Magisk#hn_Module_causing_issues_Magisk_functionality_bootloop_loss_of_root_etc) to remove or disable the module, or you can use the module's built-in options to reset all module settings to the defaults.
|
In case of issues, if you've set a prop value that doesn't work on your device causing it not to boot, etc, don't worry. There are options. You can follow the advice in the [Magisk troubleshooting guide](https://www.didgeridoohan.com/magisk/Magisk#hn_Module_causing_issues_Magisk_functionality_bootloop_loss_of_root_etc) to remove or disable the module, or you can use the module's built-in options to reset all module settings to the defaults.
|
||||||
|
|
||||||
Place a file named `reset_mhpc` in /cache (or /data/cache on A/B devices) and reboot.
|
Place a file named `reset_mhpc` in the root of your internal storage (/sdcard), in /data or in /cache (or /data/cache if you're using an A/B device) and reboot.
|
||||||
|
|
||||||
It is possible to use this in combination with the [configuration file](https://github.com/Magisk-Modules-Repo/MagiskHide-Props-Config/blob/master/README.md#configuration-file) described above to keep device fingerprint or any other settings intact past the reset. Just make sure to remove any custom props that might have been causing issues from the configuration file.
|
If your device does not have access to /sdcard, /data or /cache through recovery (there's no custom recovery available), you can disable Magisk by flashing a stock boot image, boot up the device, place the reset file in the root of your internal storage, and lastly reinstall Magisk by flashing a patched boot image again. At the next boot the module will be reset and you should be up and running again.
|
||||||
|
|
||||||
|
The reset file can be use this in combination with the [configuration file](https://github.com/Magisk-Modules-Repo/MagiskHide-Props-Config/blob/master/README.md#configuration-file) described above to keep device fingerprint or any other settings intact past the reset. Just make sure to remove any custom props that might have been causing issues from the configuration file.
|
||||||
|
|
||||||
### The Play Store is "uncertified"
|
### The Play Store is "uncertified"
|
||||||
If your device's Play Store reports that the device is "uncertified", this is usually fixed by making sure that you pass SafetyNet and then clearing data for the Play Store (and possibly rebooting). More details in the [Magisk troubleshooting guide](https://www.didgeridoohan.com/magisk/MagiskHide#hn_Device_uncertified_in_Play_storeNetflix_and_other_apps_wont_install_or_doesnt_show_up).
|
If your device's Play Store reports that the device is "uncertified", this is usually fixed by making sure that you pass SafetyNet and then clearing data for the Play Store (and possibly rebooting). More details in the [Magisk troubleshooting guide](https://www.didgeridoohan.com/magisk/MagiskHide#hn_Device_uncertified_in_Play_storeNetflix_and_other_apps_wont_install_or_doesnt_show_up).
|
||||||
@ -357,7 +353,7 @@ The logs will also automatically be saved to the root of the device's internal s
|
|||||||
If there are issues with other apps or your system as a result of using this module, a logcat/recovery log/etc showing the issue will most likely be necessary. Take a look in my [Magisk troubleshooting guide](https://www.didgeridoohan.com/magisk/MagiskHelp) for guidance on that.
|
If there are issues with other apps or your system as a result of using this module, a logcat/recovery log/etc showing the issue will most likely be necessary. Take a look in my [Magisk troubleshooting guide](https://www.didgeridoohan.com/magisk/MagiskHelp) for guidance on that.
|
||||||
|
|
||||||
### Collecting logs manually
|
### Collecting logs manually
|
||||||
If you can't run the `props` script for some reason, the logs are also stored in /cache (or /data/cache for A/B devices). The Magisk log and any files starting with "propsconf" would be useful for troubleshooting (if you don't, or can't, use the "Collect logs" option mentioned above). Providing the output from terminal might also be useful.
|
If you can't run the `props` script for some reason, the logs are also stored in /data/adb/mhpc. The Magisk log and any files starting with "propsconf" would be useful for troubleshooting (if you don't, or can't, use the "Collect logs" option mentioned above). Providing the output from terminal might also be useful.
|
||||||
|
|
||||||
|
|
||||||
## Donations
|
## Donations
|
||||||
@ -371,6 +367,7 @@ If you've had any help from me or this module, any kind of [donation](https://fo
|
|||||||
## Credits
|
## Credits
|
||||||
@topjohnwu @ XDA Developers, for Magisk
|
@topjohnwu @ XDA Developers, for Magisk
|
||||||
@Zackptg5, @veez21 and @jenslody @ XDA Developers, for help and inspiration
|
@Zackptg5, @veez21 and @jenslody @ XDA Developers, for help and inspiration
|
||||||
|
@ipdev, for being always helpful and bringing tons of fingerprints to the module list
|
||||||
|
|
||||||
|
|
||||||
## Previous releases
|
## Previous releases
|
||||||
@ -379,9 +376,25 @@ Any previous releases can be found on [GitHub](https://github.com/Magisk-Modules
|
|||||||
Releases up until v2.4.0 are compatible with Magisk v15 to v16.7.
|
Releases up until v2.4.0 are compatible with Magisk v15 to v16.7.
|
||||||
Releases from v2.4.1 are compatible with Magisk v17+.
|
Releases from v2.4.1 are compatible with Magisk v17+.
|
||||||
Releases from v4.0.0 are compatible with Magisk v19+.
|
Releases from v4.0.0 are compatible with Magisk v19+.
|
||||||
|
Releases from v5.0.0 are recommended for Magisk v19.4+.
|
||||||
|
|
||||||
## Changelog
|
## Changelog
|
||||||
|
### v5.0.0
|
||||||
|
- Updated possible locations for both the configuration and reset files (can now be placed in the root of internal storage, in /data or in /cache).
|
||||||
|
- Updated device simulation so that all props now are disabled by default. Should hopefully make a few less careless users experience issues caused by the feature. NOTE! All simulation prop values will be disabled with this update. If you did have basic simulation enabled prior to the update, you have to manually enable it again.
|
||||||
|
- Updated device simulation and added ro.build.display.id.
|
||||||
|
- Updated reboot function.
|
||||||
|
- Fixed a bug with the reset file (reset_mhpc) where system.prop would not be reset.
|
||||||
|
- Fixed the setting of fingerprint props so that props that aren't already present on the device won't be set.
|
||||||
|
- Fixed a bug where too similar custom props could not be set.
|
||||||
|
- Fixed removal of old settings file on a fresh install.
|
||||||
|
- Fixed possible issues with retrieving default file values on some devices/ROMs.
|
||||||
|
- Fixed an issue where colours and clearing of the screen between menus don't work on Magisk v19.4+. Credits to @veez21 for the fix.
|
||||||
|
- Stopped using /cache for logs and other module files. New location is /data/adb/mhpc. See the documentation for details.
|
||||||
|
- Removed the "Improved root hiding" feature. It is most likely just placebo, but more importantly will also mount the system partition as rw on SAR devices. Big no-no... Might make a reworked reapperance in the future.
|
||||||
|
- Slight tweaks to the ui and on-screen instructions, for (hopefully) better clarity and understanding.
|
||||||
|
- Updated fingerprints for Asus Zenfone 6, Essential PH-1, Google Pixel 1-3a (regular and XL) and Pixel C, Huawei Mate 20 Pro, Motorola Moto G5S, OnePlus 5, 5T, 6T and 7 Pro, Samsung Galaxy A5 2017, Xiaomi Mi A2, Pocophone F1, Redmi 5A, Redmi K20 Pro, Redmi Note 5 Pro and Redmi Note 7. Added prints for Asus Zenfone 3 Max, Nokia 6.1 Plus, OnePlus One, Walmart Onn 8, Xiaomi Mi 9 Lite, Mi 9T, Mi A3, Redmi 4A and Redmi Note 4 Mediatek. Removed fingerprint for the LG G6 H872. List updated to v64.
|
||||||
|
|
||||||
### v4.0.3
|
### v4.0.3
|
||||||
- Tiny bugfix release. A couple of messed up variables restored to their full glory.
|
- Tiny bugfix release. A couple of messed up variables restored to their full glory.
|
||||||
- Updated fingerprint for the Xiaomi Redmi Note 5/5 Plus. List at v55.
|
- Updated fingerprint for the Xiaomi Redmi Note 5/5 Plus. List at v55.
|
||||||
@ -643,17 +656,18 @@ Releases from v4.0.0 are compatible with Magisk v19+.
|
|||||||
|
|
||||||
|
|
||||||
## Current fingerprints list
|
## Current fingerprints list
|
||||||
### List v63
|
### List v64
|
||||||
- Asus Zenfone 2 Laser (6.0.1)
|
- Asus Zenfone 2 Laser (6.0.1)
|
||||||
|
- Asus Zenfone 3 Max (7.1.1 & 8.1.0)
|
||||||
- Asus Zenfone 4 Max (7.1.1)
|
- Asus Zenfone 4 Max (7.1.1)
|
||||||
- Asus ZenFone 5Z (9)
|
- Asus ZenFone 5Z (9)
|
||||||
- Asus Zenfone 6 (9.0)
|
- Asus Zenfone 6 (9)
|
||||||
- Asus Zenfone Max M1 (8.0.0)
|
- Asus Zenfone Max M1 (8.0.0)
|
||||||
- Asus Zenfone Max Pro M1 (8.1.0)
|
- Asus Zenfone Max Pro M1 (8.1.0)
|
||||||
- Asus ZenPad S 8.0 (6.0.1)
|
- Asus ZenPad S 8.0 (6.0.1)
|
||||||
- BLU R1 HD 2018 (7.0)
|
- BLU R1 HD 2018 (7.0)
|
||||||
- Elephone U Pro (8.0.0)
|
- Elephone U Pro (8.0.0)
|
||||||
- Essential PH-1 (9)
|
- Essential PH-1 (9 & 10)
|
||||||
- Google Nexus 4 (5.1.1)
|
- Google Nexus 4 (5.1.1)
|
||||||
- Google Nexus 5 (6.0.1)
|
- Google Nexus 5 (6.0.1)
|
||||||
- Google Nexus 5X (8.1.0)
|
- Google Nexus 5X (8.1.0)
|
||||||
@ -667,14 +681,14 @@ Releases from v4.0.0 are compatible with Magisk v19+.
|
|||||||
- Google Nexus 9 LTE (7.1.1)
|
- Google Nexus 9 LTE (7.1.1)
|
||||||
- Google Nexus 10 (5.1.1)
|
- Google Nexus 10 (5.1.1)
|
||||||
- Google Nexus Player (6.0.1)
|
- Google Nexus Player (6.0.1)
|
||||||
- Google Pixel (8.1.0 & 9)
|
- Google Pixel (8.1.0 & 9 & 10)
|
||||||
- Google Pixel XL (8.1.0 & 9)
|
- Google Pixel XL (8.1.0 & 9 & 10)
|
||||||
- Google Pixel 2 (8.1.0 & 9)
|
- Google Pixel 2 (8.1.0 & 9 & 10)
|
||||||
- Google Pixel 2 XL (8.1.0 & 9)
|
- Google Pixel 2 XL (8.1.0 & 9 & 10)
|
||||||
- Google Pixel 3 (9)
|
- Google Pixel 3 (9 & 10)
|
||||||
- Google Pixel 3 XL (9)
|
- Google Pixel 3 XL (9 & 10)
|
||||||
- Google Pixel 3a (9)
|
- Google Pixel 3a (9 & 10)
|
||||||
- Google Pixel 3a XL (9)
|
- Google Pixel 3a XL (9 & 10)
|
||||||
- Google Pixel C (8.1.0)
|
- Google Pixel C (8.1.0)
|
||||||
- HTC 10 (6.0.1)
|
- HTC 10 (6.0.1)
|
||||||
- HTC U11 (8.0.0)
|
- HTC U11 (8.0.0)
|
||||||
@ -700,7 +714,6 @@ Releases from v4.0.0 are compatible with Magisk v19+.
|
|||||||
- LG G5 H830 (8.0.0)
|
- LG G5 H830 (8.0.0)
|
||||||
- LG G5 RS988 (7.0)
|
- LG G5 RS988 (7.0)
|
||||||
- LG G6 H870 (7.0 & 8.0.0)
|
- LG G6 H870 (7.0 & 8.0.0)
|
||||||
- LG G6 H872 (8.0.0)
|
|
||||||
- LG V20 H918 (8.0.0)
|
- LG V20 H918 (8.0.0)
|
||||||
- LG V20 H910 (8.0.0)
|
- LG V20 H910 (8.0.0)
|
||||||
- LG V20 H990DS (7.0)
|
- LG V20 H990DS (7.0)
|
||||||
@ -724,9 +737,11 @@ Releases from v4.0.0 are compatible with Magisk v19+.
|
|||||||
- Motorola Moto X4 (8.0.0)
|
- Motorola Moto X4 (8.0.0)
|
||||||
- Motorola Moto Z2 Play (8.0.0)
|
- Motorola Moto Z2 Play (8.0.0)
|
||||||
- Nextbook Ares 8A (6.0.1)
|
- Nextbook Ares 8A (6.0.1)
|
||||||
|
- Nokia 6.1 Plus (9)
|
||||||
- Nokia 7 Plus (9)
|
- Nokia 7 Plus (9)
|
||||||
- Nvidia Shield K1 (7.0)
|
- Nvidia Shield K1 (7.0)
|
||||||
- Nvidia Shield Tablet (7.0)
|
- Nvidia Shield Tablet (7.0)
|
||||||
|
- OnePlus One (6.0.1)
|
||||||
- OnePlus 2 (6.0.1)
|
- OnePlus 2 (6.0.1)
|
||||||
- OnePlus X (6.0.1)
|
- OnePlus X (6.0.1)
|
||||||
- OnePlus 3 (8.0.0 & 9)
|
- OnePlus 3 (8.0.0 & 9)
|
||||||
@ -737,7 +752,7 @@ Releases from v4.0.0 are compatible with Magisk v19+.
|
|||||||
- OnePlus 6T (9)
|
- OnePlus 6T (9)
|
||||||
- OnePlus 7 GM1901/GM1905 (9)
|
- OnePlus 7 GM1901/GM1905 (9)
|
||||||
- OnePlus 7 GM1903 (9)
|
- OnePlus 7 GM1903 (9)
|
||||||
- OnePlus 7 Pro GM1911/GM1917 (9)
|
- OnePlus 7 Pro GM1911/GM1917 (9 & 10)
|
||||||
- OnePlus 7 Pro GM1913 (9)
|
- OnePlus 7 Pro GM1913 (9)
|
||||||
- OnePlus 7 Pro NR GM1920 (9)
|
- OnePlus 7 Pro NR GM1920 (9)
|
||||||
- OPPO Neo 7 A33w (5.1)
|
- OPPO Neo 7 A33w (5.1)
|
||||||
@ -806,6 +821,7 @@ Releases from v4.0.0 are compatible with Magisk v19+.
|
|||||||
- Sony Xperia Z5 Premium (7.1.1)
|
- Sony Xperia Z5 Premium (7.1.1)
|
||||||
- Sony Xperia Z5 Premium Dual (7.1.1)
|
- Sony Xperia Z5 Premium Dual (7.1.1)
|
||||||
- Vodafone Smart Ultra 6 (5.1.1)
|
- Vodafone Smart Ultra 6 (5.1.1)
|
||||||
|
- Walmart Onn 8 (9)
|
||||||
- Xiaomi Mi 3/4 (6.0.1)
|
- Xiaomi Mi 3/4 (6.0.1)
|
||||||
- Xiaomi Mi 4C (7.0)
|
- Xiaomi Mi 4C (7.0)
|
||||||
- Xiaomi Mi 5/5 Pro (7.0 & 8.0.0)
|
- Xiaomi Mi 5/5 Pro (7.0 & 8.0.0)
|
||||||
@ -814,9 +830,12 @@ Releases from v4.0.0 are compatible with Magisk v19+.
|
|||||||
- Xiaomi Mi 6 (8.0.0)
|
- Xiaomi Mi 6 (8.0.0)
|
||||||
- Xiaomi Mi 8 (8.1.0 & 9)
|
- Xiaomi Mi 8 (8.1.0 & 9)
|
||||||
- Xiaomi Mi 9 (9)
|
- Xiaomi Mi 9 (9)
|
||||||
|
- Xiaomi Mi 9 Lite (9)
|
||||||
|
- Xiaomi Mi 9T (9)
|
||||||
- Xiaomi Mi A1 (8.0.0 & 9)
|
- Xiaomi Mi A1 (8.0.0 & 9)
|
||||||
- Xiaomi Mi A2 (8.1.0 & 9)
|
- Xiaomi Mi A2 (8.1.0 & 9)
|
||||||
- Xiaomi Mi A2 Lite (9)
|
- Xiaomi Mi A2 Lite (9)
|
||||||
|
- Xiaomi Mi A3 (9)
|
||||||
- Xiaomi Mi Max (6.0.1)
|
- Xiaomi Mi Max (6.0.1)
|
||||||
- Xiaomi Mi Max 2 (7.1.1)
|
- Xiaomi Mi Max 2 (7.1.1)
|
||||||
- Xiaomi Mi Max 3 (9)
|
- Xiaomi Mi Max 3 (9)
|
||||||
@ -830,14 +849,16 @@ Releases from v4.0.0 are compatible with Magisk v19+.
|
|||||||
- Xiaomi Redmi 3/3 Pro (5.1.1)
|
- Xiaomi Redmi 3/3 Pro (5.1.1)
|
||||||
- Xiaomi Redmi 3S/X Prime (6.0.1)
|
- Xiaomi Redmi 3S/X Prime (6.0.1)
|
||||||
- Xiaomi Redmi 4 Prime (6.0.1)
|
- Xiaomi Redmi 4 Prime (6.0.1)
|
||||||
|
- Xiaomi Redmi 4A (7.1.2)
|
||||||
- Xiaomi Redmi 4X (6.0.1)
|
- Xiaomi Redmi 4X (6.0.1)
|
||||||
- Xiaomi Redmi 5A (7.1.2)
|
- Xiaomi Redmi 5A (7.1.2 & 8.1.0)
|
||||||
- Xiaomi Redmi Go (8.1.0)
|
- Xiaomi Redmi Go (8.1.0)
|
||||||
- Xiaomi Redmi K20 Pro (9)
|
- Xiaomi Redmi K20 Pro (9 & 10)
|
||||||
- Xiaomi Redmi Note 2 (5.0.2)
|
- Xiaomi Redmi Note 2 (5.0.2)
|
||||||
- Xiaomi Redmi Note 3 Pro (6.0.1)
|
- Xiaomi Redmi Note 3 Pro (6.0.1)
|
||||||
- Xiaomi Redmi Note 3 Pro SE (6.0.1)
|
- Xiaomi Redmi Note 3 Pro SE (6.0.1)
|
||||||
- Xiaomi Redmi Note 4/4X (7.0)
|
- Xiaomi Redmi Note 4/4X (7.0)
|
||||||
|
- Xiaomi Redmi Note 4 Mediatek (6.0)
|
||||||
- Xiaomi Redmi Note 5/5 Plus (7.1.2 & 8.1.0)
|
- Xiaomi Redmi Note 5/5 Plus (7.1.2 & 8.1.0)
|
||||||
- Xiaomi Redmi Note 5 Pro (8.1.0 & 9)
|
- Xiaomi Redmi Note 5 Pro (8.1.0 & 9)
|
||||||
- Xiaomi Redmi Note 5A Lite (7.1.2)
|
- Xiaomi Redmi Note 5A Lite (7.1.2)
|
||||||
|
@ -10,9 +10,6 @@ BOOTSTAGE="post"
|
|||||||
# Load functions
|
# Load functions
|
||||||
. $MODPATH/util_functions.sh
|
. $MODPATH/util_functions.sh
|
||||||
|
|
||||||
# Variables
|
|
||||||
MODULESPATH=$(dirname "$MODPATH")
|
|
||||||
|
|
||||||
# Start logging
|
# Start logging
|
||||||
log_start
|
log_start
|
||||||
bb_check
|
bb_check
|
||||||
@ -33,16 +30,26 @@ if [ "$PRINTCHK" == 1 ]; then
|
|||||||
fi
|
fi
|
||||||
|
|
||||||
# Check for the boot script and restore backup if deleted, or if the resetfile is present
|
# Check for the boot script and restore backup if deleted, or if the resetfile is present
|
||||||
|
RESETFILE=""
|
||||||
|
for ITEM in $RESETFILELST; do
|
||||||
|
if [ -f "$ITEM" ]; then
|
||||||
|
RESETFILE="$ITEM"
|
||||||
|
break
|
||||||
|
fi
|
||||||
|
done
|
||||||
if [ ! -f "$LATEFILE" ] || [ -f "$RESETFILE" ]; then
|
if [ ! -f "$LATEFILE" ] || [ -f "$RESETFILE" ]; then
|
||||||
if [ -f "$RESETFILE" ]; then
|
if [ -f "$RESETFILE" ]; then
|
||||||
RSTTXT="Resetting"
|
RSTTXT="Resetting"
|
||||||
rm -f $RESETFILE
|
for ITEM in $RESETFILELST; do
|
||||||
|
rm -f $ITEM
|
||||||
|
done
|
||||||
else
|
else
|
||||||
RSTTXT="Restoring"
|
RSTTXT="Restoring"
|
||||||
log_handler "The module settings file could not be found."
|
log_handler "The module settings file could not be found."
|
||||||
fi
|
fi
|
||||||
log_handler "$RSTTXT module settings file (${LATEFILE})."
|
log_handler "$RSTTXT module settings file (${LATEFILE})."
|
||||||
cp -af $MODPATH/propsconf_late $LATEFILE >> $LOGFILE 2>&1
|
cp -af $MODPATH/propsconf_late $LATEFILE >> $LOGFILE 2>&1
|
||||||
|
rm -f $MODPATH/system.prop >> $LOGFILE 2>&1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# Checks for the Universal SafetyNet Fix module and similar modules editing the device fingerprint
|
# Checks for the Universal SafetyNet Fix module and similar modules editing the device fingerprint
|
||||||
@ -65,38 +72,12 @@ else
|
|||||||
replace_fn PRINTMODULE 1 0 $LATEFILE
|
replace_fn PRINTMODULE 1 0 $LATEFILE
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# Get default values
|
# Save default values
|
||||||
log_handler "Checking device default values."
|
log_handler "Saving device prop values."
|
||||||
|
resetprop > $MHPCPATH/defaultprops
|
||||||
|
log_handler "Prop values saved to $MHPCPATH/defaultprops."
|
||||||
|
|
||||||
# Save default file values in propsconf_late
|
# Loading module settings
|
||||||
for ITEM in $VALPROPSLIST; do
|
|
||||||
TMPPROP=$(get_prop_type $ITEM | tr '[:lower:]' '[:upper:]')
|
|
||||||
ORIGPROP="ORIG${TMPPROP}"
|
|
||||||
ORIGTMP="$(get_file_value $LATEFILE "${ORIGPROP}=")"
|
|
||||||
CURRPROP="CURR${TMPPROP}"
|
|
||||||
CURRTMP="$(resetprop $ITEM)"
|
|
||||||
replace_fn $ORIGPROP "\"$ORIGTMP\"" "\"$CURRTMP\"" $LATEFILE
|
|
||||||
done
|
|
||||||
log_handler "Default values saved to $LATEFILE."
|
|
||||||
|
|
||||||
# Check if default file values are safe
|
|
||||||
replace_fn FILESAFE 0 1 $LATEFILE
|
|
||||||
for V in $PROPSLIST; do
|
|
||||||
FILEVALUE=$(resetprop $V)
|
|
||||||
log_handler "Checking ${V}=${FILEVALUE}"
|
|
||||||
safe_props $V $FILEVALUE
|
|
||||||
if [ "$SAFE" == 0 ]; then
|
|
||||||
echo "Prop $V set to triggering value in prop file." >> $LOGFILE 2>&1
|
|
||||||
replace_fn FILESAFE 1 0 $LATEFILE
|
|
||||||
else
|
|
||||||
if [ -z "$FILEVALUE" ]; then
|
|
||||||
echo "Could not retrieve value for prop $V." >> $LOGFILE 2>&1
|
|
||||||
elif [ "$SAFE" == 1 ]; then
|
|
||||||
echo "Prop $V set to \"safe\" value in prop file." >> $LOGFILE 2>&1
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
done
|
|
||||||
# Loading the new values
|
|
||||||
. $LATEFILE
|
. $LATEFILE
|
||||||
|
|
||||||
# Checks for configuration file
|
# Checks for configuration file
|
||||||
@ -139,54 +120,6 @@ custom_edit "CUSTOMPROPSPOST"
|
|||||||
prop_del
|
prop_del
|
||||||
echo -e "\n----------------------------------------" >> $LOGFILE 2>&1
|
echo -e "\n----------------------------------------" >> $LOGFILE 2>&1
|
||||||
|
|
||||||
# Edits build.prop
|
|
||||||
if [ "$FILESAFE" == 0 ]; then
|
|
||||||
log_handler "Checking for conflicting build.prop modules."
|
|
||||||
# Checks if any other modules are using a local copy of build.prop
|
|
||||||
BUILDMODULE=false
|
|
||||||
MODID=$(get_file_value $MODPATH/module.prop "id=")
|
|
||||||
for D in $(ls $MODULESPATH); do
|
|
||||||
if [ $D != "$MODID" ]; then
|
|
||||||
if [ -f "$MODULESPATH/$D/system/build.prop" ] || [ "$D" == "safetypatcher" ]; then
|
|
||||||
if [ ! -f "$MODULESPATH/$D/disable" ]; then
|
|
||||||
NAME=$(get_file_value $MODULESPATH/$D/module.prop "name=")
|
|
||||||
log_handler "Conflicting build.prop editing in module '$NAME'."
|
|
||||||
BUILDMODULE=true
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
done
|
|
||||||
if [ "$BUILDMODULE" == "true" ]; then
|
|
||||||
replace_fn BUILDPROPENB 1 0 $LATEFILE
|
|
||||||
else
|
|
||||||
replace_fn BUILDPROPENB 0 1 $LATEFILE
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Copies the stock build.prop to the module. Only if set in propsconf_late.
|
|
||||||
if [ "$BUILDPROPENB" == 1 ] && [ "$BUILDEDIT" == 1 ]; then
|
|
||||||
log_handler "Stock build.prop copied to module."
|
|
||||||
cp -af $MIRRORLOC/build.prop $MODPATH/system/build.prop >> $LOGFILE 2>&1
|
|
||||||
|
|
||||||
# Edits the module copy of build.prop
|
|
||||||
log_handler "Editing build.prop."
|
|
||||||
# ro.build props
|
|
||||||
change_prop_file "build"
|
|
||||||
# Fingerprint
|
|
||||||
if [ "$MODULEFINGERPRINT" ] && [ "$SETFINGERPRINT" == "true" ] && [ "$FINGERPRINTENB" == 1 ]; then
|
|
||||||
PRINTSTMP="$(grep "$ORIGFINGERPRINT" $MIRRORLOC/build.prop)"
|
|
||||||
for ITEM in $PRINTSTMP; do
|
|
||||||
replace_fn $(get_eq_left "$ITEM") $(get_eq_right "$ITEM") $(echo $MODULEFINGERPRINT | sed 's|\_\_.*||') $MODPATH/system/build.prop && log_handler "$(get_eq_left "$ITEM")=$(echo $MODULEFINGERPRINT | sed 's|\_\_.*||')"
|
|
||||||
done
|
|
||||||
fi
|
|
||||||
else
|
|
||||||
rm -f $MODPATH/system/build.prop
|
|
||||||
log_handler "Build.prop editing disabled."
|
|
||||||
fi
|
|
||||||
else
|
|
||||||
rm -f $MODPATH/system/build.prop
|
|
||||||
log_handler "Prop file editing disabled. All values ok."
|
|
||||||
fi
|
|
||||||
|
|
||||||
log_script_chk "post-fs-data.sh module script finished.\n\n===================="
|
log_script_chk "post-fs-data.sh module script finished.\n\n===================="
|
||||||
|
|
||||||
# Deletes the post-fs-data control file
|
# Deletes the post-fs-data control file
|
||||||
|
@ -4,21 +4,22 @@
|
|||||||
# Copyright (c) 2018-2019 Didgeridoohan @ XDA Developers
|
# Copyright (c) 2018-2019 Didgeridoohan @ XDA Developers
|
||||||
# Licence: MIT
|
# Licence: MIT
|
||||||
|
|
||||||
PRINTSV=63
|
PRINTSV=64
|
||||||
PRINTSTRANSF=350
|
PRINTSTRANSF=350
|
||||||
|
|
||||||
# Certified fingerprints
|
# Certified fingerprints
|
||||||
PRINTSLIST="
|
PRINTSLIST="
|
||||||
Asus Zenfone 2 Laser (6.0.1)=asus/WW_Z00L/ASUS_Z00L_63:6.0.1/MMB29P/WW_user_21.40.1220.2196_20180308:user/release-keys
|
Asus Zenfone 2 Laser (6.0.1)=asus/WW_Z00L/ASUS_Z00L_63:6.0.1/MMB29P/WW_user_21.40.1220.2196_20180308:user/release-keys
|
||||||
|
Asus Zenfone 3 Max (7.1.1 & 8.1.0)=asus/WW_Phone/ASUS_X00DD:7.1.1/NMF26F/14.0200.1712.347-20171214:user/release-keys;asus/WW_Phone/ASUS_X00DD:8.1.0/OPM1.171019.011/15.0200.1812.503-0:user/release-keys__2018-12-05
|
||||||
Asus Zenfone 4 Max (7.1.1)=asus/WW_Phone/ASUS_X00HD_4:7.1.1/NMF26F/14.2016.1801.372-20180119:user/release-keys
|
Asus Zenfone 4 Max (7.1.1)=asus/WW_Phone/ASUS_X00HD_4:7.1.1/NMF26F/14.2016.1801.372-20180119:user/release-keys
|
||||||
Asus ZenFone 5Z (9)=asus/WW_Z01RD/ASUS_Z01R_1:9/PPR1.180610.009/WW_90.11.162.72_20190531:user/release-keys__2019-05-01
|
Asus ZenFone 5Z (9)=asus/WW_Z01RD/ASUS_Z01R_1:9/PPR1.180610.009/WW_90.11.162.72_20190531:user/release-keys__2019-05-01
|
||||||
Asus Zenfone 6 (9.0)=asus/WW_I01WD/ASUS_I01WD:9/PPR2.181005.003/16.1210.1906.156-0:user/release-keys__2019-06-01
|
Asus Zenfone 6 (9)=asus/WW_I01WD/ASUS_I01WD:9/PPR2.181005.003/16.1220.1909.193-0:user/release-keys__2019-09-01
|
||||||
Asus Zenfone Max M1 (8.0.0)=asus/WW_X00PD/ASUS_X00P_4:8.0.0/OPR1.170623.032/15.00.1907.103:user/release-keys__2019-07-05
|
Asus Zenfone Max M1 (8.0.0)=asus/WW_X00PD/ASUS_X00P_4:8.0.0/OPR1.170623.032/15.00.1907.103:user/release-keys__2019-07-05
|
||||||
Asus Zenfone Max Pro M1 (8.1.0)=asus/RU_X00TD/ASUS_X00T_6:8.1.0/OPM1/15.2016.1902.340-20190216:user/release-keys__2019-02-01
|
Asus Zenfone Max Pro M1 (8.1.0)=asus/RU_X00TD/ASUS_X00T_6:8.1.0/OPM1/15.2016.1902.340-20190216:user/release-keys__2019-02-01
|
||||||
Asus ZenPad S 8.0 (6.0.1)=asus/WW_P01M/P01M_3:6.0.1/MMB29P/WW_P01M-V5.6.0-20170608:user/release-keys
|
Asus ZenPad S 8.0 (6.0.1)=asus/WW_P01M/P01M_3:6.0.1/MMB29P/WW_P01M-V5.6.0-20170608:user/release-keys
|
||||||
BLU R1 HD 2018 (7.0)=BLU/BLU_S1/S0320WW:7.0/NRD90M/1514191903:user/release-keys
|
BLU R1 HD 2018 (7.0)=BLU/BLU_S1/S0320WW:7.0/NRD90M/1514191903:user/release-keys
|
||||||
Elephone U Pro (8.0.0)=Elephone/U_Pro/U_Pro:8.0.0/Elephone_U_Pro_20180917/09172123:user/release-keys__2018-09-05
|
Elephone U Pro (8.0.0)=Elephone/U_Pro/U_Pro:8.0.0/Elephone_U_Pro_20180917/09172123:user/release-keys__2018-09-05
|
||||||
Essential PH-1 (9)=essential/mata/mata:9/PQ1A.190105.112/550:user/release-keys__2019-08-05
|
Essential PH-1 (9 & 10)=essential/mata/mata:9/PQ1A.190105.112/550:user/release-keys__2019-08-05;essential/mata/mata:10/QP1A.190711.148/446:user/release-keys__2019-10-05
|
||||||
Google Nexus 4 (5.1.1)=google/occam/mako:5.1.1/LMY48T/2237560:user/release-keys
|
Google Nexus 4 (5.1.1)=google/occam/mako:5.1.1/LMY48T/2237560:user/release-keys
|
||||||
Google Nexus 5 (6.0.1)=google/hammerhead/hammerhead:6.0.1/M4B30Z/3437181:user/release-keys
|
Google Nexus 5 (6.0.1)=google/hammerhead/hammerhead:6.0.1/M4B30Z/3437181:user/release-keys
|
||||||
Google Nexus 5X (8.1.0)=google/bullhead/bullhead:8.1.0/OPM7.181205.001/5080180:user/release-keys__2018-12-05
|
Google Nexus 5X (8.1.0)=google/bullhead/bullhead:8.1.0/OPM7.181205.001/5080180:user/release-keys__2018-12-05
|
||||||
@ -32,15 +33,15 @@ Google Nexus 9 WiFi (7.1.1)=google/volantis/flounder:7.1.1/N9F27M/4333998:user/r
|
|||||||
Google Nexus 9 LTE (7.1.1)=google/volantisg/flounder_lte:7.1.1/N4F27P/4333386:user/release-keys
|
Google Nexus 9 LTE (7.1.1)=google/volantisg/flounder_lte:7.1.1/N4F27P/4333386:user/release-keys
|
||||||
Google Nexus 10 (5.1.1)=google/mantaray/manta:5.1.1/LMY49J/2640980:user/release-keys
|
Google Nexus 10 (5.1.1)=google/mantaray/manta:5.1.1/LMY49J/2640980:user/release-keys
|
||||||
Google Nexus Player (6.0.1)=google/fugu/fugu:6.0.1/MMB29U/2495654:user/release-keys
|
Google Nexus Player (6.0.1)=google/fugu/fugu:6.0.1/MMB29U/2495654:user/release-keys
|
||||||
Google Pixel (8.1.0 & 9)=google/sailfish/sailfish:8.1.0/OPM2.171019.029/4657601:user/release-keys;google/sailfish/sailfish:9/PQ3A.190801.002/5670241:user/release-keys__2019-08-01
|
Google Pixel (8.1.0 & 9 & 10)=google/sailfish/sailfish:8.1.0/OPM2.171019.029/4657601:user/release-keys;google/sailfish/sailfish:9/PQ3A.190801.002/5670241:user/release-keys__2019-08-01;google/sailfish/sailfish:10/QP1A.191005.007.A1/5908163:user/release-keys__2019-10-06
|
||||||
Google Pixel XL (8.1.0 & 9)=google/marlin/marlin:8.1.0/OPM2.171019.029/4657601:user/release-keys;google/marlin/marlin:9/PQ3A.190801.002/5670241:user/release-keys__2019-08-01
|
Google Pixel XL (8.1.0 & 9 & 10)=google/marlin/marlin:8.1.0/OPM2.171019.029/4657601:user/release-keys;google/marlin/marlin:9/PQ3A.190801.002/5670241:user/release-keys__2019-08-01;google/marlin/marlin:10/QP1A.191005.007.A1/5908163:user/release-keys__2019-10-06
|
||||||
Google Pixel 2 (8.1.0 & 9)=google/walleye/walleye:8.1.0/OPM2.171019.029/4657601:user/release-keys;google/walleye/walleye:9/PQ3A.190801.002/5670241:user/release-keys__2019-08-01
|
Google Pixel 2 (8.1.0 & 9 & 10)=google/walleye/walleye:8.1.0/OPM2.171019.029/4657601:user/release-keys;google/walleye/walleye:9/PQ3A.190801.002/5670241:user/release-keys__2019-08-01;google/walleye/walleye:10/QP1A.191005.007.A1/5908163:user/release-keys__2019-10-06
|
||||||
Google Pixel 2 XL (8.1.0 & 9)=google/taimen/taimen:8.1.0/OPM4.171019.016.B1/4720843:user/release-keys;google/taimen/taimen:9/PQ3A.190801.002/5670241:user/release-keys__2019-08-01
|
Google Pixel 2 XL (8.1.0 & 9 & 10)=google/taimen/taimen:8.1.0/OPM4.171019.016.B1/4720843:user/release-keys;google/taimen/taimen:9/PQ3A.190801.002/5670241:user/release-keys__2019-08-01;google/taimen/taimen:10/QP1A.191005.007.A1/5908163:user/release-keys__2019-10-06
|
||||||
Google Pixel 3 (9)=google/blueline/blueline:9/PQ3A.190801.002/5670241:user/release-keys__2019-08-01
|
Google Pixel 3 (9 & 10)=google/blueline/blueline:9/PQ3A.190801.002/5670241:user/release-keys__2019-08-01;google/blueline/blueline:10/QP1A.191005.007/5878874:user/release-keys__2019-10-05
|
||||||
Google Pixel 3 XL (9)=google/crosshatch/crosshatch:9/PQ3A.190801.002/5670241:user/release-keys__2019-08-01
|
Google Pixel 3 XL (9 & 10)=google/crosshatch/crosshatch:9/PQ3A.190801.002/5670241:user/release-keys__2019-08-01;google/crosshatch/crosshatch:10/QP1A.191005.007/5878874:user/release-keys__2019-10-05
|
||||||
Google Pixel 3a (9)=google/sargo/sargo:9/PQ3B.190801.002/5674421:user/release-keys__2019-08-01
|
Google Pixel 3a (9 & 10)=google/sargo/sargo:9/PQ3B.190801.002/5674421:user/release-keys__2019-08-01;google/sargo/sargo:10/QP1A.191005.007/5878874:user/release-keys__2019-10-05
|
||||||
Google Pixel 3a XL (9)=google/bonito/bonito:9/PQ3B.190801.002/5674421:user/release-keys__2019-08-01
|
Google Pixel 3a XL (9 & 10)=google/bonito/bonito:9/PQ3B.190801.002/5674421:user/release-keys__2019-08-01;google/bonito/bonito:10/QP1A.191005.007/5878874:user/release-keys__2019-10-05
|
||||||
Google Pixel C (8.1.0)=google/ryu/dragon:8.1.0/OPM8.190605.003/5524042:user/release-keys__2019-06-05
|
Google Pixel C (8.1.0)=google/ryu/dragon:8.1.0/OPM8.190605.005/5749003:user/release-keys__2019-06-05
|
||||||
HTC 10 (6.0.1)=htc/HTCOneM10vzw/htc_pmewl:6.0.1/MMB29M/774095.8:user/release-keys
|
HTC 10 (6.0.1)=htc/HTCOneM10vzw/htc_pmewl:6.0.1/MMB29M/774095.8:user/release-keys
|
||||||
HTC U11 (8.0.0)=htc/ocndtwl_01405/htc_ocndtwl:8.0.0/OPR6.170623.013/1017190.2:user/release-keys
|
HTC U11 (8.0.0)=htc/ocndtwl_01405/htc_ocndtwl:8.0.0/OPR6.170623.013/1017190.2:user/release-keys
|
||||||
HTC U12 Plus (8.0.0)=htc/imeuhl_00617/htc_imeuhl:8.0.0/OPR1.170623.032/1041457.3:user/release-keys__2018-06-01
|
HTC U12 Plus (8.0.0)=htc/imeuhl_00617/htc_imeuhl:8.0.0/OPR1.170623.032/1041457.3:user/release-keys__2018-06-01
|
||||||
@ -49,7 +50,7 @@ Huawei Honor 8X (8.1.0)=HONOR/JSN-L21RU/HWJSN-H:8.1.0/HONORJSN-L21/101(C10):user
|
|||||||
Huawei Honor 9 (8.0.0 & 9)=HONOR/STF-L09/HWSTF:8.0.0/HUAWEISTF-L09/364(C432):user/release-keys;HONOR/STF-L09/HWSTF:9/HUAWEISTF-L09/157C432R1:user/release-keys__2019-02-01
|
Huawei Honor 9 (8.0.0 & 9)=HONOR/STF-L09/HWSTF:8.0.0/HUAWEISTF-L09/364(C432):user/release-keys;HONOR/STF-L09/HWSTF:9/HUAWEISTF-L09/157C432R1:user/release-keys__2019-02-01
|
||||||
Huawei Mate 10 (8.0.0)=HUAWEI/ALP-L29/HWALP:8.0.0/HUAWEIALP-L29S/143(C636):user/release-keys__2018-10-01
|
Huawei Mate 10 (8.0.0)=HUAWEI/ALP-L29/HWALP:8.0.0/HUAWEIALP-L29S/143(C636):user/release-keys__2018-10-01
|
||||||
Huawei Mate 10 Pro (8.0.0)=HUAWEI/BLA-L29/HWBLA:8.0.0/HUAWEIBLA-L29S/137(C432):user/release-keys
|
Huawei Mate 10 Pro (8.0.0)=HUAWEI/BLA-L29/HWBLA:8.0.0/HUAWEIBLA-L29S/137(C432):user/release-keys
|
||||||
Huawei Mate 20 Pro (9)=HUAWEI/LYA-L29/HWLYA:9/HUAWEILYA-L29/310C432:user/release-keys__2019-07-05
|
Huawei Mate 20 Pro (9)=HUAWEI/LYA-L29/HWLYA:9/HUAWEILYA-L29/320C432:user/release-keys__2019-08-01
|
||||||
Huawei P8 Lite (8.0.0)=HUAWEI/PRA-LX1/HWPRA-H:8.0.0/HUAWEIPRA-LX1/401(C432):user/release-keys__2019-01-01
|
Huawei P8 Lite (8.0.0)=HUAWEI/PRA-LX1/HWPRA-H:8.0.0/HUAWEIPRA-LX1/401(C432):user/release-keys__2019-01-01
|
||||||
Huawei P9 (7.0)=HUAWEI/EVA-L09/HWEVA:7.0/HUAWEIEVA-L09/C432B502:user/release-keys
|
Huawei P9 (7.0)=HUAWEI/EVA-L09/HWEVA:7.0/HUAWEIEVA-L09/C432B502:user/release-keys
|
||||||
Huawei P9 Lite (7.0)=HUAWEI/VNS-L31/HWVNS-H:7.0/HUAWEIVNS-L31/C432B414:user/release-keys__2018-06-01
|
Huawei P9 Lite (7.0)=HUAWEI/VNS-L31/HWVNS-H:7.0/HUAWEIVNS-L31/C432B414:user/release-keys__2018-06-01
|
||||||
@ -65,7 +66,6 @@ LG G5 H850 (8.0.0)=lge/h1_global_com/h1:8.0.0/OPR1.170623.032/190380127377a:user
|
|||||||
LG G5 H830 (8.0.0)=lge/h1_tmo_us/h1:8.0.0/OPR1.170623.032/182251913485f:user/release-keys__2018-08-01
|
LG G5 H830 (8.0.0)=lge/h1_tmo_us/h1:8.0.0/OPR1.170623.032/182251913485f:user/release-keys__2018-08-01
|
||||||
LG G5 RS988 (7.0)=lge/h1_lra_us/h1:7.0/NRD90U/1707917149a1b:user/release-keys
|
LG G5 RS988 (7.0)=lge/h1_lra_us/h1:7.0/NRD90U/1707917149a1b:user/release-keys
|
||||||
LG G6 H870 (7.0 & 8.0.0)=lge/lucye_global_com/lucye:7.0/NRD90U/171732341982c:user/release-keys;lge/lucye_global_com/lucye:8.0.0/OPR1.170623.032/183301757502c:user/release-keys__2018-11-01
|
LG G6 H870 (7.0 & 8.0.0)=lge/lucye_global_com/lucye:7.0/NRD90U/171732341982c:user/release-keys;lge/lucye_global_com/lucye:8.0.0/OPR1.170623.032/183301757502c:user/release-keys__2018-11-01
|
||||||
LG G6 H872 (8.0.0)=lge/lucye_tmo_us/lucye:8.0.0/OPR1.170623.032/183621644ce05:user/release-keys__2019_01-01
|
|
||||||
LG V20 H918 (8.0.0)=lge/elsa_tmo_us/elsa:8.0.0/OPR1.170623.032/1831917495b33:user/release-keys__2018-11-01
|
LG V20 H918 (8.0.0)=lge/elsa_tmo_us/elsa:8.0.0/OPR1.170623.032/1831917495b33:user/release-keys__2018-11-01
|
||||||
LG V20 H910 (8.0.0)=lge/elsa_att_us/elsa:8.0.0/OPR1.170623.032/181871124f959:user/release-keys__2018-06-01
|
LG V20 H910 (8.0.0)=lge/elsa_att_us/elsa:8.0.0/OPR1.170623.032/181871124f959:user/release-keys__2018-06-01
|
||||||
LG V20 H990DS (7.0)=lge/elsa_global_com/elsa:7.0/NRD90M/1801800193678:user/release-keys
|
LG V20 H990DS (7.0)=lge/elsa_global_com/elsa:7.0/NRD90M/1801800193678:user/release-keys
|
||||||
@ -82,27 +82,29 @@ Motorola Moto E5 Plus (8.0.0)=motorola/hannah_sprint/hannah:8.0.0/OCPS27.91-32-4
|
|||||||
Motorola Moto G4 (7.0 & 8.1.0)=motorola/athene/athene:7.0/NPJS25.93-14-13/3:user/release-keys;motorola/athene/athene:8.1.0/OPJ28.111-22/532da:user/release-keys__2018-12-01
|
Motorola Moto G4 (7.0 & 8.1.0)=motorola/athene/athene:7.0/NPJS25.93-14-13/3:user/release-keys;motorola/athene/athene:8.1.0/OPJ28.111-22/532da:user/release-keys__2018-12-01
|
||||||
Motorola Moto G5 (7.0)=motorola/cedric/cedric:7.0/NPPS25.137-15-11/11:user/release-keys
|
Motorola Moto G5 (7.0)=motorola/cedric/cedric:7.0/NPPS25.137-15-11/11:user/release-keys
|
||||||
Motorola Moto G5 Plus (7.0)=motorola/potter_n/potter_n:7.0/NPNS25.137-33-11/11:user/release-keys
|
Motorola Moto G5 Plus (7.0)=motorola/potter_n/potter_n:7.0/NPNS25.137-33-11/11:user/release-keys
|
||||||
Motorola Moto G5S (7.1.1 & 8.1.0)=motorola/montana/montana:7.1.1/NPPS26.102-49-8/6:user/release-keys;motorola/montana/montana:8.1.0/OPPS28.65-37-7-4/1dd5:user/release-keys__2019-02-01
|
Motorola Moto G5S (7.1.1 & 8.1.0)=motorola/montana/montana:7.1.1/NPPS26.102-49-8/6:user/release-keys;motorola/montana/montana:8.1.0/OPPS28.65-37-7-11/7f8a6:user/release-keys__2019-08-01
|
||||||
Motorola Moto G6 (9)=motorola/ali/ali:9/PPS29.55-34/0c5d:user/release-keys__2019-02-01
|
Motorola Moto G6 (9)=motorola/ali/ali:9/PPS29.55-34/0c5d:user/release-keys__2019-02-01
|
||||||
Motorola Moto G6 Play (8.0.0 & 9)=motorola/jeter_sprint/jeter:8.0.0/OCP27.91-23/23:user/release-keys;motorola/aljeter/aljeter:9/PPP29.55-25/08c6:user/release-keys__2019-01-01
|
Motorola Moto G6 Play (8.0.0 & 9)=motorola/jeter_sprint/jeter:8.0.0/OCP27.91-23/23:user/release-keys;motorola/aljeter/aljeter:9/PPP29.55-25/08c6:user/release-keys__2019-01-01
|
||||||
Motorola Moto G6 Plus (9)=motorola/evert_amx_n/evert_n:9/PPWS29.116-16-6/5cbfe:user/release-keys__2019-05-01
|
Motorola Moto G6 Plus (9)=motorola/evert_amx_n/evert_n:9/PPWS29.116-16-6/5cbfe:user/release-keys__2019-05-01
|
||||||
Motorola Moto X4 (8.0.0)=motorola/payton/payton:8.0.0/OPWS27.57-25-6-10/12:user/release-keys
|
Motorola Moto X4 (8.0.0)=motorola/payton/payton:8.0.0/OPWS27.57-25-6-10/12:user/release-keys
|
||||||
Motorola Moto Z2 Play (8.0.0)=motorola/albus/albus:8.0.0/OPS27.76-12-25/26:user/release-keys
|
Motorola Moto Z2 Play (8.0.0)=motorola/albus/albus:8.0.0/OPS27.76-12-25/26:user/release-keys
|
||||||
Nextbook Ares 8A (6.0.1)=NextBook/NX16A8116K/NX16A8116K:6.0.1/MMB29M/V4.0.3:user/release-keys
|
Nextbook Ares 8A (6.0.1)=NextBook/NX16A8116K/NX16A8116K:6.0.1/MMB29M/V4.0.3:user/release-keys
|
||||||
|
Nokia 6.1 Plus (9)=Nokia/Dragon_00WW/DRG_sprout:9/PPR1.180610.011/00WW_3_54J:user/release-keys__2019-08-01
|
||||||
Nokia 7 Plus (9)=Nokia/Onyx_00WW/B2N_sprout:9/PPR1.180610.011/00WW_3_53B:user/release-keys__2019-05-01
|
Nokia 7 Plus (9)=Nokia/Onyx_00WW/B2N_sprout:9/PPR1.180610.011/00WW_3_53B:user/release-keys__2019-05-01
|
||||||
Nvidia Shield K1 (7.0)=nvidia/sb_na_wf/shieldtablet:7.0/NRD90M/1928188_1065.2559:user/release-keys
|
Nvidia Shield K1 (7.0)=nvidia/sb_na_wf/shieldtablet:7.0/NRD90M/1928188_1065.2559:user/release-keys
|
||||||
Nvidia Shield Tablet (7.0)=nvidia/wx_na_wf/shieldtablet:7.0/NRD90M/1928188_904.2811:user/release-keys
|
Nvidia Shield Tablet (7.0)=nvidia/wx_na_wf/shieldtablet:7.0/NRD90M/1928188_904.2811:user/release-keys
|
||||||
|
OnePlus One (6.0.1)=oneplus/bacon/A0001:6.0.1/MMB29X/ZNH0EAS2JK:user/release-keys
|
||||||
OnePlus 2 (6.0.1)=OnePlus/OnePlus2/OnePlus2:6.0.1/MMB29M/1447858500:user/release-keys
|
OnePlus 2 (6.0.1)=OnePlus/OnePlus2/OnePlus2:6.0.1/MMB29M/1447858500:user/release-keys
|
||||||
OnePlus X (6.0.1)=OnePlus/OnePlus/OnePlus:6.0.1/MMB29M/10281213:user/release-keys
|
OnePlus X (6.0.1)=OnePlus/OnePlus/OnePlus:6.0.1/MMB29M/10281213:user/release-keys
|
||||||
OnePlus 3 (8.0.0 & 9)=OnePlus/OnePlus3/OnePlus3:8.0.0/OPR1.170623.032/1809142047:user/release-keys__2018-09-01;OnePlus/OnePlus3/OnePlus3:9/PKQ1.181203.001/1907311932:user/release-keys__2019-08-01
|
OnePlus 3 (8.0.0 & 9)=OnePlus/OnePlus3/OnePlus3:8.0.0/OPR1.170623.032/1809142047:user/release-keys__2018-09-01;OnePlus/OnePlus3/OnePlus3:9/PKQ1.181203.001/1907311932:user/release-keys__2019-08-01
|
||||||
OnePlus 3T (8.0.0 & 9)=OnePlus/OnePlus3/OnePlus3T:8.0.0/OPR1.170623.032/1812060016:user/release-keys__2018-11-01;OnePlus/OnePlus3/OnePlus3T:9/PKQ1.181203.001/1907311932:user/release-keys__2019-08-01
|
OnePlus 3T (8.0.0 & 9)=OnePlus/OnePlus3/OnePlus3T:8.0.0/OPR1.170623.032/1812060016:user/release-keys__2018-11-01;OnePlus/OnePlus3/OnePlus3T:9/PKQ1.181203.001/1907311932:user/release-keys__2019-08-01
|
||||||
OnePlus 5 (8.1.0 & 9)=OnePlus/OnePlus5/OnePlus5:8.1.0/OPM1.171019.011/1809241512:user/release-keys__2018-09-01;OnePlus/OnePlus5/OnePlus5:9/PKQ1.180716.001/1907311824:user/release-keys__2019-08-01
|
OnePlus 5 (8.1.0 & 9)=OnePlus/OnePlus5/OnePlus5:8.1.0/OPM1.171019.011/1809241512:user/release-keys__2018-09-01;OnePlus/OnePlus5/OnePlus5:9/PKQ1.180716.001/1910081949:user/release-keys__2019-10-01
|
||||||
OnePlus 5T (8.1.0 & 9)=OnePlus/OnePlus5T/OnePlus5T:8.1.0/OPM1.171019.011/1809241512:user/release-keys__2018-09-01;OnePlus/OnePlus5T/OnePlus5T:9/PKQ1.180716.001/1907311828:user/release-keys__2019-08-01
|
OnePlus 5T (8.1.0 & 9)=OnePlus/OnePlus5T/OnePlus5T:8.1.0/OPM1.171019.011/1809241512:user/release-keys__2018-09-01;OnePlus/OnePlus5T/OnePlus5T:9/PKQ1.180716.001/1910081948:user/release-keys__2019-10-01
|
||||||
OnePlus 6 (8.1.0 & 9)=OnePlus/OnePlus6/OnePlus6:8.1.0/OPM1.171019.011/06140300:user/release-keys;OnePlus/OnePlus6/OnePlus6:9/PKQ1.180716.001/1908012000:user/release-keys__2019-08-01
|
OnePlus 6 (8.1.0 & 9)=OnePlus/OnePlus6/OnePlus6:8.1.0/OPM1.171019.011/06140300:user/release-keys;OnePlus/OnePlus6/OnePlus6:9/PKQ1.180716.001/1908012000:user/release-keys__2019-08-01
|
||||||
OnePlus 6T (9)=OnePlus/OnePlus6T/OnePlus6T:9/PKQ1.180716.001/1908012000:user/release-keys__2019-08-01
|
OnePlus 6T (9)=OnePlus/OnePlus6T/OnePlus6T:9/PKQ1.180716.001/1909112330:user/release-keys__2019-08-01
|
||||||
OnePlus 7 GM1901/GM1905 (9)=OnePlus/OnePlus7/OnePlus7:9/PKQ1.190110.001/1907280700:user/release-keys__2019-08-01
|
OnePlus 7 GM1901/GM1905 (9)=OnePlus/OnePlus7/OnePlus7:9/PKQ1.190110.001/1907280700:user/release-keys__2019-08-01
|
||||||
OnePlus 7 GM1903 (9)=OnePlus/OnePlus7_EEA/OnePlus7:9/PKQ1.190110.001/1907280700:user/release-keys__2019-08-01
|
OnePlus 7 GM1903 (9)=OnePlus/OnePlus7_EEA/OnePlus7:9/PKQ1.190110.001/1907280700:user/release-keys__2019-08-01
|
||||||
OnePlus 7 Pro GM1911/GM1917 (9)=OnePlus/OnePlus7Pro/OnePlus7Pro:9/PKQ1.190110.001/1907281556:user/release-keys__2019-08-01
|
OnePlus 7 Pro GM1911/GM1917 (9 & 10)=OnePlus/OnePlus7Pro/OnePlus7Pro:9/PKQ1.190110.001/1907281556:user/release-keys__2019-08-01;OnePlus/OnePlus7Pro/OnePlus7Pro:10/QKQ1.190716.003/1909010630:user/release-keys__2019-09-05
|
||||||
OnePlus 7 Pro GM1913 (9)=OnePlus/OnePlus7Pro_EEA/OnePlus7Pro:9/PKQ1.190110.001/1907281556:user/release-keys__2019-08-01
|
OnePlus 7 Pro GM1913 (9)=OnePlus/OnePlus7Pro_EEA/OnePlus7Pro:9/PKQ1.190110.001/1907281556:user/release-keys__2019-08-01
|
||||||
OnePlus 7 Pro NR GM1920 (9)=OnePlus/OnePlus7ProNR_EEA/OnePlus7ProNR:9/PKQ1.190223.001/1907280803:user/release-keys__2019-06-01
|
OnePlus 7 Pro NR GM1920 (9)=OnePlus/OnePlus7ProNR_EEA/OnePlus7ProNR:9/PKQ1.190223.001/1907280803:user/release-keys__2019-06-01
|
||||||
OPPO Neo 7 A33w (5.1)=OPPO/A33w/A33w:5.1/LMY47I/1487829433:user/release-keys
|
OPPO Neo 7 A33w (5.1)=OPPO/A33w/A33w:5.1/LMY47I/1487829433:user/release-keys
|
||||||
@ -110,7 +112,7 @@ OPPO Neo 7 A1603 (5.1)=OPPO/A1603/A1603:5.1/LMY47I/1489407760:user/release-keys
|
|||||||
Razer Phone (8.1.0)=razer/cheryl/cheryl:8.1.0/OPM1.171019.011-RZR-180803/6033:user/release-keys__2018-07-05
|
Razer Phone (8.1.0)=razer/cheryl/cheryl:8.1.0/OPM1.171019.011-RZR-180803/6033:user/release-keys__2018-07-05
|
||||||
Razer Phone 2 (8.1.0)=razer/cheryl2/aura:8.1.0/O-MR2-RC009-RZR-181124/2009:user/release-keys__2018-10-05
|
Razer Phone 2 (8.1.0)=razer/cheryl2/aura:8.1.0/O-MR2-RC009-RZR-181124/2009:user/release-keys__2018-10-05
|
||||||
Samsung Galaxy A5 2015 (6.0.1)=samsung/a5ultexx/a5ulte:6.0.1/MMB29M/A500FUXXU1CPH3:user/release-keys
|
Samsung Galaxy A5 2015 (6.0.1)=samsung/a5ultexx/a5ulte:6.0.1/MMB29M/A500FUXXU1CPH3:user/release-keys
|
||||||
Samsung Galaxy A5 2017 (8.0.0)=samsung/a5y17ltexx/a5y17lte:8.0.0/R16NW/A520FXXU4CRE8:user/release-keys__2018-05-01
|
Samsung Galaxy A5 2017 (8.0.0)=samsung/a5y17ltexx/a5y17lte:8.0.0/R16NW/A520FXXUBCSI1:user/release-keys__2019-09-01
|
||||||
Samsung Galaxy A6 Plus (9)=samsung/a6pltedx/a6plte:9/PPR1.180610.011/A605GDXU3BSC6:user/release-keys__2019-03-01
|
Samsung Galaxy A6 Plus (9)=samsung/a6pltedx/a6plte:9/PPR1.180610.011/A605GDXU3BSC6:user/release-keys__2019-03-01
|
||||||
Samsung Galaxy A8 Plus (7.1.1)=samsung/jackpot2ltexx/jackpot2lte:7.1.1/NMF26X/A730FXXU2ARD1:user/release-keys
|
Samsung Galaxy A8 Plus (7.1.1)=samsung/jackpot2ltexx/jackpot2lte:7.1.1/NMF26X/A730FXXU2ARD1:user/release-keys
|
||||||
Samsung Galaxy Grand Prime (5.0.2)=samsung/fortuna3gdtvvj/fortuna3gdtv:5.0.2/LRX22G/G530BTVJU1BPH4:user/release-keys
|
Samsung Galaxy Grand Prime (5.0.2)=samsung/fortuna3gdtvvj/fortuna3gdtv:5.0.2/LRX22G/G530BTVJU1BPH4:user/release-keys
|
||||||
@ -171,6 +173,7 @@ Sony Xperia Z5 Dual (7.1.1)=Sony/E6633/E6633:7.1.1/32.4.A.1.54/3761073091:user/r
|
|||||||
Sony Xperia Z5 Premium (7.1.1)=Sony/E6853/E6853:7.1.1/32.4.A.1.54/3761073091:user/release-keys
|
Sony Xperia Z5 Premium (7.1.1)=Sony/E6853/E6853:7.1.1/32.4.A.1.54/3761073091:user/release-keys
|
||||||
Sony Xperia Z5 Premium Dual (7.1.1)=Sony/E6883/E6883:7.1.1/32.4.A.1.54/3761073091:user/release-keys
|
Sony Xperia Z5 Premium Dual (7.1.1)=Sony/E6883/E6883:7.1.1/32.4.A.1.54/3761073091:user/release-keys
|
||||||
Vodafone Smart Ultra 6 (5.1.1)=Vodafone/P839V55/P839V55:5.1.1/LMY47V/20161227.134319.15534:user/release-keys
|
Vodafone Smart Ultra 6 (5.1.1)=Vodafone/P839V55/P839V55:5.1.1/LMY47V/20161227.134319.15534:user/release-keys
|
||||||
|
Walmart Onn 8 (9)=onn/ONA19TB002/ONA19TB002:9/PPR1.180610.011/1551232410:user/release-keys__2019-01-05
|
||||||
Xiaomi Mi 3/4 (6.0.1)=Xiaomi/cancro/cancro:6.0.1/MMB29M/V9.5.2.0.MXDMIFA:user/release-keys
|
Xiaomi Mi 3/4 (6.0.1)=Xiaomi/cancro/cancro:6.0.1/MMB29M/V9.5.2.0.MXDMIFA:user/release-keys
|
||||||
Xiaomi Mi 4C (7.0)=Xiaomi/libra/libra:7.0/NRD90M/V9.6.2.0.NXKCNFD:user/release-keys
|
Xiaomi Mi 4C (7.0)=Xiaomi/libra/libra:7.0/NRD90M/V9.6.2.0.NXKCNFD:user/release-keys
|
||||||
Xiaomi Mi 5/5 Pro (7.0 & 8.0.0)=Xiaomi/gemini/gemini:7.0/NRD90M/V9.2.1.0.NAAMIEK:user/release-keys;Xiaomi/gemini/gemini:8.0.0/OPR1.170623.032/V9.6.1.0.OAAMIFD:user/release-keys
|
Xiaomi Mi 5/5 Pro (7.0 & 8.0.0)=Xiaomi/gemini/gemini:7.0/NRD90M/V9.2.1.0.NAAMIEK:user/release-keys;Xiaomi/gemini/gemini:8.0.0/OPR1.170623.032/V9.6.1.0.OAAMIFD:user/release-keys
|
||||||
@ -179,9 +182,12 @@ Xiaomi Mi 5S Plus (6.0.1 & 7.0)=Xiaomi/natrium/natrium:6.0.1/MXB48T/V8.5.2.0.MBG
|
|||||||
Xiaomi Mi 6 (8.0.0)=Xiaomi/sagit/sagit:8.0.0/OPR1.170623.027/V9.2.3.0.OCAMIEK:user/release-keys
|
Xiaomi Mi 6 (8.0.0)=Xiaomi/sagit/sagit:8.0.0/OPR1.170623.027/V9.2.3.0.OCAMIEK:user/release-keys
|
||||||
Xiaomi Mi 8 (8.1.0 & 9)=Xiaomi/dipper/dipper:8.1.0/OPM1.171019.011/V9.5.5.0.OEAMIFA:user/release-keys;Xiaomi/dipper/dipper:9/PKQ1.180729.001/V10.2.3.0.PEAMIXM:user/release-keys__2019-02-01
|
Xiaomi Mi 8 (8.1.0 & 9)=Xiaomi/dipper/dipper:8.1.0/OPM1.171019.011/V9.5.5.0.OEAMIFA:user/release-keys;Xiaomi/dipper/dipper:9/PKQ1.180729.001/V10.2.3.0.PEAMIXM:user/release-keys__2019-02-01
|
||||||
Xiaomi Mi 9 (9)=Xiaomi/cepheus_eea/cepheus:9/PKQ1.181121.001/V10.2.27.0.PFAEUXM:user/release-keys__2019-06-01
|
Xiaomi Mi 9 (9)=Xiaomi/cepheus_eea/cepheus:9/PKQ1.181121.001/V10.2.27.0.PFAEUXM:user/release-keys__2019-06-01
|
||||||
|
Xiaomi Mi 9 Lite (9)=Xiaomi/pyxis/pyxis:9/PKQ1.181121.001/V10.3.1.0.PFCMIXM:user/release-keys__2019-08-01
|
||||||
|
Xiaomi Mi 9T (9)=Xiaomi/davinci_eea/davinci:9/PKQ1.190302.001/V10.3.12.0.PFJEUXM:user/release-keys__2019-07-01
|
||||||
Xiaomi Mi A1 (8.0.0 & 9)=xiaomi/tissot/tissot_sprout:8.0.0/OPR1.170623.026/V.9.5.10.0.ODHMIFA:user/release-keys;xiaomi/tissot/tissot_sprout:9/PKQ1.180917.001/V10.0.4.0.PDHMIXM:user/release-keys__2019-01-05
|
Xiaomi Mi A1 (8.0.0 & 9)=xiaomi/tissot/tissot_sprout:8.0.0/OPR1.170623.026/V.9.5.10.0.ODHMIFA:user/release-keys;xiaomi/tissot/tissot_sprout:9/PKQ1.180917.001/V10.0.4.0.PDHMIXM:user/release-keys__2019-01-05
|
||||||
Xiaomi Mi A2 (8.1.0 & 9)=xiaomi/jasmine/jasmine_sprout:8.1.0/OPM1.171019.011/V9.6.16.0.ODIMIFE:user/release-keys__2018-11-05;xiaomi/jasmine/jasmine_sprout:9/PKQ1.180904.001/V10.0.7.0.PDIMIXM:user/release-keys__2019-03-05
|
Xiaomi Mi A2 (8.1.0 & 9)=xiaomi/jasmine/jasmine_sprout:8.1.0/OPM1.171019.011/V9.6.16.0.ODIMIFE:user/release-keys__2018-11-05;xiaomi/jasmine/jasmine_sprout:9/PKQ1.180904.001/V10.0.14.0.PDIMIXM:user/release-keys__2019-09-05
|
||||||
Xiaomi Mi A2 Lite (9)=xiaomi/daisy/daisy_sprout:9/PKQ1.180917.001/V10.0.1.0.PDLMIFJ:user/release-keys__2018-11-05
|
Xiaomi Mi A2 Lite (9)=xiaomi/daisy/daisy_sprout:9/PKQ1.180917.001/V10.0.1.0.PDLMIFJ:user/release-keys__2018-11-05
|
||||||
|
Xiaomi Mi A3 (9)=Xiaomi/laurel_sprout/laurel_sprout:9/PKQ1.190416.001/V10.3.6.0.PFQMIXM:user/release-keys__2019-09-05
|
||||||
Xiaomi Mi Max (6.0.1)=Xiaomi/helium/helium:6.0.1/MMB29M/V8.2.3.0.MBDMIDL:user/release-keys
|
Xiaomi Mi Max (6.0.1)=Xiaomi/helium/helium:6.0.1/MMB29M/V8.2.3.0.MBDMIDL:user/release-keys
|
||||||
Xiaomi Mi Max 2 (7.1.1)=Xiaomi/oxygen/oxygen:7.1.1/NMF26F/V9.5.4.0.NDDMIFA:user/release-keys
|
Xiaomi Mi Max 2 (7.1.1)=Xiaomi/oxygen/oxygen:7.1.1/NMF26F/V9.5.4.0.NDDMIFA:user/release-keys
|
||||||
Xiaomi Mi Max 3 (9)=Xiaomi/nitrogen/nitrogen:9/PKQ1.181007.001/V10.3.1.0.PEDMIXM:user/release-keys__2019-03-01
|
Xiaomi Mi Max 3 (9)=Xiaomi/nitrogen/nitrogen:9/PKQ1.181007.001/V10.3.1.0.PEDMIXM:user/release-keys__2019-03-01
|
||||||
@ -191,23 +197,25 @@ Xiaomi Mi Mix 3 (9)=Xiaomi/perseus/perseus:9/PKQ1.180729.001/V10.3.1.0.PEEMIXM:u
|
|||||||
Xiaomi Mi Note 2 (7.0 & 8.0.0)=Xiaomi/scorpio/scorpio:7.0/NRD90M/V9.2.1.0.NADMIEK:user/release-keys;Xiaomi/scorpio/scorpio:8.0.0/OPR1.170623.032/V9.6.1.0.OADCNFD:user/release-keys
|
Xiaomi Mi Note 2 (7.0 & 8.0.0)=Xiaomi/scorpio/scorpio:7.0/NRD90M/V9.2.1.0.NADMIEK:user/release-keys;Xiaomi/scorpio/scorpio:8.0.0/OPR1.170623.032/V9.6.1.0.OADCNFD:user/release-keys
|
||||||
Xiaomi Mi Note 3 (8.1.0)=Xiaomi/jason/jason:8.1.0/OPM1.171019.019/V10.2.2.0.OCHMIXM:user/release-keys__2018-12-01
|
Xiaomi Mi Note 3 (8.1.0)=Xiaomi/jason/jason:8.1.0/OPM1.171019.019/V10.2.2.0.OCHMIXM:user/release-keys__2018-12-01
|
||||||
Xiaomi Mi Pad 4 (8.1.0)=Xiaomi/clover/clover:8.1.0/OPM1.171019.019/V10.1.1.0.ODJCNFI:user/release-keys__2018-10-01
|
Xiaomi Mi Pad 4 (8.1.0)=Xiaomi/clover/clover:8.1.0/OPM1.171019.019/V10.1.1.0.ODJCNFI:user/release-keys__2018-10-01
|
||||||
Xiaomi Pocophone F1 (9)=Xiaomi/beryllium/beryllium:9/PKQ1.180729.001/V10.3.6.0.PEJMIXM:user/release-keys__2019-06-01
|
Xiaomi Pocophone F1 (9)=Xiaomi/beryllium/beryllium:9/PKQ1.180729.001/V11.0.5.0.PEJMIXM:user/release-keys__2019-10-01
|
||||||
Xiaomi Redmi 3/3 Pro (5.1.1)=Xiaomi/ido/ido:5.1.1/LMY47V/V9.6.2.0.LAIMIFD:user/release-keys
|
Xiaomi Redmi 3/3 Pro (5.1.1)=Xiaomi/ido/ido:5.1.1/LMY47V/V9.6.2.0.LAIMIFD:user/release-keys
|
||||||
Xiaomi Redmi 3S/X Prime (6.0.1)=Xiaomi/land/land:6.0.1/MMB29M/V9.5.1.0.MALMIFA:user/release-keys
|
Xiaomi Redmi 3S/X Prime (6.0.1)=Xiaomi/land/land:6.0.1/MMB29M/V9.5.1.0.MALMIFA:user/release-keys
|
||||||
Xiaomi Redmi 4 Prime (6.0.1)=Xiaomi/markw/markw:6.0.1/MMB29M/V9.5.3.0.MBEMIFA:user/release-keys
|
Xiaomi Redmi 4 Prime (6.0.1)=Xiaomi/markw/markw:6.0.1/MMB29M/V9.5.3.0.MBEMIFA:user/release-keys
|
||||||
|
Xiaomi Redmi 4A (7.1.2)=Xiaomi/rolex/rolex:7.1.2/N2G47H/V9.2.6.0.NCCMIEK:user/release-keys
|
||||||
Xiaomi Redmi 4X (6.0.1)=Xiaomi/santoni/santoni:6.0.1/MMB29M/V8.5.4.0.MAMCNED:user/release-keys
|
Xiaomi Redmi 4X (6.0.1)=Xiaomi/santoni/santoni:6.0.1/MMB29M/V8.5.4.0.MAMCNED:user/release-keys
|
||||||
Xiaomi Redmi 5A (7.1.2)=Xiaomi/riva/riva:7.1.2/N2G47H/V9.1.8.0.NCKMIEI:user/release-keys
|
Xiaomi Redmi 5A (7.1.2 & 8.1.0)=Xiaomi/riva/riva:7.1.2/N2G47H/V9.1.8.0.NCKMIEI:user/release-keys;Xiaomi/riva/riva:8.1.0/OPM1.171019.026/V10.3.2.0.OCKMIXM:user/release-keys__2019-06-01
|
||||||
Xiaomi Redmi Go (8.1.0)=Xiaomi/tiare/tiare:8.1.0/OPM1.171019.026/V10.2.6.0.OCLMIXM:user/release-keys__2019-01-01
|
Xiaomi Redmi Go (8.1.0)=Xiaomi/tiare/tiare:8.1.0/OPM1.171019.026/V10.2.6.0.OCLMIXM:user/release-keys__2019-01-01
|
||||||
Xiaomi Redmi K20 Pro (9)=Xiaomi/raphael/raphael:9/PKQ1.181121.001/V10.3.14.0.PFKCNXM:user/release-keys__2019-06-01
|
Xiaomi Redmi K20 Pro (9 & 10)=Xiaomi/raphael/raphael:9/PKQ1.181121.001/V10.3.14.0.PFKCNXM:user/release-keys__2019-06-01;Xiaomi/raphael/raphael:10/QKQ1.190716.003/V10.4.6.0.QFKCNXM:user/release-keys__2019-09-05
|
||||||
Xiaomi Redmi Note 2 (5.0.2)=Xiaomi/hermes/hermes:5.0.2/LRX22G/V9.2.4.0.LHMMIEK:user/release-keys
|
Xiaomi Redmi Note 2 (5.0.2)=Xiaomi/hermes/hermes:5.0.2/LRX22G/V9.2.4.0.LHMMIEK:user/release-keys
|
||||||
Xiaomi Redmi Note 3 Pro (6.0.1)=Xiaomi/kenzo/kenzo:6.0.1/MMB29M/V8.2.1.0.MHOCNDL:user/release-keys
|
Xiaomi Redmi Note 3 Pro (6.0.1)=Xiaomi/kenzo/kenzo:6.0.1/MMB29M/V8.2.1.0.MHOCNDL:user/release-keys
|
||||||
Xiaomi Redmi Note 3 Pro SE (6.0.1)=Xiaomi/kate/kate:6.0.1/MMB29M/V8.1.3.0.MHRMIDI:user/release-keys
|
Xiaomi Redmi Note 3 Pro SE (6.0.1)=Xiaomi/kate/kate:6.0.1/MMB29M/V8.1.3.0.MHRMIDI:user/release-keys
|
||||||
Xiaomi Redmi Note 4/4X (7.0)=xiaomi/mido/mido:7.0/NRD90M/V9.2.1.0.NCFMIEK:user/release-keys
|
Xiaomi Redmi Note 4/4X (7.0)=xiaomi/mido/mido:7.0/NRD90M/V9.2.1.0.NCFMIEK:user/release-keys
|
||||||
|
Xiaomi Redmi Note 4 Mediatek (6.0)=Xiaomi/nikel/nikel:6.0/MRA58K/V9.2.2.0.MBFMIEK:user/release-keys
|
||||||
Xiaomi Redmi Note 5/5 Plus (7.1.2 & 8.1.0)=xiaomi/vince/vince:7.1.2/N2G47H/V9.5.4.0.NEGMIFA:user/release-keys;xiaomi/vince/vince:8.1.0/OPM1.171019.019/V10.2.1.0.OEGMIXM:user/release-keys__2019-03-01
|
Xiaomi Redmi Note 5/5 Plus (7.1.2 & 8.1.0)=xiaomi/vince/vince:7.1.2/N2G47H/V9.5.4.0.NEGMIFA:user/release-keys;xiaomi/vince/vince:8.1.0/OPM1.171019.019/V10.2.1.0.OEGMIXM:user/release-keys__2019-03-01
|
||||||
Xiaomi Redmi Note 5 Pro (8.1.0 & 9)=xiaomi/whyred/whyred:8.1.0/OPM1.171019.011/V10.0.6.0.OEIMIFH:user/release-keys__2018-11-01;xiaomi/whyred/whyred:9/PKQ1.180904.001/V10.3.1.0.PEIMIXM:user/release-keys__2019-05-05
|
Xiaomi Redmi Note 5 Pro (8.1.0 & 9)=xiaomi/whyred/whyred:8.1.0/OPM1.171019.011/V10.0.6.0.OEIMIFH:user/release-keys__2018-11-01;xiaomi/whyred/whyred:9/PKQ1.180904.001/V10.3.2.0.PEIMIXM:user/release-keys__2019-08-05
|
||||||
Xiaomi Redmi Note 5A Lite (7.1.2)=xiaomi/ugglite/ugglite:7.1.2/N2G47H/V9.1.2.0.NDFMIEI:user/release-keys
|
Xiaomi Redmi Note 5A Lite (7.1.2)=xiaomi/ugglite/ugglite:7.1.2/N2G47H/V9.1.2.0.NDFMIEI:user/release-keys
|
||||||
Xiaomi Redmi Note 6 Pro (8.1.0)=xiaomi/tulip/tulip:8.1.0/OPM1.171019.011/V10.0.5.0.OEKMIFH:user/release-keys__2018-10-01
|
Xiaomi Redmi Note 6 Pro (8.1.0)=xiaomi/tulip/tulip:8.1.0/OPM1.171019.011/V10.0.5.0.OEKMIFH:user/release-keys__2018-10-01
|
||||||
Xiaomi Redmi Note 7 (9)=xiaomi/lavender/lavender:9/PKQ1.180904.001/V10.2.7.0.PFGINXM:user/release-keys__2019-02-05
|
Xiaomi Redmi Note 7 (9)=xiaomi/lavender/lavender:9/PKQ1.180904.001/V10.3.12.0.PFGMIXM:user/release-keys__2019-08-05
|
||||||
Xiaomi Redmi Y1 (7.1.2)=xiaomi/ugg/ugg:7.1.2/N2G47H/V9.6.2.0.NDKMIFD:user/release-keys__2018-07-01
|
Xiaomi Redmi Y1 (7.1.2)=xiaomi/ugg/ugg:7.1.2/N2G47H/V9.6.2.0.NDKMIFD:user/release-keys__2018-07-01
|
||||||
ZTE Axon 7 (7.1.1 & 8.0.0)=ZTE/P996A01_N/ailsa_ii:7.1.1/NMF26V/20171211.005949:user/release-keys;ZTE/P996A01_O/ailsa_ii:8.0.0/OPR1.170623.032/20180815.171922:user/release-keys__2018-07-01
|
ZTE Axon 7 (7.1.1 & 8.0.0)=ZTE/P996A01_N/ailsa_ii:7.1.1/NMF26V/20171211.005949:user/release-keys;ZTE/P996A01_O/ailsa_ii:8.0.0/OPR1.170623.032/20180815.171922:user/release-keys__2018-07-01
|
||||||
ZTE Blade (6.0.1)=ZTE/P809A50_MY_MAX/P809A50:6.0.1/MMB29M/20161017.095504:user/release-keys
|
ZTE Blade (6.0.1)=ZTE/P809A50_MY_MAX/P809A50:6.0.1/MMB29M/20161017.095504:user/release-keys
|
||||||
|
@ -9,7 +9,7 @@
|
|||||||
# =================================================================
|
# =================================================================
|
||||||
|
|
||||||
# Required module version (or newer). Do not edit this value!
|
# Required module version (or newer). Do not edit this value!
|
||||||
CONFTRANSF=351
|
CONFTRANSF=500
|
||||||
|
|
||||||
# Device fingerprint
|
# Device fingerprint
|
||||||
CONFFINGERPRINT=""
|
CONFFINGERPRINT=""
|
||||||
@ -19,19 +19,17 @@ CONFPATCHBOOT=late
|
|||||||
|
|
||||||
# Device simulation
|
# Device simulation
|
||||||
CONFDEVSIM=false
|
CONFDEVSIM=false
|
||||||
CONFBRAND=true
|
CONFBRAND=false
|
||||||
CONFNAME=true
|
CONFNAME=false
|
||||||
CONFDEVICE=true
|
CONFDEVICE=false
|
||||||
CONFRELEASE=true
|
CONFRELEASE=false
|
||||||
CONFID=true
|
CONFID=false
|
||||||
CONFINCREMENTAL=true
|
CONFINCREMENTAL=false
|
||||||
CONFDESCRIPTION=true
|
CONFDESCRIPTION=true
|
||||||
CONFSDK=true
|
CONFDISPLAY=false
|
||||||
|
CONFSDK=false
|
||||||
CONFSIMBOOT=default
|
CONFSIMBOOT=default
|
||||||
|
|
||||||
# Edit prop files
|
|
||||||
CONFPROPFILES=false
|
|
||||||
|
|
||||||
# MagiskHide sensitive props
|
# MagiskHide sensitive props
|
||||||
CONFDEBUGGABLE=""
|
CONFDEBUGGABLE=""
|
||||||
CONFSECURE=""
|
CONFSECURE=""
|
||||||
@ -104,8 +102,8 @@ CONFUPDATE=true
|
|||||||
# Keymaster 4 (bootloops). If the prop doesn't seem to set properly, try changing the stage.
|
# Keymaster 4 (bootloops). If the prop doesn't seem to set properly, try changing the stage.
|
||||||
|
|
||||||
# CONFDEVSIM and the following CONFBRAND, CONFNAME, CONFDEVICE, CONFRELEASE
|
# CONFDEVSIM and the following CONFBRAND, CONFNAME, CONFDEVICE, CONFRELEASE
|
||||||
# CONFID, CONFINCREMENTAL, CONFDESCRIPTION and CONFSDK are used to set a number
|
# CONFID, CONFINCREMENTAL, CONFDESCRIPTION, CONFDISPLAY and CONFSDK are used to
|
||||||
# of props to simulate a certain deviced based on the fingerprint used.
|
# set a number of props to simulate a certain deviced based on the fingerprint used.
|
||||||
# CONFDESCRIPTION will automatically be applied if a fingerprint is set
|
# CONFDESCRIPTION will automatically be applied if a fingerprint is set
|
||||||
# by the module, but the other props will only be set if CONFDEVSIM is
|
# by the module, but the other props will only be set if CONFDEVSIM is
|
||||||
# set to true, and the default setting for all props are that they will be
|
# set to true, and the default setting for all props are that they will be
|
||||||
@ -117,9 +115,6 @@ CONFUPDATE=true
|
|||||||
# post-fs-data or late_start service mode. This is useful if props don't seem to set
|
# post-fs-data or late_start service mode. This is useful if props don't seem to set
|
||||||
# propely or the module's boot script seems to be causing issues during boot.
|
# propely or the module's boot script seems to be causing issues during boot.
|
||||||
|
|
||||||
# CONFPROPFILES should be set to "true" if you want to mask the file
|
|
||||||
# values in build.prop and default.prop. For better root hiding.
|
|
||||||
|
|
||||||
# The MagiskHide prop variables can be set as follows:
|
# The MagiskHide prop variables can be set as follows:
|
||||||
# CONFDEBUGGABLE - 0 or 1 (set to "0" by MagiskHide - sensitive value is "1")
|
# CONFDEBUGGABLE - 0 or 1 (set to "0" by MagiskHide - sensitive value is "1")
|
||||||
# CONFSECURE - 0 or 1 (set to "1" by MagiskHide - sensitive value is "0")
|
# CONFSECURE - 0 or 1 (set to "1" by MagiskHide - sensitive value is "0")
|
||||||
|
@ -8,9 +8,9 @@
|
|||||||
# In that case, feel free to delete it.
|
# In that case, feel free to delete it.
|
||||||
|
|
||||||
# Script version
|
# Script version
|
||||||
SCRIPTV=27
|
SCRIPTV=28
|
||||||
SETTRANSF=2
|
SETTRANSF=3
|
||||||
NOTTRANSF=""
|
NOTTRANSF="BRANDSET;NAMESET;DEVICESET;RELEASESET;IDSET;INCREMENTALSET;SDKSET"
|
||||||
|
|
||||||
# Fingerprint
|
# Fingerprint
|
||||||
FINGERPRINTENB=1
|
FINGERPRINTENB=1
|
||||||
@ -22,12 +22,6 @@ PRINTCHK=0
|
|||||||
# Simulation
|
# Simulation
|
||||||
DEVSIM=0
|
DEVSIM=0
|
||||||
|
|
||||||
# Prop files
|
|
||||||
BUILDPROPENB=1
|
|
||||||
FILESAFE=1
|
|
||||||
BUILDEDIT=0
|
|
||||||
DEFAULTEDIT=0
|
|
||||||
|
|
||||||
# Custom props
|
# Custom props
|
||||||
PROPCOUNT=0
|
PROPCOUNT=0
|
||||||
PROPEDIT=0
|
PROPEDIT=0
|
||||||
@ -46,14 +40,15 @@ OPTIONWEB=1
|
|||||||
OPTIONUPDATE=1
|
OPTIONUPDATE=1
|
||||||
|
|
||||||
# Device simulation
|
# Device simulation
|
||||||
BRANDSET=1
|
BRANDSET=0
|
||||||
NAMESET=1
|
NAMESET=0
|
||||||
DEVICESET=1
|
DEVICESET=0
|
||||||
RELEASESET=1
|
RELEASESET=0
|
||||||
IDSET=1
|
IDSET=0
|
||||||
INCREMENTALSET=1
|
INCREMENTALSET=0
|
||||||
|
SDKSET=0
|
||||||
DESCRIPTIONSET=1
|
DESCRIPTIONSET=1
|
||||||
SDKSET=1
|
DISPLAYSET=0
|
||||||
|
|
||||||
# Misc
|
# Misc
|
||||||
REBOOTCHK=0
|
REBOOTCHK=0
|
||||||
@ -80,6 +75,7 @@ ORIGRELEASE=""
|
|||||||
ORIGID=""
|
ORIGID=""
|
||||||
ORIGINCREMENTAL=""
|
ORIGINCREMENTAL=""
|
||||||
ORIGDESCRIPTION=""
|
ORIGDESCRIPTION=""
|
||||||
|
ORIGDISPLAY=""
|
||||||
ORIGSDK=""
|
ORIGSDK=""
|
||||||
|
|
||||||
# ---Module values---
|
# ---Module values---
|
||||||
@ -98,6 +94,7 @@ SIMRELEASE=""
|
|||||||
SIMID=""
|
SIMID=""
|
||||||
SIMINCREMENTAL=""
|
SIMINCREMENTAL=""
|
||||||
SIMDESCRIPTION=""
|
SIMDESCRIPTION=""
|
||||||
|
SIMDISPLAY=""
|
||||||
SIMSDK=""
|
SIMSDK=""
|
||||||
|
|
||||||
# ---Custom prop values---
|
# ---Custom prop values---
|
||||||
@ -116,13 +113,3 @@ RESECURE=false
|
|||||||
RETYPE=false
|
RETYPE=false
|
||||||
RETAGS=false
|
RETAGS=false
|
||||||
RESELINUX=false
|
RESELINUX=false
|
||||||
|
|
||||||
# ---Editing default.prop---
|
|
||||||
SETDEBUGGABLE=false
|
|
||||||
SETSECURE=false
|
|
||||||
|
|
||||||
# ---Editing build.prop---
|
|
||||||
SETTYPE=false
|
|
||||||
SETTAGS=false
|
|
||||||
SETSELINUX=false
|
|
||||||
SETFINGERPRINT=false
|
|
||||||
|
@ -18,6 +18,11 @@ fi
|
|||||||
|
|
||||||
log_script_chk "Running service.sh module script."
|
log_script_chk "Running service.sh module script."
|
||||||
|
|
||||||
|
# Retrieving default values from props file
|
||||||
|
log_handler "Saving device default values."
|
||||||
|
default_save
|
||||||
|
log_handler "Default values saved to $LATEFILE."
|
||||||
|
|
||||||
# Edits prop values if set for late_start service
|
# Edits prop values if set for late_start service
|
||||||
echo -e "\n----------------------------------------" >> $LOGFILE 2>&1
|
echo -e "\n----------------------------------------" >> $LOGFILE 2>&1
|
||||||
log_handler "Editing prop values in late_start service mode."
|
log_handler "Editing prop values in late_start service mode."
|
||||||
@ -66,16 +71,6 @@ if [ "$PROPEDIT" == 1 ]; then
|
|||||||
fi
|
fi
|
||||||
echo -e "\n----------------------------------------" >> $LOGFILE 2>&1
|
echo -e "\n----------------------------------------" >> $LOGFILE 2>&1
|
||||||
|
|
||||||
# ---Edits default.prop---
|
|
||||||
if [ "$DEFAULTEDIT" == 1 ] && [ "$FILESAFE" == 0 ]; then
|
|
||||||
log_handler "Editing default.prop."
|
|
||||||
mount -wo remount rootfs /
|
|
||||||
change_prop_file "default"
|
|
||||||
mount -ro remount rootfs /
|
|
||||||
else
|
|
||||||
log_handler "Default.prop editing disabled."
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Get currently saved values
|
# Get currently saved values
|
||||||
log_handler "Checking current values."
|
log_handler "Checking current values."
|
||||||
curr_values
|
curr_values
|
||||||
|
@ -12,25 +12,32 @@ get_file_value() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
# ======================== Variables ========================
|
# ======================== Variables ========================
|
||||||
|
ADBPATH=/data/adb
|
||||||
|
MODULESPATH=$ADBPATH/modules
|
||||||
|
MHPCPATH=$ADBPATH/mhpc
|
||||||
if [ "$INSTFN" ]; then
|
if [ "$INSTFN" ]; then
|
||||||
# Installation (config.sh)
|
# Installation (config.sh)
|
||||||
MODVERSION=$(echo $(get_file_value $TMPDIR/module.prop "version=") | sed 's|-.*||')
|
MODVERSION=$(echo $(get_file_value $TMPDIR/module.prop "version=") | sed 's|-.*||')
|
||||||
ADBPATH=/data/adb
|
|
||||||
MODULESPATH=$ADBPATH/modules
|
|
||||||
POSTPATH=$ADBPATH/post-fs-data.d
|
POSTPATH=$ADBPATH/post-fs-data.d
|
||||||
SERVICEPATH=$ADBPATH/service.d
|
SERVICEPATH=$ADBPATH/service.d
|
||||||
LATEPATH=$ADBPATH/mhpc
|
LATEFILE=$MHPCPATH/propsconf_late
|
||||||
LATEFILE=$LATEPATH/propsconf_late
|
|
||||||
POSTFILE=$POSTPATH/propsconf_post
|
POSTFILE=$POSTPATH/propsconf_post
|
||||||
POSTLATEFILE=$POSTPATH/propsconf_late
|
POSTLATEFILE=$POSTPATH/propsconf_late
|
||||||
UPDATELATEFILE=$TMPDIR/propsconf_late
|
UPDATELATEFILE=$TMPDIR/propsconf_late
|
||||||
MIRRORLOC=/sbin/.magisk/mirror/system
|
MIRRORLOC=/sbin/.magisk/mirror/system
|
||||||
|
VENDLOC=/sbin/.magisk/mirror/vendor
|
||||||
if [ -z $SLOT ]; then
|
if [ -z $SLOT ]; then
|
||||||
CACHELOC=/cache
|
CACHELOC=/cache
|
||||||
else
|
else
|
||||||
CACHELOC=/data/cache
|
CACHELOC=/data/cache
|
||||||
fi
|
fi
|
||||||
LOGFILE=$CACHELOC/propsconf_install.log
|
CACHERM="
|
||||||
|
$CACHELOC/propsconf_postfile.log
|
||||||
|
$CACHELOC/propsconf.log
|
||||||
|
$CACHELOC/propsconf_install.log
|
||||||
|
$CACHELOC/propsconf_last.log
|
||||||
|
"
|
||||||
|
LOGFILE=$MHPCPATH/propsconf_install.log
|
||||||
UPDATEV=$(get_file_value $UPDATELATEFILE "SCRIPTV=")
|
UPDATEV=$(get_file_value $UPDATELATEFILE "SCRIPTV=")
|
||||||
UPDATETRANSF=$(get_file_value $UPDATELATEFILE "SETTRANSF=")
|
UPDATETRANSF=$(get_file_value $UPDATELATEFILE "SETTRANSF=")
|
||||||
NOTTRANSF=$(get_file_value $UPDATELATEFILE "NOTTRANSF=")
|
NOTTRANSF=$(get_file_value $UPDATELATEFILE "NOTTRANSF=")
|
||||||
@ -41,10 +48,6 @@ if [ "$INSTFN" ]; then
|
|||||||
PRINTVEND
|
PRINTVEND
|
||||||
PRINTCHK
|
PRINTCHK
|
||||||
DEVSIM
|
DEVSIM
|
||||||
BUILDPROPENB
|
|
||||||
FILESAFE
|
|
||||||
BUILDEDIT
|
|
||||||
DEFAULTEDIT
|
|
||||||
PROPCOUNT
|
PROPCOUNT
|
||||||
PROPEDIT
|
PROPEDIT
|
||||||
CUSTOMEDIT
|
CUSTOMEDIT
|
||||||
@ -63,6 +66,7 @@ if [ "$INSTFN" ]; then
|
|||||||
IDSET
|
IDSET
|
||||||
INCREMENTALSET
|
INCREMENTALSET
|
||||||
DESCRIPTIONSET
|
DESCRIPTIONSET
|
||||||
|
DISPLAYSET
|
||||||
SDKSET
|
SDKSET
|
||||||
REBOOTCHK
|
REBOOTCHK
|
||||||
"
|
"
|
||||||
@ -80,6 +84,7 @@ if [ "$INSTFN" ]; then
|
|||||||
SIMID
|
SIMID
|
||||||
SIMINCREMENTAL
|
SIMINCREMENTAL
|
||||||
SIMDESCRIPTION
|
SIMDESCRIPTION
|
||||||
|
SIMDISPLAY
|
||||||
SIMSDK
|
SIMSDK
|
||||||
CUSTOMPROPS
|
CUSTOMPROPS
|
||||||
CUSTOMPROPSPOST
|
CUSTOMPROPSPOST
|
||||||
@ -90,19 +95,22 @@ if [ "$INSTFN" ]; then
|
|||||||
else
|
else
|
||||||
# Placeholder variables
|
# Placeholder variables
|
||||||
MODVERSIONPH=VER_PLACEHOLDER
|
MODVERSIONPH=VER_PLACEHOLDER
|
||||||
|
MHPCPATHPH=MHPCPATH_PLACEHOLDER
|
||||||
LATEFILEPH=LATE_PLACEHOLDER
|
LATEFILEPH=LATE_PLACEHOLDER
|
||||||
MIRRORLOCPH=MIRROR_PLACEHOLDER
|
MIRRORLOCPH=MIRROR_PLACEHOLDER
|
||||||
|
VENDLOCPH=VEND_PLACEHOLDER
|
||||||
CACHELOCPH=CACHE_PLACEHOLDER
|
CACHELOCPH=CACHE_PLACEHOLDER
|
||||||
BINPH=BIN_PLACEHOLDER
|
BINPH=BIN_PLACEHOLDER
|
||||||
|
|
||||||
# Log variables
|
# Log variables
|
||||||
LOGFILE=$CACHELOC/propsconf.log
|
LOGFILE=$MHPCPATH/propsconf.log
|
||||||
LASTLOGFILE=$CACHELOC/propsconf_last.log
|
LASTLOGFILE=$MHPCPATH/propsconf_last.log
|
||||||
TMPLOGLOC=$CACHELOC/propslogs
|
TMPLOGLOC=$MHPCPATH/propslogs
|
||||||
TMPLOGLIST="
|
TMPLOGLIST="
|
||||||
$CACHELOC/magisk.log
|
$MHPCPATH/defaultprops
|
||||||
$CACHELOC/magisk.log.bak
|
$MHPCPATH/magisk.log
|
||||||
$CACHELOC/propsconf*
|
$MHPCPATH/magisk.log.bak
|
||||||
|
$MHPCPATH/propsconf*
|
||||||
$MIRRORPATH/system/build.prop
|
$MIRRORPATH/system/build.prop
|
||||||
$MIRRORPATH/vendor/build.prop
|
$MIRRORPATH/vendor/build.prop
|
||||||
$LATEFILE
|
$LATEFILE
|
||||||
@ -112,13 +120,13 @@ fi
|
|||||||
COREPATH=/sbin/.magisk
|
COREPATH=/sbin/.magisk
|
||||||
MIRRORPATH=$COREPATH/mirror
|
MIRRORPATH=$COREPATH/mirror
|
||||||
SYSTEMFILE=$MODPATH/system.prop
|
SYSTEMFILE=$MODPATH/system.prop
|
||||||
POSTCHKFILE=$CACHELOC/propsconf_postchk
|
POSTCHKFILE=$MHPCPATH/propsconf_postchk
|
||||||
RUNFILE=$MODPATH/script_check
|
RUNFILE=$MODPATH/script_check
|
||||||
RESETFILE=$CACHELOC/reset_mhpc
|
|
||||||
# Make sure that the terminal app used actually can see resetprop
|
# Make sure that the terminal app used actually can see resetprop
|
||||||
if [ "$BOOTSTAGE" == "props" ]; then
|
if [ "$BOOTSTAGE" == "props" ]; then
|
||||||
alias resetprop="$ADBPATH/magisk/magisk resetprop"
|
alias resetprop="$ADBPATH/magisk/magisk resetprop"
|
||||||
fi
|
fi
|
||||||
|
alias reboot="/system/bin/reboot"
|
||||||
# Finding installed Busybox
|
# Finding installed Busybox
|
||||||
if [ -d "$MODULESPATH/busybox-ndk" ]; then
|
if [ -d "$MODULESPATH/busybox-ndk" ]; then
|
||||||
BBPATH=$(find $MODULESPATH/busybox-ndk -name 'busybox')
|
BBPATH=$(find $MODULESPATH/busybox-ndk -name 'busybox')
|
||||||
@ -127,12 +135,12 @@ else
|
|||||||
fi
|
fi
|
||||||
# Fingerprint variables
|
# Fingerprint variables
|
||||||
PRINTSLOC=$MODPATH/prints.sh
|
PRINTSLOC=$MODPATH/prints.sh
|
||||||
PRINTSTMP=$CACHELOC/prints.sh
|
PRINTSTMP=$MHPCPATH/prints.sh
|
||||||
PRINTSWWW="https://raw.githubusercontent.com/Magisk-Modules-Repo/MagiskHide-Props-Config/master/common/prints.sh"
|
PRINTSWWW="https://raw.githubusercontent.com/Magisk-Modules-Repo/MagiskHide-Props-Config/master/common/prints.sh"
|
||||||
PRINTSDEV="https://raw.githubusercontent.com/Didgeridoohan/Playground/master/prints.sh"
|
PRINTSDEV="https://raw.githubusercontent.com/Didgeridoohan/Playground/master/prints.sh"
|
||||||
PRINTFILES=$MODPATH/printfiles
|
PRINTFILES=$MODPATH/printfiles
|
||||||
CSTMPRINTS=/sdcard/printslist
|
CSTMPRINTS=/sdcard/printslist
|
||||||
CSTMFILE=$PRINTFILES/Custom.sh
|
CSTMFILE=$PRINTFILES/custom.sh
|
||||||
|
|
||||||
# Known modules that edit device fingerprint
|
# Known modules that edit device fingerprint
|
||||||
USNFLIST="
|
USNFLIST="
|
||||||
@ -149,11 +157,18 @@ VR_Patch
|
|||||||
|
|
||||||
# Configuration file locations
|
# Configuration file locations
|
||||||
CONFFILELST="
|
CONFFILELST="
|
||||||
/sdcard/propsconf_conf
|
/data/media/0/propsconf_conf
|
||||||
/data/propsconf_conf
|
/data/propsconf_conf
|
||||||
$CACHELOC/propsconf_conf
|
$CACHELOC/propsconf_conf
|
||||||
"
|
"
|
||||||
|
|
||||||
|
# Reset file locations
|
||||||
|
RESETFILELST="
|
||||||
|
/data/media/0/reset_mhpc
|
||||||
|
/data/reset_mhpc
|
||||||
|
$CACHELOC/reset_mhpc
|
||||||
|
"
|
||||||
|
|
||||||
# MagiskHide props
|
# MagiskHide props
|
||||||
PROPSLIST="
|
PROPSLIST="
|
||||||
ro.debuggable
|
ro.debuggable
|
||||||
@ -203,6 +218,7 @@ ro.build.description
|
|||||||
|
|
||||||
# Additional simulation props
|
# Additional simulation props
|
||||||
ADNSIMPROPS="
|
ADNSIMPROPS="
|
||||||
|
ro.build.display.id
|
||||||
ro.build.version.sdk
|
ro.build.version.sdk
|
||||||
"
|
"
|
||||||
|
|
||||||
@ -275,7 +291,7 @@ DIVIDER="${Y}=====================================${N}"
|
|||||||
|
|
||||||
# Header
|
# Header
|
||||||
menu_header() {
|
menu_header() {
|
||||||
if [ -z "$LOGNAME" ] && [ "$DEVTESTING" == "false" ]; then
|
if [ -z "$ANDROID_SOCKET_adbd" ] && [ "$DEVTESTING" == "false" ]; then
|
||||||
clear
|
clear
|
||||||
fi
|
fi
|
||||||
if [ "$MODVERSION" == "VER_PLACEHOLDER" ]; then
|
if [ "$MODVERSION" == "VER_PLACEHOLDER" ]; then
|
||||||
@ -312,6 +328,8 @@ bb_check() {
|
|||||||
get_prop_type() {
|
get_prop_type() {
|
||||||
if [ "$1" == "ro.vendor.build.fingerprint" ]; then
|
if [ "$1" == "ro.vendor.build.fingerprint" ]; then
|
||||||
echo "vendprint"
|
echo "vendprint"
|
||||||
|
elif [ "$1" == "ro.build.display.id" ]; then
|
||||||
|
echo "display"
|
||||||
else
|
else
|
||||||
echo $1 | sed 's|.*\.||' | sed 's|.*\_||'
|
echo $1 | sed 's|.*\.||' | sed 's|.*\_||'
|
||||||
fi
|
fi
|
||||||
@ -404,7 +422,7 @@ force_reboot() {
|
|||||||
echo ""
|
echo ""
|
||||||
echo "${C}Rebooting...${N}"
|
echo "${C}Rebooting...${N}"
|
||||||
log_handler "Rebooting."
|
log_handler "Rebooting."
|
||||||
setprop sys.powerctl reboot
|
/system/bin/svc power reboot "" >> $LOGFILE 2>&1 || /system/bin/reboot "" >> $LOGFILE 2>&1 || setprop sys.powerctl reboot >> $LOGFILE 2>&1
|
||||||
sleep 15
|
sleep 15
|
||||||
log_handler "Rebooting failed."
|
log_handler "Rebooting failed."
|
||||||
echo ""
|
echo ""
|
||||||
@ -441,6 +459,22 @@ script_ran_check() {
|
|||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#Save default file values in propsconf_late
|
||||||
|
default_save(){
|
||||||
|
#Format the props file
|
||||||
|
log_handler "Formatting prop file."
|
||||||
|
sed -i -e "s|\]\:\ \[|=|g;s|^\[||g;s|\]$||g" $MHPCPATH/defaultprops
|
||||||
|
#Save the props values to $LATEFILE
|
||||||
|
for ITEM in $VALPROPSLIST; do
|
||||||
|
TMPPROP=$(get_prop_type $ITEM | tr '[:lower:]' '[:upper:]')
|
||||||
|
ORIGPROP="ORIG${TMPPROP}"
|
||||||
|
ORIGTMP="$(get_file_value $LATEFILE "${ORIGPROP}=")"
|
||||||
|
CURRPROP="CURR${TMPPROP}"
|
||||||
|
CURRTMP="$(get_file_value $MHPCPATH/defaultprops "${ITEM}=")"
|
||||||
|
replace_fn $ORIGPROP "\"$ORIGTMP\"" "\"$CURRTMP\"" $LATEFILE
|
||||||
|
done
|
||||||
|
}
|
||||||
|
|
||||||
# Check for original prop values
|
# Check for original prop values
|
||||||
orig_check() {
|
orig_check() {
|
||||||
PROPSTMPLIST=$VALPROPSLIST
|
PROPSTMPLIST=$VALPROPSLIST
|
||||||
@ -578,9 +612,6 @@ reboot_fn() {
|
|||||||
# Reset module
|
# Reset module
|
||||||
reset_fn() {
|
reset_fn() {
|
||||||
cp -af $MODPATH/propsconf_late $LATEFILE >> $LOGFILE 2>&1
|
cp -af $MODPATH/propsconf_late $LATEFILE >> $LOGFILE 2>&1
|
||||||
if [ "$BUILDPROPENB" ] && [ "$BUILDPROPENB" != 1 ]; then
|
|
||||||
replace_fn BUILDPROPENB 1 $BUILDPROPENB $LATEFILE
|
|
||||||
fi
|
|
||||||
if [ "$FINGERPRINTENB" ] && [ "$FINGERPRINTENB" != 1 ]; then
|
if [ "$FINGERPRINTENB" ] && [ "$FINGERPRINTENB" != 1 ]; then
|
||||||
replace_fn FINGERPRINTENB 1 $FINGERPRINTENB $LATEFILE
|
replace_fn FINGERPRINTENB 1 $FINGERPRINTENB $LATEFILE
|
||||||
fi
|
fi
|
||||||
@ -646,7 +677,8 @@ config_file() {
|
|||||||
# Fingerprint parts
|
# Fingerprint parts
|
||||||
if [ "$CONFDEVSIM" == "true" ]; then
|
if [ "$CONFDEVSIM" == "true" ]; then
|
||||||
change_dev_sim "Device simulation" "file"
|
change_dev_sim "Device simulation" "file"
|
||||||
for ITEM in $PRINTPARTS; do
|
TMPPARTS=$PRINTPARTS$ADNSIMPROPS
|
||||||
|
for ITEM in $TMPPARTS; do
|
||||||
TMPVAR="CONF$(get_prop_type $ITEM | tr '[:lower:]' '[:upper:]')"
|
TMPVAR="CONF$(get_prop_type $ITEM | tr '[:lower:]' '[:upper:]')"
|
||||||
if [ $(eval "echo \$$TMPVAR") == "true" ]; then
|
if [ $(eval "echo \$$TMPVAR") == "true" ]; then
|
||||||
TMPVAL=1
|
TMPVAL=1
|
||||||
@ -706,15 +738,6 @@ config_file() {
|
|||||||
log_handler "Device simulation boot stage is ${TMPTXT}."
|
log_handler "Device simulation boot stage is ${TMPTXT}."
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# Updates prop file editing
|
|
||||||
if [ "$FILESAFE" == 0 ]; then
|
|
||||||
if [ "$CONFPROPFILES" == "true" ]; then
|
|
||||||
edit_prop_files "file" "" " (configuration file)"
|
|
||||||
elif [ "$CONFPROPFILES" == "false" ]; then
|
|
||||||
reset_prop_files "file" "" " (configuration file)"
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Updates custom props
|
# Updates custom props
|
||||||
if [ "$PROPOPTION" != "preserve" ]; then
|
if [ "$PROPOPTION" != "preserve" ]; then
|
||||||
if [ "$CONFPROPS" ] || [ "$CONFPROPSPOST" ] || [ "$CONFPROPSLATE" ]; then
|
if [ "$CONFPROPS" ] || [ "$CONFPROPSPOST" ] || [ "$CONFPROPSLATE" ]; then
|
||||||
@ -806,7 +829,9 @@ config_file() {
|
|||||||
|
|
||||||
# Deletes the configuration file
|
# Deletes the configuration file
|
||||||
log_handler "Deleting configuration file."
|
log_handler "Deleting configuration file."
|
||||||
rm -f $CONFFILE
|
for ITEM in $CONFFILELST; do
|
||||||
|
rm -f $ITEM
|
||||||
|
done
|
||||||
log_handler "Configuration file import complete."
|
log_handler "Configuration file import complete."
|
||||||
else
|
else
|
||||||
log_handler "No configuration file."
|
log_handler "No configuration file."
|
||||||
@ -857,7 +882,7 @@ system_prop_cont() {
|
|||||||
# ======================== Installation functions ========================
|
# ======================== Installation functions ========================
|
||||||
# Places various module scripts in their proper places
|
# Places various module scripts in their proper places
|
||||||
script_placement() {
|
script_placement() {
|
||||||
if [ -f "$LATEFILE" ]; then
|
if [ -f "$LATEFILE" ] && [ -d "$MODULESPATH/MagiskHidePropsConf" ]; then
|
||||||
FILEV=$(get_file_value $LATEFILE "SCRIPTV=")
|
FILEV=$(get_file_value $LATEFILE "SCRIPTV=")
|
||||||
FILETRANSF=$(get_file_value $LATEFILE "SETTRANSF=")
|
FILETRANSF=$(get_file_value $LATEFILE "SETTRANSF=")
|
||||||
LATEFILETMP="$LATEFILE"
|
LATEFILETMP="$LATEFILE"
|
||||||
@ -866,6 +891,7 @@ script_placement() {
|
|||||||
FILETRANSF=$(get_file_value $SERVICEPATH/propsconf_late "SETTRANSF=")
|
FILETRANSF=$(get_file_value $SERVICEPATH/propsconf_late "SETTRANSF=")
|
||||||
LATEFILETMP="$SERVICEPATH/propsconf_late"
|
LATEFILETMP="$SERVICEPATH/propsconf_late"
|
||||||
else
|
else
|
||||||
|
rm -f $LATEFILE
|
||||||
FILEV=0
|
FILEV=0
|
||||||
FILETRANSF=$UPDATETRANSF
|
FILETRANSF=$UPDATETRANSF
|
||||||
LATEFILETMP="$LATEFILE"
|
LATEFILETMP="$LATEFILE"
|
||||||
@ -882,7 +908,10 @@ script_placement() {
|
|||||||
log_print "- Placing settings script"
|
log_print "- Placing settings script"
|
||||||
# Updated script with a required clearing of settings
|
# Updated script with a required clearing of settings
|
||||||
elif [ "$UPDATETRANSF" -gt "$FILETRANSF" ] && [ -z "$NOTTRANSF" ]; then
|
elif [ "$UPDATETRANSF" -gt "$FILETRANSF" ] && [ -z "$NOTTRANSF" ]; then
|
||||||
log_print "- Settings cleared (script updated)"
|
log_handler "Current transfer version - ${FILETRANSF}"
|
||||||
|
log_handler "Update transfer version - ${UPDATETRANSF}"
|
||||||
|
log_handler "No settings set to not transfer"
|
||||||
|
log_print "- Script updated and settings cleared"
|
||||||
# Updated script
|
# Updated script
|
||||||
else
|
else
|
||||||
log_print "- Script updated"
|
log_print "- Script updated"
|
||||||
@ -891,7 +920,7 @@ script_placement() {
|
|||||||
for ITEM in $SETTINGSLIST; do
|
for ITEM in $SETTINGSLIST; do
|
||||||
# Checking if a script update requires some options not to transfer
|
# Checking if a script update requires some options not to transfer
|
||||||
case "$NOTTRANSF" in
|
case "$NOTTRANSF" in
|
||||||
*${ITEM}*)
|
*$ITEM*)
|
||||||
if [ "$UPDATETRANSF" -gt "$FILETRANSF" ]; then
|
if [ "$UPDATETRANSF" -gt "$FILETRANSF" ]; then
|
||||||
TRANSFOPT=1
|
TRANSFOPT=1
|
||||||
else
|
else
|
||||||
@ -939,15 +968,15 @@ script_placement() {
|
|||||||
done
|
done
|
||||||
fi
|
fi
|
||||||
log_handler "Setting up late_start settings script."
|
log_handler "Setting up late_start settings script."
|
||||||
if [ ! -d "$LATEPATH" ]; then
|
if [ ! -d "$MHPCPATH" ]; then
|
||||||
mkdir -pv $LATEPATH >> $LOGFILE 2>&1
|
mkdir -pv $MHPCPATH >> $LOGFILE 2>&1
|
||||||
fi
|
fi
|
||||||
cp -af $UPDATELATEFILE $LATEFILE >> $LOGFILE 2>&1
|
cp -af $UPDATELATEFILE $LATEFILE >> $LOGFILE 2>&1
|
||||||
# Downgraded script (flashed old module version)
|
# Downgraded script (flashed old module version)
|
||||||
elif [ "$UPDATEV" -lt "$FILEV" ]; then
|
elif [ "$UPDATEV" -lt "$FILEV" ]; then
|
||||||
log_print "- Settings cleared (script downgraded)"
|
log_print "- Settings cleared (script downgraded)"
|
||||||
if [ ! -d "$LATEPATH" ]; then
|
if [ ! -d "$MHPCPATH" ]; then
|
||||||
mkdir -pv $LATEPATH >> $LOGFILE 2>&1
|
mkdir -pv $MHPCPATH >> $LOGFILE 2>&1
|
||||||
fi
|
fi
|
||||||
cp -af $UPDATELATEFILE $LATEFILE >> $LOGFILE 2>&1
|
cp -af $UPDATELATEFILE $LATEFILE >> $LOGFILE 2>&1
|
||||||
# No update of script
|
# No update of script
|
||||||
@ -957,8 +986,8 @@ script_placement() {
|
|||||||
else
|
else
|
||||||
log_print "- Placing settings script"
|
log_print "- Placing settings script"
|
||||||
log_handler "Setting up late_start settings script."
|
log_handler "Setting up late_start settings script."
|
||||||
if [ ! -d "$LATEPATH" ]; then
|
if [ ! -d "$MHPCPATH" ]; then
|
||||||
mkdir -pv $LATEPATH >> $LOGFILE 2>&1
|
mkdir -pv $MHPCPATH >> $LOGFILE 2>&1
|
||||||
fi
|
fi
|
||||||
cp -af $UPDATELATEFILE $LATEFILE >> $LOGFILE 2>&1
|
cp -af $UPDATELATEFILE $LATEFILE >> $LOGFILE 2>&1
|
||||||
fi
|
fi
|
||||||
@ -968,26 +997,6 @@ script_placement() {
|
|||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
# Checks if any other module is using a local copy of build.prop
|
|
||||||
build_prop_check() {
|
|
||||||
log_print "- Checking for build.prop conflicts"
|
|
||||||
for D in $(ls $MODULESPATH); do
|
|
||||||
if [ "$D" != "$MODID" ]; then
|
|
||||||
if [ -f "$MODULESPATH/$D/system/build.prop" ] || [ "$D" == "safetypatcher" ]; then
|
|
||||||
if [ ! -f "$MODULESPATH/$D/disable" ]; then
|
|
||||||
NAME=$(get_file_value $MODULESPATH/$D/module.prop "name=")
|
|
||||||
ui_print "!"
|
|
||||||
log_print "! Another module editing build.prop detected!"
|
|
||||||
log_print "! Module - '$NAME'!"
|
|
||||||
log_print "! Modification of build.prop disabled!"
|
|
||||||
ui_print "!"
|
|
||||||
sed -i 's/BUILDPROPENB=1/BUILDPROPENB=0/' $UPDATELATEFILE
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
done
|
|
||||||
}
|
|
||||||
|
|
||||||
# Checks for the Universal SafetyNet Fix module and similar modules editing device fingerprint
|
# Checks for the Universal SafetyNet Fix module and similar modules editing device fingerprint
|
||||||
usnf_check() {
|
usnf_check() {
|
||||||
log_print "- Checking for fingerprint conflicts"
|
log_print "- Checking for fingerprint conflicts"
|
||||||
@ -1018,8 +1027,8 @@ bin_check() {
|
|||||||
mv -f $MODPATH/system/binpath $MODPATH/system/$BIN >> $LOGFILE 2>&1
|
mv -f $MODPATH/system/binpath $MODPATH/system/$BIN >> $LOGFILE 2>&1
|
||||||
}
|
}
|
||||||
|
|
||||||
# Check for late_start service boot script in post-fs-data.d, in case someone's moved it and also delete the old propsconf_post boot script if present
|
# Check for late_start service boot script in post-fs-data.d, in case someone's moved it, delete the old propsconf_post boot script if present and remove a few old log files from /cache
|
||||||
post_check() {
|
files_check() {
|
||||||
if [ -f "$POSTLATEFILE" ]; then
|
if [ -f "$POSTLATEFILE" ]; then
|
||||||
log_handler "Removing late_start service boot script from post-fs-data.d."
|
log_handler "Removing late_start service boot script from post-fs-data.d."
|
||||||
rm -f $POSTLATEFILE
|
rm -f $POSTLATEFILE
|
||||||
@ -1028,10 +1037,12 @@ post_check() {
|
|||||||
log_handler "Removing old post-fs-data boot script from post-fs-data.d"
|
log_handler "Removing old post-fs-data boot script from post-fs-data.d"
|
||||||
rm -f $POSTFILE
|
rm -f $POSTFILE
|
||||||
fi
|
fi
|
||||||
if [ -f "$CACHELOC/propsconf_postfile.log" ]; then
|
for ITEM in $CACHERM; do
|
||||||
log_handler "Removing old post-fs-data log from /cache."
|
if [ -f "$ITEM" ]; then
|
||||||
rm -f $CACHELOC/propsconf_postfile.log
|
log_handler "Removing old log files ($ITEM)."
|
||||||
|
rm -f $ITEM
|
||||||
fi
|
fi
|
||||||
|
done
|
||||||
}
|
}
|
||||||
|
|
||||||
# Update the device simulation variables if a fingerprint is set
|
# Update the device simulation variables if a fingerprint is set
|
||||||
@ -1065,15 +1076,15 @@ load_settings() {
|
|||||||
# Installs everything
|
# Installs everything
|
||||||
script_install() {
|
script_install() {
|
||||||
load_settings
|
load_settings
|
||||||
build_prop_check
|
|
||||||
usnf_check
|
usnf_check
|
||||||
bin_check
|
bin_check
|
||||||
post_check
|
files_check
|
||||||
script_placement
|
script_placement
|
||||||
log_print "- Updating placeholders"
|
log_print "- Updating placeholders"
|
||||||
placeholder_update $MODPATH/util_functions.sh MODVERSION VER_PLACEHOLDER "$MODVERSION"
|
placeholder_update $MODPATH/util_functions.sh MODVERSION VER_PLACEHOLDER "$MODVERSION"
|
||||||
placeholder_update $MODPATH/util_functions.sh LATEFILE LATE_PLACEHOLDER "$LATEFILE"
|
placeholder_update $MODPATH/util_functions.sh LATEFILE LATE_PLACEHOLDER "$LATEFILE"
|
||||||
placeholder_update $MODPATH/util_functions.sh MIRRORLOC MIRROR_PLACEHOLDER "$MIRRORLOC"
|
placeholder_update $MODPATH/util_functions.sh MIRRORLOC MIRROR_PLACEHOLDER "$MIRRORLOC"
|
||||||
|
placeholder_update $MODPATH/util_functions.sh VENDLOC VEND_PLACEHOLDER "$VENDLOC"
|
||||||
placeholder_update $MODPATH/util_functions.sh CACHELOC CACHE_PLACEHOLDER "$CACHELOC"
|
placeholder_update $MODPATH/util_functions.sh CACHELOC CACHE_PLACEHOLDER "$CACHELOC"
|
||||||
placeholder_update $MODPATH/util_functions.sh BIN BIN_PLACEHOLDER "$BIN"
|
placeholder_update $MODPATH/util_functions.sh BIN BIN_PLACEHOLDER "$BIN"
|
||||||
placeholder_update $MODPATH/system/$BIN/props ADBPATH ADB_PLACEHOLDER "$ADBPATH"
|
placeholder_update $MODPATH/system/$BIN/props ADBPATH ADB_PLACEHOLDER "$ADBPATH"
|
||||||
@ -1121,12 +1132,16 @@ print_edit() {
|
|||||||
PRINTCHNG="$(echo $MODULEFINGERPRINT | sed 's|\_\_.*||')"
|
PRINTCHNG="$(echo $MODULEFINGERPRINT | sed 's|\_\_.*||')"
|
||||||
fi
|
fi
|
||||||
for ITEM in $PRINTPROPS; do
|
for ITEM in $PRINTPROPS; do
|
||||||
|
if [ "$(resetprop $ITEM)" ]; then
|
||||||
log_handler "Changing/writing $ITEM."
|
log_handler "Changing/writing $ITEM."
|
||||||
if [ "$1" ]; then
|
if [ "$1" ]; then
|
||||||
echo "${ITEM}=${PRINTCHNG}" >> $1
|
echo "${ITEM}=${PRINTCHNG}" >> $1
|
||||||
else
|
else
|
||||||
resetprop -nv $ITEM $PRINTCHNG >> $LOGFILE 2>&1
|
resetprop -nv $ITEM $PRINTCHNG >> $LOGFILE 2>&1
|
||||||
fi
|
fi
|
||||||
|
else
|
||||||
|
log_handler "$ITEM not currently set on device. Skipping."
|
||||||
|
fi
|
||||||
done
|
done
|
||||||
# Edit device description
|
# Edit device description
|
||||||
if [ "$DESCRIPTIONSET" == 1 ]; then
|
if [ "$DESCRIPTIONSET" == 1 ]; then
|
||||||
@ -1252,7 +1267,7 @@ device_print_update() {
|
|||||||
|
|
||||||
# Checks and updates the prints list
|
# Checks and updates the prints list
|
||||||
download_prints() {
|
download_prints() {
|
||||||
if [ -z "$LOGNAME" ] && [ "$DEVTESTING" == "false" ]; then
|
if [ -z "$ANDROID_SOCKET_adbd" ] && [ "$DEVTESTING" == "false" ]; then
|
||||||
clear
|
clear
|
||||||
fi
|
fi
|
||||||
if [ "$1" == "Dev" ]; then
|
if [ "$1" == "Dev" ]; then
|
||||||
@ -1318,8 +1333,6 @@ reset_print() {
|
|||||||
replace_fn PRINTVEND 1 0 $LATEFILE
|
replace_fn PRINTVEND 1 0 $LATEFILE
|
||||||
# Updates prop change variables in propsconf_late
|
# Updates prop change variables in propsconf_late
|
||||||
replace_fn PRINTEDIT 1 0 $LATEFILE
|
replace_fn PRINTEDIT 1 0 $LATEFILE
|
||||||
# Updates improved hiding setting
|
|
||||||
replace_fn SETFINGERPRINT "true" "false" $LATEFILE
|
|
||||||
# Updates simulation setting
|
# Updates simulation setting
|
||||||
replace_fn DEVSIM 1 0 $LATEFILE
|
replace_fn DEVSIM 1 0 $LATEFILE
|
||||||
|
|
||||||
@ -1338,8 +1351,6 @@ change_print() {
|
|||||||
|
|
||||||
# Updates prop change variables in propsconf_late
|
# Updates prop change variables in propsconf_late
|
||||||
replace_fn PRINTEDIT 0 1 $LATEFILE
|
replace_fn PRINTEDIT 0 1 $LATEFILE
|
||||||
# Updates improved hiding setting
|
|
||||||
replace_fn SETFINGERPRINT "false" "true" $LATEFILE
|
|
||||||
|
|
||||||
# Set device simulation variables
|
# Set device simulation variables
|
||||||
print_parts "$2"
|
print_parts "$2"
|
||||||
@ -1371,8 +1382,6 @@ change_print_vendor() {
|
|||||||
replace_fn PRINTEDIT $TMPVAL $2 $LATEFILE
|
replace_fn PRINTEDIT $TMPVAL $2 $LATEFILE
|
||||||
# Clearing out module value
|
# Clearing out module value
|
||||||
replace_fn MODULEFINGERPRINT "\"$MODULEFINGERPRINT\"" "\"\"" $LATEFILE
|
replace_fn MODULEFINGERPRINT "\"$MODULEFINGERPRINT\"" "\"\"" $LATEFILE
|
||||||
# Updates improved hiding setting
|
|
||||||
replace_fn SETFINGERPRINT $BUILD1 $BUILD2 $LATEFILE
|
|
||||||
# Updates simulation setting
|
# Updates simulation setting
|
||||||
replace_fn DEVSIM $TMPVAL $2 $LATEFILE
|
replace_fn DEVSIM $TMPVAL $2 $LATEFILE
|
||||||
|
|
||||||
@ -1419,6 +1428,7 @@ print_parts() {
|
|||||||
fi
|
fi
|
||||||
if [ "$2" != "var" ]; then
|
if [ "$2" != "var" ]; then
|
||||||
replace_fn SIMDESCRIPTION "\"$SIMDESCRIPTION\"" "\"$VARDESCRIPTION\"" $LATEFILE
|
replace_fn SIMDESCRIPTION "\"$SIMDESCRIPTION\"" "\"$VARDESCRIPTION\"" $LATEFILE
|
||||||
|
replace_fn SIMDISPLAY "\"$SIMDISPLAY\"" "\"$VARDESCRIPTION\"" $LATEFILE
|
||||||
replace_fn SIMSDK "\"$SIMSDK\"" "\"$VARSDK\"" $LATEFILE
|
replace_fn SIMSDK "\"$SIMSDK\"" "\"$VARSDK\"" $LATEFILE
|
||||||
fi
|
fi
|
||||||
# Load module values
|
# Load module values
|
||||||
@ -1502,127 +1512,6 @@ change_sim_descr() {
|
|||||||
after_change "$1" "$3"
|
after_change "$1" "$3"
|
||||||
}
|
}
|
||||||
|
|
||||||
# ======================== Props files functions ========================
|
|
||||||
# Reset prop files
|
|
||||||
reset_prop_files() {
|
|
||||||
log_handler "Resetting prop files$3."
|
|
||||||
|
|
||||||
# Changes files
|
|
||||||
for PROPTYPE in $PROPSLIST; do
|
|
||||||
log_handler "Disabling prop file editing for '$PROPTYPE'."
|
|
||||||
PROP=$(get_prop_type $PROPTYPE)
|
|
||||||
SETPROP=$(echo "SET$PROP" | tr '[:lower:]' '[:upper:]')
|
|
||||||
replace_fn $SETPROP "true" "false" $LATEFILE
|
|
||||||
done
|
|
||||||
# Change fingerprint
|
|
||||||
replace_fn SETFINGERPRINT "true" "false" $LATEFILE
|
|
||||||
# Edit settings variables
|
|
||||||
replace_fn BUILDEDIT 1 0 $LATEFILE
|
|
||||||
replace_fn DEFAULTEDIT 1 0 $LATEFILE
|
|
||||||
|
|
||||||
if [ "$1" != "file" ]; then
|
|
||||||
after_change_propfile "$1" "$2" "$4"
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
# Editing prop files settings
|
|
||||||
edit_prop_files() {
|
|
||||||
log_handler "Modifying prop files$3."
|
|
||||||
|
|
||||||
# Checks if editing prop files is enabled
|
|
||||||
if [ "$BUILDPROPENB" == 0 ]; then
|
|
||||||
log_handler "Editing build.prop is disabled. Only editing default.prop."
|
|
||||||
PROPSLIST="
|
|
||||||
ro.debuggable
|
|
||||||
ro.secure
|
|
||||||
"
|
|
||||||
else
|
|
||||||
# Checking if the device fingerprint is set by the module
|
|
||||||
if [ "$FINGERPRINTENB" == 1 ] && [ "$PRINTEDIT" == 1 ]; then
|
|
||||||
if [ "$(grep "$ORIGFINGERPRINT" $MIRRORLOC/build.prop)" ]; then
|
|
||||||
log_handler "Enabling prop file editing for device fingerprint."
|
|
||||||
replace_fn SETFINGERPRINT "false" "true" $LATEFILE
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
|
|
||||||
for PROPTYPE in $PROPSLIST; do
|
|
||||||
log_handler "Checking original file value for '$PROPTYPE'."
|
|
||||||
PROP=$(get_prop_type $PROPTYPE)
|
|
||||||
FILEPROP=$(echo "FILE$PROP" | tr '[:lower:]' '[:upper:]')
|
|
||||||
SETPROP=$(echo "SET$PROP" | tr '[:lower:]' '[:upper:]')
|
|
||||||
|
|
||||||
# Check the original file value
|
|
||||||
PROPVALUE=$(get_file_value $LATEFILE "$FILEPROP=")
|
|
||||||
if [ -z "$PROPVALUE" ]; then
|
|
||||||
if [ "$PROPTYPE" == "ro.debuggable" ] || [ "$PROPTYPE" == "ro.secure" ]; then
|
|
||||||
PROPVALUE=$(get_file_value /default.prop "${PROPTYPE}=")
|
|
||||||
else
|
|
||||||
PROPVALUE=$(get_file_value $MIRRORLOC/build.prop "${PROPTYPE}=")
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Checks for default/set values
|
|
||||||
safe_props $PROPTYPE $PROPVALUE
|
|
||||||
|
|
||||||
# Changes file only if necessary
|
|
||||||
if [ "$SAFE" == 0 ]; then
|
|
||||||
log_handler "Enabling prop file editing for '$PROPTYPE'."
|
|
||||||
replace_fn $SETPROP "false" "true" $LATEFILE
|
|
||||||
elif [ "$SAFE" == 1 ]; then
|
|
||||||
log_handler "Prop file editing unnecessary for '$PROPTYPE'."
|
|
||||||
replace_fn $SETPROP "true" "false" $LATEFILE
|
|
||||||
else
|
|
||||||
log_handler "Couldn't check safe value for '$PROPTYPE'."
|
|
||||||
fi
|
|
||||||
done
|
|
||||||
replace_fn BUILDEDIT 0 1 $LATEFILE
|
|
||||||
replace_fn DEFAULTEDIT 0 1 $LATEFILE
|
|
||||||
|
|
||||||
if [ "$1" != "file" ]; then
|
|
||||||
after_change_propfile "$1" "$2" "$4"
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
# Edit the prop files
|
|
||||||
change_prop_file() {
|
|
||||||
case $1 in
|
|
||||||
build)
|
|
||||||
FNLIST="
|
|
||||||
ro.build.type
|
|
||||||
ro.build.tags
|
|
||||||
ro.build.selinux
|
|
||||||
"
|
|
||||||
PROPFILELOC=$MODPATH/system/build.prop
|
|
||||||
;;
|
|
||||||
default)
|
|
||||||
FNLIST="
|
|
||||||
ro.debuggable
|
|
||||||
ro.secure
|
|
||||||
"
|
|
||||||
PROPFILELOC=/default.prop
|
|
||||||
;;
|
|
||||||
esac
|
|
||||||
for ITEM in $FNLIST; do
|
|
||||||
PROP=$(get_prop_type $ITEM)
|
|
||||||
MODULEPROP=$(echo "MODULE${PROP}" | tr '[:lower:]' '[:upper:]')
|
|
||||||
FILEPROP=$(echo "ORIG${PROP}" | tr '[:lower:]' '[:upper:]')
|
|
||||||
SETPROP=$(echo "SET${PROP}" | tr '[:lower:]' '[:upper:]')
|
|
||||||
if [ "$(eval "echo \$$MODULEPROP")" ]; then
|
|
||||||
SEDVAR="$(eval "echo \$$MODULEPROP")"
|
|
||||||
else
|
|
||||||
for P in $SAFELIST; do
|
|
||||||
if [ "$(get_eq_left "$P")" == "$ITEM" ]; then
|
|
||||||
SEDVAR=$(get_eq_right "$P")
|
|
||||||
fi
|
|
||||||
done
|
|
||||||
fi
|
|
||||||
if [ "$(get_file_value $LATEFILE "${SETPROP}=")" == "true" ]; then
|
|
||||||
replace_fn $ITEM $(eval "echo \$$FILEPROP") $SEDVAR $PROPFILELOC && log_handler "${ITEM}=${SEDVAR}"
|
|
||||||
fi
|
|
||||||
done
|
|
||||||
}
|
|
||||||
|
|
||||||
# ======================== MagiskHide Props functions ========================
|
# ======================== MagiskHide Props functions ========================
|
||||||
# Check safe values
|
# Check safe values
|
||||||
safe_props() {
|
safe_props() {
|
||||||
@ -1794,10 +1683,13 @@ set_custprop() {
|
|||||||
CURRCUSTPROPS=$(get_file_value $LATEFILE "${ITEM}=")
|
CURRCUSTPROPS=$(get_file_value $LATEFILE "${ITEM}=")
|
||||||
case "$CURRCUSTPROPS" in
|
case "$CURRCUSTPROPS" in
|
||||||
*$1*)
|
*$1*)
|
||||||
|
if [ "$(echo $CUSTOMPROPSLIST | grep -Eo "(^| )$1($| )")" ]; then
|
||||||
TMPCUSTPROPS=$(echo "$CURRCUSTPROPS" | sed "s|${1}=${TMPORIG}|${1}=${TMPVALUE}|")
|
TMPCUSTPROPS=$(echo "$CURRCUSTPROPS" | sed "s|${1}=${TMPORIG}|${1}=${TMPVALUE}|")
|
||||||
;;
|
else
|
||||||
*)
|
|
||||||
TMPCUSTPROPS=$(echo "$CURRCUSTPROPS ${1}=${TMPVALUE}" | sed 's|^[ \t]*||')
|
TMPCUSTPROPS=$(echo "$CURRCUSTPROPS ${1}=${TMPVALUE}" | sed 's|^[ \t]*||')
|
||||||
|
fi
|
||||||
|
;;
|
||||||
|
*) TMPCUSTPROPS=$(echo "$CURRCUSTPROPS ${1}=${TMPVALUE}" | sed 's|^[ \t]*||')
|
||||||
;;
|
;;
|
||||||
esac
|
esac
|
||||||
SORTCUSTPROPS=$(echo $(printf '%s\n' $TMPCUSTPROPS | sort -u))
|
SORTCUSTPROPS=$(echo $(printf '%s\n' $TMPCUSTPROPS | sort -u))
|
||||||
@ -1947,42 +1839,26 @@ collect_logs() {
|
|||||||
*) BPNAME=""
|
*) BPNAME=""
|
||||||
;;
|
;;
|
||||||
esac
|
esac
|
||||||
if [ "$ITEM" != "$CACHELOC/propsconf.log" ]; then
|
if [ "$ITEM" != "$MHPCPATH/propsconf.log" ]; then
|
||||||
cp -af $ITEM ${TMPLOGLOC}/${BPNAME} >> $LOGFILE 2>&1
|
cp -af $ITEM ${TMPLOGLOC}/${BPNAME} >> $LOGFILE 2>&1
|
||||||
fi
|
fi
|
||||||
else
|
|
||||||
case "$ITEM" in
|
|
||||||
*cache)
|
|
||||||
if [ "$CACHELOC" == "/cache" ]; then
|
|
||||||
CACHELOCTMP=/data/cache
|
|
||||||
else
|
|
||||||
CACHELOCTMP=/cache
|
|
||||||
fi
|
|
||||||
ITEMTPM=$(echo $ITEM | sed 's|$CACHELOC|$CACHELOCTMP|')
|
|
||||||
if [ -f "$ITEMTPM" ]; then
|
|
||||||
cp -af $ITEMTPM $TMPLOGLOC >> $LOGFILE 2>&1
|
|
||||||
else
|
else
|
||||||
log_handler "$ITEM not available."
|
log_handler "$ITEM not available."
|
||||||
fi
|
fi
|
||||||
;;
|
|
||||||
*) log_handler "$ITEM not available."
|
|
||||||
;;
|
|
||||||
esac
|
|
||||||
fi
|
|
||||||
done
|
done
|
||||||
|
|
||||||
# Saving the current prop values
|
# Saving the current prop values
|
||||||
resetprop > $TMPLOGLOC/props.txt
|
resetprop > $TMPLOGLOC/props.txt
|
||||||
|
|
||||||
# Saving the log file
|
# Saving the log file
|
||||||
cp -af $CACHELOC/propsconf.log $TMPLOGLOC >> $LOGFILE 2>&1
|
cp -af $MHPCPATH/propsconf.log $TMPLOGLOC >> $LOGFILE 2>&1
|
||||||
|
|
||||||
# Package the files
|
# Package the files
|
||||||
cd $CACHELOC
|
cd $MHPCPATH
|
||||||
tar -zcvf propslogs.tar.gz propslogs >> $LOGFILE 2>&1
|
tar -zcvf propslogs.tar.gz propslogs >> $LOGFILE 2>&1
|
||||||
|
|
||||||
# Copy package to internal storage
|
# Copy package to internal storage
|
||||||
mv -f $CACHELOC/propslogs.tar.gz /storage/emulated/0 >> $LOGFILE 2>&1
|
mv -f $MHPCPATH/propslogs.tar.gz /storage/emulated/0 >> $LOGFILE 2>&1
|
||||||
|
|
||||||
# Remove temporary directory
|
# Remove temporary directory
|
||||||
rm -rf $TMPLOGLOC >> $LOGFILE 2>&1
|
rm -rf $TMPLOGLOC >> $LOGFILE 2>&1
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
id=MagiskHidePropsConf
|
id=MagiskHidePropsConf
|
||||||
name=MagiskHide Props Config
|
name=MagiskHide Props Config
|
||||||
version=v4.0.3-v63
|
version=v5.0.0-v64
|
||||||
versionCode=47
|
versionCode=48
|
||||||
author=Didgeridoohan
|
author=Didgeridoohan
|
||||||
description=Change your device's fingerprint, to pass SafetyNet's CTS Profile check. Edit prop files for better root hiding. Set/reset prop values set by MagiskHide. Change any prop values easily, and set your own custom props.
|
description=Change your device's fingerprint, to pass SafetyNet's CTS Profile check. Set/reset prop values set by MagiskHide. Change any prop values easily, and set your own custom props.
|
||||||
|
Binary file not shown.
20
uninstall.sh
20
uninstall.sh
@ -12,24 +12,8 @@ MODPATH=${0%/*}
|
|||||||
# Load functions
|
# Load functions
|
||||||
. $MODPATH/util_functions.sh
|
. $MODPATH/util_functions.sh
|
||||||
|
|
||||||
# Variables
|
rm -rf "$MHPCPATH"
|
||||||
DIR=/data/adb/mhpc
|
|
||||||
|
|
||||||
# Start logging
|
|
||||||
log_start
|
|
||||||
|
|
||||||
log_handler "Cleaning up module files during uninstall."
|
|
||||||
|
|
||||||
if [ -d "$DIR" ]; then
|
|
||||||
log_handler "Removing settings file(s)."
|
|
||||||
echo "Deleting $DIR" >> $LOGFILE 2>&1
|
|
||||||
rm -rf "$DIR" >> $LOGFILE 2>&1
|
|
||||||
fi
|
|
||||||
|
|
||||||
log_handler "Checking for files to remove in $CACHELOC."
|
|
||||||
for ITEM in $CACHEFILES; do
|
for ITEM in $CACHEFILES; do
|
||||||
if [ -f "$CACHELOC/$ITEM" ]; then
|
rm -f $CACHELOC/$ITEM
|
||||||
echo "Deleting ${ITEM}." >> $LOGFILE 2>&1
|
|
||||||
rm -f $CACHELOC/$ITEM >> $LOGFILE 2>&1
|
|
||||||
fi
|
|
||||||
done
|
done
|
||||||
|
Loading…
Reference in New Issue
Block a user