Commit Graph

242 Commits

Author SHA1 Message Date
osm0sis
b57f46eed0 Revert "Fix seemingly unnecessary extra Build field spoofing calls"
This reverts commit 05927c60e1.

Seemingly necessary on some ROMs that do their own framework-level spoofing. May our logcats forgive us.
2024-01-16 14:44:29 -04:00
osm0sis
73d89d7a50 Clean up remaining .idea missing trailing newlines 2024-01-15 23:19:32 -04:00
osm0sis
475185c3ee Switch hooking method to Dobby
- Android 14 QPR2 (currently in Beta and due for Stable in March) breaks ShadowHook libc hooking needed for property spoofing
- there are currently no signs of life over at ShadowHook to resolve this despite my reporting it to them over a month ago

Co-authored-by: Nicholas Bissell <thefreeman193@hotmail.com>
Co-authored-by: chiteroman <98092901+chiteroman@users.noreply.github.com>
2024-01-15 23:16:21 -04:00
osm0sis
802c0a7617 Improve logging messages further 2024-01-15 17:18:26 -04:00
osm0sis
9a24cd6f23 Tidy JNI JSON sending/receiving code and logging 2024-01-15 17:05:26 -04:00
osm0sis
22e3a14a6f Refactor VERBOSE_LOGS parsing to directly pass level from Native to Java 2024-01-15 16:36:52 -04:00
osm0sis
24db525cf3 Add advanced Build classes field logging
Co-authored-by: Nicholas Bissell <thefreeman193@hotmail.com>
2024-01-13 14:09:29 -04:00
osm0sis
21a309dd12 More consistent replace file naming, retain custom through an update 2024-01-09 10:52:17 -04:00
osm0sis
05927c60e1 Fix seemingly unnecessary extra Build field spoofing calls
Co-authored-by: arda99 <arda99@noreply.xdaforums.com>
2024-01-08 21:36:34 -04:00
Chris Renshaw
008c0d0ada Add CI run number to zip filename 2024-01-08 20:57:35 -04:00
osm0sis
93ac718229 Support prop hacking on older Android 2024-01-08 16:44:26 -04:00
osm0sis
5aea2e877f README tweaks 2024-01-08 16:09:50 -04:00
osm0sis
d106e2a964 Allow customizable path replacement for conflicting custom ROM apps 2024-01-08 16:06:24 -04:00
osm0sis
a9630901b3 Reorganize slightly and add missing props 2024-01-08 14:15:58 -04:00
osm0sis
d7090f3f73 Use custom function to hack props without increasing prop change counter
- some apps were detecting tampered props from the increased prop_info serial counter using resetprop
- patching doesn't rely on magiskboot hexpatch so should work on KernelSU and APatch as well
- hopefully temporary until all root solutions adopt a patched system_properties repo to fix counters via resetprop
2024-01-08 13:55:55 -04:00
Chris Renshaw
3088f4b179 migrate.sh: remove all use of echo \n to be even more portable 2023-12-28 23:52:50 -04:00
Chris Renshaw
9673971b70 README: document VERBOSE_LOGS advanced logging levels 2023-12-28 20:10:19 -04:00
osm0sis
f6a9f855ef README: document manual migrate.sh execution 2023-12-28 13:28:31 -04:00
Chris Renshaw
edcb94e179 migrate.sh: add help, add force option, fix on shells without echo -e 2023-12-28 13:21:40 -04:00
osm0sis
a3cbed9a4e Clean up last remaining CR+LF 2023-12-27 23:32:40 -04:00
Chris Renshaw
e9b7289950 Begin next development cycle 2023-12-27 22:44:06 -04:00
Chris Renshaw
63fab9cca7 Fix Previous Changelogs link 2023-12-27 17:36:51 -04:00
osm0sis
c3ff39c00d Prepare v5 v5 2023-12-27 15:18:42 -04:00
Chris Renshaw
29a97b49e3 migrate.sh: Don't allow null as FIRST_API_LEVEL/DEVICE_INITIAL_SDK_INT 2023-12-24 22:43:53 -04:00
osm0sis
38f8861f30 Add custom.pif.json migration script
- runs during install/update when an old format file is detected and upgrades it to the current default format which now properly separates Build fields and system properties
- supports all previously used deprecated entries, e.g. BUILD_ID, FIRST_API_LEVEL and VNDK_VERSION
- extracts any missing information for default added fields from the FINGERPRINT
- may also be run manually from command prompt with `sh migrate.sh` or with file explorer app supporting scripts like FX File Explorer
2023-12-24 14:52:44 -04:00
osm0sis
63e4191745 Update example.pif.json for system properties support 2023-12-24 14:01:19 -04:00
Chris Renshaw
6f8706a817 Properly indicate we're in the next development cycle 2023-12-22 00:23:35 -04:00
osm0sis
89348bb75c Remove remaining cross-fork API compatibility hacks 2023-12-21 10:59:57 -04:00
osm0sis
dc10cae2b6 Future proof to allow spoofing all properties
- remove backwards compatibility cruft for all deprecated fields except FIRST_API_LEVEL (for now)
- iterate through all entries with . or * (see next) to allow modifying any matching DroidGuard-checked system property
- allow leading * wildcard to match multiple system properties in one json entry
- add logging levels using VERBOSE_LOGS as the last json entry, with values of 0, 1, 2, 3 or 100
- spoof sys.usb.state to mtp for DroidGuard by default to hide USB Debugging

Co-authored-by: arda99 <arda99@noreply.xdaforums.com>
2023-12-21 01:41:37 -04:00
Chris Renshaw
18ecfd6e32 Update GitHub Actions, use high zip compression 2023-12-17 13:34:31 -04:00
Chris Renshaw
676c5047b9 README: add WearOS caveat, new example template, badges (thanks @zgfg) 2023-12-14 12:59:05 -04:00
Chris Renshaw
cff8ca8b61 Adjust hooking error message
Whoops, not anymore! :P
2023-12-14 02:26:58 -04:00
osm0sis
93c53f5fb5 Prepare v4 v4 2023-12-13 14:28:59 -04:00
osm0sis
c925553198 Fix GMS crashes by aborting Java JSON read if a null/bad value is found 2023-12-13 13:20:47 -04:00
osm0sis
2a65fe624e Fix Gradle buildDir deprecation warnings, match CI Java
w: app/build.gradle.kts:50:31: 'getter for buildDir: File!' is deprecated. Deprecated in Java
w: app/build.gradle.kts:51:29: 'getter for buildDir: File!' is deprecated. Deprecated in Java
2023-12-13 11:40:52 -04:00
Yiğit
0a3d163264 Add missing support for Boolean and Long fields (#4)
e.g. IS_TREBLE_ENABLED, IS_DEBUGGABLE and TIME

Reference:
https://android.googlesource.com/platform/frameworks/base/+/master/core/java/android/os/Build.java
2023-12-13 11:17:29 -04:00
Chris Renshaw
e4dad4a2d3 Add empty example json with reference link 2023-12-12 08:05:59 -04:00
Chris Renshaw
72717f6948 Change function name to setField to be more accurate 2023-12-11 22:18:50 -04:00
osm0sis
ecfa0bbbdf Future proof to allow spoofing all fields
- very verbose logging (for now)
- combine setProp and setVersionProp into a single universal function
- iterate through all entries to allow modifying any matching android.os.Build or android.os.Build.VERSION field
- add BUILD_ID and VNDK_VERSION support to keep cross-fork API compatibility
- add exceptions for FIRST_API_VERSION (actually DEVICE_INITIAL_SDK_INT) and BUILD_ID (actually ID) for backwards API compatibility
2023-12-11 14:41:49 -04:00
osm0sis
093cf04232 Fix .gitignore 2023-12-10 20:56:22 -04:00
Chris Renshaw
42cffcbe62 Fix fallback to pif.json if included
- pif.json is only to be used in building the module if at some point in the future it's safe to include pif.json in the module zip again
- custom.pif.json is still the correct name to use for retaining the custom file through a module update
2023-12-09 20:49:30 -04:00
osm0sis
9cd7ab38bb Tweak CI wording for clarity 2023-12-05 12:07:06 -04:00
osm0sis
b64cc7e5bb README: Always provide credit where credit is due 2023-12-05 11:59:05 -04:00
Chris Renshaw
7a73d252b1 Update gradle 2023-12-03 08:59:48 -04:00
nyakze
fc500605b7 Update README.md (#1)
Add another very useful post
2023-12-02 12:06:55 -04:00
osm0sis
1dc48e17c3 .github: Display Sponsor button 2023-12-02 00:14:30 -04:00
osm0sis
e4f37428a8 Fix shadowhook submodule v3 2023-12-01 23:25:25 -04:00
osm0sis
be415c03f3 Remove unused Dobby resources 2023-12-01 22:59:49 -04:00
osm0sis
b87ebf75b1 More housekeeping 2023-12-01 22:55:07 -04:00
osm0sis
7c0769c2c2 Artifact zip is now module zip 2023-12-01 22:20:27 -04:00