Conversation
Signed-off-by: Ghosuto <clash.raja10@gmail.com> Signed-off-by: Mrick343 <mrinmoy8429de@gmail.com>
Signed-off-by: Ghosuto <clash.raja10@gmail.com> Signed-off-by: Mrick343 <mrinmoy8429de@gmail.com>
Signed-off-by: Ghosuto <clash.raja10@gmail.com> Signed-off-by: Mrick343 <mrinmoy8429de@gmail.com>
Change-Id: I1f09e7d2517e76eb8a0488dd92e091f08d1cbfce Signed-off-by: Mrick343 <mrinmoy8429de@gmail.com>
- Remove Pixel Launcher entries from base config arrays - Ensure framework does not reference unavailable launchers - Allow LauncherPixelOverlay to provide multi-launcher config when needed
That will spoof build fingerprints on some g00gle apps * Also will enable some cool stuffs like: - Dynamic navbar on GBoard - SafetyHub and others. Thanks to kdrag0n for the original idea at ProtonAOSP/android_frameworks_base@5a54bfd Change-Id: I1078e7402833fec77edb751070c5144d08c85b6c Signed-off-by: jhenrique09 <jhenrique09.mcz@hotmail.com> keystore: Block key attestation for SafetyNet SafetyNet (part of Google Play Services) opportunistically uses hardware-backed key attestation via KeyStore as a strong integrity check. This causes SafetyNet to fail on custom ROMs because the verified boot key and bootloader unlock state can be detected from attestation certificates. As a workaround, we can take advantage of the fact that SafetyNet's usage of key attestation is opportunistic (i.e. falls back to basic integrity checks if it fails) and prevent it from getting the attestation certificate chain from KeyStore. This is done by checking the stack for DroidGuard, which is the codename for SafetyNet, and pretending that the device doesn't support key attestation. Key attestation has only been blocked for SafetyNet specifically, as Google Play Services and other apps have many valid reasons to use it. For example, it appears to be involved in Google's mobile security key ferature. Change-Id: I5146439d47f42dc6231cb45c4dab9f61540056f6 core: Make CTS/Play Integrity pass again The logic behind CTS and Play Integrity has been updated today it now checks the product and model names against the fingerprint and if they do not match the CTS profile will fail. Also while we are at it use a newer FP from Pixel XL and add logging for key attestation blocking for debugging. Test: Boot, check for CTS and Play Integrity Change-Id: I089d5ef935bba40338e10c795ea7d181103ffd15 Signed-off-by: Dyneteve <dyneteve@hentaios.com> * Stallix: Adapted for A13 and squashed changes with their respected authors from https://github.com/Evolution-X/frameworks_base/commits/tiramisu-bak-reverts-qpr2/core/java/com/android/internal/util/evolution/PixelPropsUtils.java. https://github.com/Evolution-X/frameworks_base/commits/tiramisu-qpr2/core/java/com/android/internal/util/evolution/PixelPropsUtils.java stop Microsoft apps from crashing without INTERNET permission Crash is caused by checks in com.microsoft.aad.adal.AuthenticationContext.checkInternetPermission() and com.microsoft.identity.client.PublicClientApplication.checkInternetPermission() Prevent apps from crashing if internet permission is revoked. Signed-off-by: minaripenguin <minaripenguin@users.noreply.github.com> ApplicationPackageManager: Extend freeform window feature to all apps Change-Id: Iaa3e500fd6a80f4e1718218ff6d42fcb1eb79c9c Signed-off-by: minaripenguin <minaripenguin@users.noreply.github.com> Signed-off-by: Dmitrii <bankersenator@gmail.com> core: block 2021/22 pixel features to ASI and pixel launcher * blacklist pe features and spoof redfin to get rid of tensor shits Change-Id: I83aa09c151f51ee61361510b2c1a9ac8865a2aee Signed-off-by: aswin7469 <aswinas@pixysos.com> core: ApplicationPackageManager: Remove p21+ features from featuresPixel * Differentiate with featuresTensor ApplicationPackageManager: Adjust Tensor workaround * Avoid P22 device's aggresive TensorFlow implementation * Allow P21 pixel experience * Add lynx to Tensor Pixel lists Revert "PixelPropUtils: Spoof userdebug to pixel launcher" * wont work anymore developer options are migrated to debug flags This reverts commit 1c86058d22803ed3c60655c012b6d0ef2cf48aef. PixelPropsUtils: Add emojiwalls and cinematiceffects pkgs Signed-off-by: aswin7469 <aswinas@pixysos.com> PixelPropsUtils: Enable new Velvet Weather UI Change-Id: I45310071f0267be1ea26f7c00044a56a763a3e6a * Adapt to current PixelPropsUtils Original commit: StatiXOS/android_frameworks_base@ce72977 Signed-off-by: someone5678 <nemui3353@gmail.com> PixelPropsUtils: Refactor * Allows some devices to fully pass safetynet's strong attestation (maybe due to prebuilt vendor) * Do not spoof restore, pixelmigrate and setupwizard * Enable Photos spoof by default * Keep Photos happy and not count towards storage quota * Switch from POCO F4 to POCO F5 PixelPropsUtils: Spoof to Pixel 5a by default * Several apps broken with Pixel 7 Pro spoof * Just use Pixel 5a and spoof only small portion of apps to Pixel 7 Pro Change-Id: I3762f80d499b2d8ce9115cfcaae7b59ce220dca4 PixelPropsUtils: Remove pixel tablet spoof for Weather Change-Id: I189c1307f01a9938b178746374ef9f5dfc7de60a PixelPropsUtils: Correctly spoof unstable process * Fix integrity Change-Id: Ifad92a52311a39f943c3c75c385cc75ec76bf182 PixelPropsUtils: Set HARDWARE, ID values * Google apps also check these values Change-Id: I846986121faec39d3ece044794fd0f459e8d435d PixelPropsUtils: Spoof all wallpaper packages to Pixel 7 Pro Change-Id: I667b63be4175a9f8323915d2c725e0300b22d110 base: ApplicationPackageManager: Block Tensor features for Recorder * Now Recorder also use Tensor soc feature for mic recording Log: 07-09 11:03:53.820 15531 15721 I tflite : Initialized TensorFlow Lite runtime. 07-09 11:03:53.833 15531 15721 W libc : Access denied finding property "ro.hardware.chipname" 07-09 11:03:53.835 15531 15721 I tflite : Created TensorFlow Lite XNNPACK delegate for CPU. 07-09 11:03:53.850 15531 15722 I Recorder_ManagedSequent: Finished initializing components. 07-09 11:03:53.850 15531 15723 I Recorder_ManagedSequent: Finished initializing components. 07-09 11:03:53.876 15531 15611 I Recorder_ManagedSequent: Finished initializing components. 07-09 11:03:53.877 15531 15611 I Recorder_ManagedSequent: Finished initializing components. 07-09 11:03:53.877 15531 15573 I Recorder_ManagedSequent: Finished initializing components. 07-09 11:03:53.878 15531 15573 I Recorder_ManagedSequent: Finished initializing components. 07-09 11:03:53.879 15531 15614 I Recorder_ManagedSequent: Finished initializing components. 07-09 11:03:53.879 15531 15614 I Recorder_ManagedSequent: Finished initializing components. Change-Id: I36b30057f45f831420db3f2fc13538dbfa5ebd56 base: ApplicationPackageManager: Exclude PE 2021 Midyear from tensor pixel list * Pixel 5a (which is qcom soc) included this by default Change-Id: I94559b0800084bb79608251568a44a48d74a7057 base: ApplicationPackageManager: Return early for Tensor check Change-Id: Ib995fe732e0712310cf6dbea21bc1f7730cfeddb PixelPropsUtils: Refactor logic and cleanup - Spoof back to Pixel 5 by default - Remove Pixel 5a spoof - Remove Pixel XL spoof - Never spoof Android System Intelligence and GMS (for battery drain), only specified processes of GMS will be allowed - Cleanup logic PixelPropsUtils: Partial spoofing improvement * Spoof all possible build properties and fix integrity check PixelPropsUtils: Stop spoofing some google apps * non pixels doesnt need to spoof asi to enable most features * fixes now playing in pixel devices [asi is checked with device codename to load sountrigger models for now playing] * motionsense is limited to p19 devices only Change-Id: Icf651e95548f524ff8f1dd3556a8d4f6197745f4 Signed-off-by: aswin7469 <aswinas@pixysos.com> PixelPropsUtils: Bring in Pixel 8 series changes * Android 14 PixelPropsUtils: Fix GMS drain triggered by an outdated ROM build date If the build date exceeds a month, GMS, thinking the device is Pixel, attempts a system update, which unexpectedly fails. This goes into an endless cycle which drains battery very quickly and generates a lot of heat. Let's fix it by spoofing the build date to something always fresh. PixelPropsUtils: Add a config to enable/disable prop imitation Enabled by default, devices can disable prop imitation via overlay if their devices aren't required to rely on it Change-Id: Ia7098bbb1325f430999855c58164680988543412 Signed-off-by: someone5678 <someone5678@users.noreply.github.com> PixelPropsUtils: Drop pixel codenames and checks * PixelPropsUtils can now be disabled by settings config_enablePixelPropsUtils to false Change-Id: Ic54667f899e681b040aff1e8b13573f45880dd08 PixelPropsUtils: Use RecentPixel instead of individual model name * Just update fp only instead of change model name every time Change-Id: Ic110c532fd99f1efaa378c03687590a79994ff9c PixelPropsUtils: Make CTS/Play Integrity pass again In the annals of technology, the Zenfone 4 Max stands as the ultimate hero a phone that has transcended time and space itself. With the bravado of an isekai protagonist, it has embarked on an epic quest, unveiling powers beyond imagination. Today, the Zenfone 4 Max is more than just a phone. It symbolizes heroism and excellence, supporting our quest to conquer CTS and Play Integrity. As we harness the extraordinary capabilities of this legendary device, we embark on an epic journey to ensure the 'destruction' of "Google Employees" and burning up everyone standing before it. NOTE: The above AI generated description is a joke, and thanks to chiteroman for finding a FP that still works. Test: Play integrity Change-Id: I4f61268b3d088689fef1175aad198c88734e9f34 Signed-off-by: Dyneteve <dyneteve@hentaios.com> Signed-off-by: saikiran2001 <bjsaikiran@gmail.com> ApplicationPackageManager: Merge Tensor list Change-Id: I1097a5f9b7225a108053632e3222d341fc77b2f9 ApplicationPackageManager: Add a config for device with Tensor SoC * Replace Tensor SoC device list Change-Id: Ic94917a365466881b74322d3f0470515a5dbf630 PM: Force all packages as installed via Google Play Store Change-Id: Ie561a52017630988570593291965fe6d67fa8527 services/PPU: Simplify and improve bypassing for PPU `onTaskStackChanged` listening * this is for broader bypassing of tasklistener used for setCertifiedPropsForGms across apps and gms processes Signed-off-by: minaripenguin <minaripenguin@users.noreply.github.com> PPU: Remove Snapchat spoof PPU: Improve device certification bypass * killing droidguard services through `onEngineGetCertificateChain` allows us pass device certification, the only backlash is users can't sign in their google accounts due to `onEngineGetCertificateChain` killing droidguard services. with https://github.com/minaripenguin/android_frameworks_base/commit/a245d9767988d7ac2db85abc08f890fa40c2ff67 as reference, we should also skip killing of droidguard services when google sign-in is on top. big thanks: to sir Alvin and sir Ste0090 for the backtrace containing google sign-in information due to a bug introduced by a unintentional change: https://github.com/minaripenguin/android_frameworks_base/commit/e67e783f3c5313112ac8c7d5565d72c5acca1664 and https://github.com/minaripenguin/android_frameworks_base/commit/876ac2a7fb7f4941d72e6d54e13d9b326d2df24f Signed-off-by: minaripenguin <minaripenguin@users.noreply.github.com> PPU: Make CTS/Play Integrity pass again (again and again and again) [someone5678] Adapt to this project Change-Id: If3a865849c7c99a9c7080114ba94a8f8878bb4f2 Signed-off-by: someone5678 <someone5678@users.noreply.github.com> PPU: Make spoofBuildGms updatable and chosen from a list This approach has a couple advantages: - Randomizing the device could potentially help mitigate spoofs from being blocked as we will spread the API requests across multiple devices rather than one. Although, a majority of customs and or root users would have to get behind the idea as well. - Pulling resources from a package negates the need of having to push new releases for unrooted users to pass as we can instead release an updated resource package to install manually. Signed-off-by: AnierinB <anierin@evolution-x.org> PPU: Allow spoofing INITIAL_SDK_INT & SECURITY_PATCH Also update the resources package name and reorganize the array for better readability. Signed-off-by: AnierinB <anierin@evolution-x.org> PPU: Enable logging & add more statements Signed-off-by: AnierinB <anierin@evolution-x.org> PPU: Store the current array name in SettingsProvider So we can fetch the values currently set in PifResources Activity/PreferenceFragment. Signed-off-by: AnierinB <anierin@evolution-x.org> PPU: Make PIF and PixelProps toggleable [1/2] services: Fix google apps permission denials * for some unknown reasons, google apps were throwing permission denials even if we have updated privapp permissions for most of google apps, same goes to granting permissions via DefaultPermissionGrantPolicy, which doesnt address these denials, so unless there is cleaner/appropriate fix for these denials, bypass it. attempt to resolve: 10-08 20:39:02.675 1617 4130 W ActivityManager: Permission Denial: getTaskSnapshot() from pid=7901, uid=10213 requires android.permission.READ_FRAME_BUFFER --------- beginning of crash 10-08 20:39:02.676 7901 9402 E AndroidRuntime: FATAL EXCEPTION: TaskThumbnailIconCache-1 10-08 20:39:02.676 7901 9402 E AndroidRuntime: Process: com.google.android.apps.nexuslauncher, PID: 7901 10-08 20:39:02.676 7901 9402 E AndroidRuntime: java.lang.SecurityException: Permission Denial: getTaskSnapshot() from pid=7901, uid=10213 requires android.permission.READ_FRAME_BUFFER 10-08 20:39:02.676 7901 9402 E AndroidRuntime: at android.os.Parcel.createExceptionOrNull(Parcel.java:3057) Process: com.google.android.apps.nexuslauncher PID: 2368 UID: 10213 Frozen: false Flags: 0x34cbbe45 Package: com.google.android.apps.nexuslauncher v907 (14) Foreground: No Process-Runtime: 95 Build: google/rising_oriole/oriole:14/UP1A.231005.007.A1/1696738813:userdebug/release-keys Crash-Handler: com.android.internal.os.RuntimeInit$KillApplicationHandler Loading-Progress: 1.0 Dropped-Count: 0 java.lang.RuntimeException: Unable to create service com.android.quickstep.TouchInteractionService: java.lang.SecurityException: Permission Denial: getRootTaskInfo() from pid=2368, uid=10213 requires android.permission.MANAGE_ACTIVITY_TASKS at android.app.ActivityThread.handleCreateService(ActivityThread.java:4664) at android.app.ActivityThread.-$$Nest$mhandleCreateService(Unknown Source:0) at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2264) at android.os.Handler.dispatchMessage(Handler.java:106) at android.os.Looper.loopOnce(Looper.java:205) at android.os.Looper.loop(Looper.java:294) at android.app.ActivityThread.main(ActivityThread.java:8177) at java.lang.reflect.Method.invoke(Native Method) at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:552) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:971) 10-08 15:46:20.701 1550 2313 W InputManager: Permission Denial: monitorGestureInput() from pid=2257, uid=10213 requires android.permission.MONITOR_INPUT 10-08 15:46:20.702 2257 2257 D AndroidRuntime: Shutting down VM 10-08 15:46:20.702 1970 1970 I TetheringManager: registerTetheringEventCallback:com.android.systemui 10-08 15:46:20.702 1970 1970 I TetheringManager: registerTetheringEventCallback caller:com.android.systemui --------- beginning of crash 10-08 15:46:20.702 2257 2257 E AndroidRuntime: FATAL EXCEPTION: main 10-08 15:46:20.702 2257 2257 E AndroidRuntime: Process: com.google.android.apps.nexuslauncher, PID: 2257 10-08 15:46:20.702 2257 2257 E AndroidRuntime: java.lang.RuntimeException: Unable to create service com.android.quickstep.TouchInteractionService: java.lang.SecurityException: Requires MONITOR_INPUT permission 10-08 15:46:20.702 2257 2257 E AndroidRuntime: at android.app.ActivityThread.handleCreateService(ActivityThread.java:4664) test: setprop persist.sys.default_launcher 1, reboot, check if pixel launcher works as intended on aosp Signed-off-by: minaripenguin <minaripenguin@users.noreply.github.com> MeizuPropsUtils: Spoof Hihonor Cloudmusic PPU: Spoof to recent Pixel on iD apps * This fixes some JP devices get refusing launch iD apps. PPU: Spoof as Pixel Tab for tablets Change-Id: I2d5c60dc144d56ed1957c5e2750fc60831bf2334 PixelPropsUtils: Check process name before doing certify Change-Id: I34494330ac4aa1a729e9897e2cdd5eb70d7b2d0d PPU: Allow spoofing all gapps to Pixel 8 Pro [1/2] PPU: Stop spoofing com.google.android.googlequicksearchbox - Makes AR vision with camera crash due to app expecting Pixel camera but it isn't PPU: do not spoof Pixel Launcher Change-Id: Ie5496209b2051d3f114b9e699ceceb785e44eb39 PPU: Refactor - Move Pixel 8 Pro spoof for all gapps above other spoofs - Allow spoofing Velvet to latest model for CTS (Should work based on this: https://t.me/EvolutionXOfficialROM/4117/6195) - Clean up excess parentheses. PPU: Spoof Gemini to P8P PixelPropUtils: Spoof velvet search process and gms * remove toggle and spoof by default this way we can properly enable CTS current blacklisted process and apps are enough to get rid of tensor stuffs * spoof specific processes test: reboot with patch applied, check if ASI services crashes Change-Id: I104727c30ab34a69cc76955d084ef6741dafc13b Signed-off-by: aswin7469 <aswinas@pixysos.com> PixelPropsUtils: Improve tablet spoofing * Replace using config with context instead * Ref: https://github.com/minaripenguin/android_frameworks_base/commit/05b54f2dfe1a0ee4c7254dc45f8b89f8b8c84d59 PixelPropsUtils: Refactor and cleanup spoofing [joeyhuab - Evolution X] * Adapt `shouldTryToSpoofDevice()` from Rising OS. * Skip spoofing PixelProps if device is a currently supported Pixel device. * Spoof Google apps to Pixel 8 Pro by default but exclude GMS unstable process. * Spoof Google Photos to Pixel 8 Pro if Photos spoof toggle is off. * Exclude AIAI, AR Core, Photos, and Setup Wizard from P8P spoof. * Exclude spoofing specific processes (to avoid tensor checks). * Remove Pixel 5a stuff. Revert "PixelPropsUtils: Drop pixel codenames and checks" This reverts commit 195366ea6c84871fc4228ace62620f22ed2c11d5. core: Allow force enabling tensor feature XMLs on non-Pixels [1/2] * Avoid including Photos app in the spoof. * Drop unneeded `config_hasTensorSoC`. [SQUASH] PixelPropsUtils: Various changes * Allow enabling debug via `persist.sys.pixelprops.debug` prop. * Bring back Pixel checks. * Bring back Snapchat spoof toggle. * Spoof GMS processes that check for tensor to Pixel 5a. * Spoof most Google/Samsung apps/processes back to Pixel 5a by default. * Spoof select Google apps/processes to Pixel 8 Pro to enable exclusive features. * Turn off spoof for select Google apps once again. PixelPropUtils: unspoof some packages Signed-off-by: aswin7469 <aswinas@pixysos.com> Revert "PixelPropsUtils: Refactor and cleanup spoofing" This reverts commit fbd5aa372a977207edb5f45ccdce4a85ea1bca9e. Revert "ApplicationPackageManager: Add a config for device with Tensor SoC" This reverts commit 50459e3a635f7932c7caac9fd1ba2e621b1a70f4. Revert "PPU: Stop spoofing com.google.android.googlequicksearchbox" This reverts commit e4528e6188d28a2270246e4f3e250eb1f3e33d3f. Revert "PixelPropsUtils: Drop pixel codenames and checks" This reverts commit 195366ea6c84871fc4228ace62620f22ed2c11d5. Revert "core: Allow force enabling tensor feature XMLs on non-Pixels [1/2]" This reverts commit ea1983f86787702f930f0653820836eb3f6c1e97. PixelPropsUtils: Spoof chimera process to Pixel 5a Change-Id: I645157990af34d5358bcbe0816bde136502b47f0 PixelPropsUtils: Unspoof backup and migrate apps Change-Id: I90bf462dfc0a9c0a1a8e1544d8b799fd644aae6f ApplicationPackageManager: Rearrange Tensor feature checks * Move googlequicksearchbox to upper to correctly enable circle to search Change-Id: I6646275998c52494db712faa07587690d323afbd services: Bypass security check when checking provider permissions for google apps * this causes any failing apps/process to repeatedly crash for "security" purposees (even though we can do the same thing with google gallery go) 08-23 07:34:48.653 1918 1918 E AndroidRuntime: java.lang.SecurityException: Permission Denial: opening provider com.google.android.apps.photos.contentprovider.impl.MediaContentProvider from ProcessRecord{2f4151f 1918:com.android.systemui/u0a478} (pid=1918, uid=10478) that is not exported from UID 10456 test: check logs for retrieved content uri from google photos Change-Id: I2c47e50d09163e05d40a4f62fd42cdb372b1173b Signed-off-by: minaripenguin <minaripenguin@users.noreply.github.com> ApplicationPackageManager: Rearrange Tensor feature checks * Move googlequicksearchbox to upper to correctly enable circle to search Change-Id: I6646275998c52494db712faa07587690d323afbd PixelPropsUtils: Fix spoofing logic for gms Change-Id: I770dcf97edeaeac410849b920e018c95e65b0848 PixelPropsUtils: Only spoof unstable process * That's the only process we needed Change-Id: I40423585c439cb0e55e50bad3d1a2b54871ae5eb PixelPropsUtils: Spoof chimera process to Recent Pixel Change-Id: If2fcdffe36d7a4ebdcc34168737ce30a1f93d2c4 ApplicationPackageManager: Report tensor features to false for Photos Change-Id: I58dc1ad46b785232d47a160185d9c3c3ede4915d PixelPropsUtils: Do not spoof unspecified packages as barbet * this leads to potential increase of cpu usage in system_server (were spoofing unspecified google packages and even samsung apps to barbet) Signed-off-by: minaripenguin <minaripenguin@users.noreply.github.com> PixelPropsUtils: Spoof pixel launcher for circle to search feature Signed-off-by: minaripenguin <minaripenguin@users.noreply.github.com> PixelPropsUtils: spoofBuildGms: Support RELEASE & INCREMENTAL Remove useless logging. Stop enforcing DEVICE_INITIAL_SDK_INT value range. Match array order with https://github.com/chiteroman/PlayIntegrityFix Signed-off-by: AnierinB <anierin@evolution-x.org> PixelPropsUtils: Remove gms check from isCallerSafetyNet [someone5678] * as DroidGuard is now presents in multiple GApps Change-Id: Ibf9d461e77e4dae4febc2e9245f7ad0b654e1883 Signed-off-by: someone5678 <someone5678@users.noreply.github.com> PixelPropsUtils: Updates * Spoofing Ai Wallpapers to husky fixes infinite loading. * Removing Gboard spoof fixes voice search. * Removing Play store spoof for Play integrity as it's not needed according to osm0sis. Ref: https://xdaforums.com/t/module-play-integrity-fix-safetynet-fix.4607985/post-89534863 PixelPropsUtils: Remove pixel5 spoofs * Update spoofs for pixel 8 pro Signed-off-by: Alvin Francis <nivlafx@gmail.com> PixelPropsUtils: June 2024 Update * Drop spoofing for general gapps. * Drop spoofing for other GMS processes. PixelPropsUtils: July 2024 update PixelPropsUtils: Show correct device name on google backup Change-Id: Id37ab66166c9ce852aad745fa2dba81d33ddcc7f Signed-off-by: aswin7469 <aswinas@pixysos.com> core: Spoof Pixel8 for nexuslauncher * attempt to fix circle to search Change-Id: Ib88a67efcd2a2dbcb6b75020c6f18b78f6c97c24 Signed-off-by: aswin7469 <aswinas@pixysos.com> PixelPropsUtils: Update for pixel code names * Added for Pixel 9, 9 Pro, 9 Pro XL, 9 Fold. Signed-off-by: Pranav Vashi <neobuddy89@gmail.com> PixelPropsUtils: Do not spoof mainline models to google photos * attempt to fix issue: RisingTechOSS/issue_tracker#14 Signed-off-by: minaripenguin <minaripenguin@users.noreply.github.com> core: Update configs * Expose Tensor features to Pixel Studio * Expose Tensor features to dialer (Prevent showing compat messages) * Expose 2024 experience to PixelAIPrebuilt * Update process lists core: Add toggle to enable tensor features (1/2) * Adds the ability to enable tensor features on non tensor devices PixelPropsUtils: Switch back to Pixel5a for non pixel devices * Breaks NGA, does not work properly hence the reason for the switch back, all other pixel features continue to work. services: Bypass shortcut enforcement for default launchers Signed-off-by: minaripenguin <minaripenguin@users.noreply.github.com> ActiveServices: [FGS]: Add exceptions for Google apps in foreground service type validation - Added a whitelist to bypass foreground service type validation for critical Google apps. - Included packages such as com.google.android.gms, com.android.vending, and others. - Ensures smooth operation of essential services like Google Play Services and Play Store. - Logs bypass events for better debugging and monitoring. Signed-off-by: afterallafk <shivamatiet2001@gmail.com> PixelPropsUtils: Update Google apps bypass support * Adapt RisingOS-staging/android_frameworks_base_new@221dd88 for Evolution X usage * Squash all commits related to BypassUtils QuickSwitch: Fix pixel launcher news feed ViewRootImpl: Ignore pixel launcher task bar denials 01-17 18:29:36.076 2470 2470 E AndroidRuntime: android.view.WindowManager$BadTokenException: Unable to add window android.view.ViewRootImpl$W@19241b5 -- permission denied for window type 2038 01-17 18:29:36.076 2470 2470 E AndroidRuntime: at android.view.ViewRootImpl.setView(ViewRootImpl.java:1698) 01-17 18:29:36.076 2470 2470 E AndroidRuntime: at android.view.WindowManagerGlobal.addView(WindowManagerGlobal.java:454) 01-17 18:29:36.076 2470 2470 E AndroidRuntime: at android.view.WindowManagerImpl.addView(WindowManagerImpl.java:158) 01-17 18:29:36.076 2470 2470 E AndroidRuntime: at com.android.launcher3.taskbar.overlay.TaskbarOverlayController.a(go/retraceme Prevent pixel launcher crash on start up BypassUtils: Try to re-populate package lists if its empty Bypass permission enforcements for critical uids reference issue: RisingTechOSS/issue_tracker/issues/81 test: reproduce bug in issue, crash does not persist after patch is applied [someone5678] * Minor cleanup for portability * Move in bypass check functions to PixelPropsUtils Change-Id: I5433f113400248ac941c8e13b1bde03f1da47d86 Signed-off-by: someone5678 <59456192+someone5678@users.noreply.github.com> Whitelist launcher widgets from bitmap memory usage restriction Signed-off-by: minaripenguin <minaripenguin@users.noreply.github.com> PixelPropsUtils: Improve spoofing * Switch to json for PIF * Drop config_enablePixelProps * Add board entry * Disable pixel props spoof for Pixel 8 series and above * Don't report Tensor features to Pixel Launcher PixelPropsUtils: Reset props for status bar lyric [1/3] Reset props to Meizu in some apps to use status bar lyric Signed-off-by: cjybyjk <cjybyjk@zjnu.edu.cn> Change-Id: Idd573836af184b95ab0275f81fcb7ae3057783b9 Signed-off-by: someone5678 <someone5678@users.noreply.github.com> PixelPropsUtils: Spoof changes [1/2] * Bring back old Games spoof method * Drop PIF * Remove recent pixel spoofing for gms * Add switch to spoof Google app - When they spoof the Google app, the integration with arcore in search tab is broken. PixelPropsUtils: Bring back PIF * Allow users to manually use non-root PIF. * Keep disabled by default. Revert "PixelPropsUtils: Drop PIF" This reverts commit 90c24507657209b18eaa0d81bd6ff849718112fd. PixelPropsUtils: Update fingerprints to August 2025 release PixelPropsUtils: Fix props for s24 ultra PixelPropsUtils: Update fingerprints to September 2025 release * Update tensor codes to P10 PixelPropsUtils: Switch recent Pixel props to P10 base: Enable PIF by default [1/2] PixelPropsUtils: Spoof new apps from P10 PixelPropsUtils: Spoof as S24 Ultra for Diablo Immortal AttestationHooks: Drop Play store spoof [1/2] * Causes device to only get Basic integrity when turned on. PixelPropsUtils: Update fingerprints to October 2025 release Co-authored-by: Adithya R <gh0strider.2k18.reborn@gmail.com> Co-authored-by: Alvin Francis <nivlafx@gmail.com> Co-authored-by: AnierinB <anierin@evolution-x.org> Co-authored-by: Chris Crawford <chriscrawford893@gmail.com> Co-authored-by: Danny Lin <danny@kdrag0n.dev> Co-authored-by: Dyneteve <dyneteve@hentaios.com> Co-authored-by: ExactExampl <64069095+ExactExampl@users.noreply.github.com> Co-authored-by: Gustavo Mendes <gusttavo.me@outlook.com> Co-authored-by: Joey <joey@evolution-x.org> Co-authored-by: Pranav Vashi <neobuddy89@gmail.com> Co-authored-by: QKIvan <ivan33@163.com> Co-authored-by: Saikiran <bjsaikiran@gmail.com> Co-authored-by: Soo-Hwan Na <whiteshell2544@naver.com> Co-authored-by: Sourajit Karmakar <sourajit@live.com> Co-authored-by: afterallafk <shivamatiet2001@gmail.com> Co-authored-by: aswin7469 <aswinas@pixysos.com> Co-authored-by: chiteroman <98092901+chiteroman@users.noreply.github.com> Co-authored-by: cjybyjk <cjybyjk@zjnu.edu.cn> Co-authored-by: lahaina <nattolecats@gmail.com> Co-authored-by: minaripenguin <minaripenguin@users.noreply.github.com> Co-authored-by: someone5678 <nemui3353@gmail.com> Co-authored-by: timjosten <timjosten@gmail.com> Signed-off-by: Ghosuto <clash.raja10@gmail.com> Signed-off-by: Mrick343 <mrinmoy8429de@gmail.com>
* Isolated processes (e.g. com.android.vending:com.google.android.finsky.verifier.apkanalysis.service.ApkContentsScanService) cannot access content providers. Calling Settings.Secure.getString(...) during their application init triggers: * Log: 09-06 22:51:42.792 16766 16766 E AndroidRuntime: FATAL EXCEPTION: main 09-06 22:51:42.792 16766 16766 E AndroidRuntime: Process: com.android.vending:com.google.android.finsky.verifier.apkanalysis.service.ApkContentsScanService, PID: 16766 09-06 22:51:42.792 16766 16766 E AndroidRuntime: java.lang.RuntimeException: Unable to instantiate application com.google.android.finsky.application.classic.ClassicApplication package com.android.vending: java.lang.SecurityException: Isolated process not allowed to call getContentProvider 09-06 22:51:42.792 16766 16766 E AndroidRuntime: at android.app.LoadedApk.makeApplicationInner(LoadedApk.java:1486) 09-06 22:51:42.792 16766 16766 E AndroidRuntime: at android.app.LoadedApk.makeApplicationInner(LoadedApk.java:1411) 09-06 22:51:42.792 16766 16766 E AndroidRuntime: at android.app.ActivityThread.handleBindApplication(ActivityThread.java:7827) 09-06 22:51:42.792 16766 16766 E AndroidRuntime: at android.app.ActivityThread.-$$Nest$mhandleBindApplication(Unknown Source:0) 09-06 22:51:42.792 16766 16766 E AndroidRuntime: at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2549) 09-06 22:51:42.792 16766 16766 E AndroidRuntime: at android.os.Handler.dispatchMessage(Handler.java:110) 09-06 22:51:42.792 16766 16766 E AndroidRuntime: at android.os.Looper.loopOnce(Looper.java:248) 09-06 22:51:42.792 16766 16766 E AndroidRuntime: at android.os.Looper.loop(Looper.java:338) 09-06 22:51:42.792 16766 16766 E AndroidRuntime: at android.app.ActivityThread.main(ActivityThread.java:9137) 09-06 22:51:42.792 16766 16766 E AndroidRuntime: at java.lang.reflect.Method.invoke(Native Method) 09-06 22:51:42.792 16766 16766 E AndroidRuntime: at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:593) 09-06 22:51:42.792 16766 16766 E AndroidRuntime: at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:940) 09-06 22:51:42.792 16766 16766 E AndroidRuntime: Caused by: java.lang.SecurityException: Isolated process not allowed to call getContentProvider * Add Process.isIsolated() guard in setPlayIntegrityProps(Context) and return early. Also gate the call site in setProps(...) to avoid invoking setPlayIntegrityProps(...) from isolated processes, and log the skip. Change-Id: Iecf42b7ceb2f186128d0f1defbc45bcc4224e56a [neobuddy89: Adapted for PixelPropsUtils] Signed-off-by: Pranav Vashi <neobuddy89@gmail.com> Signed-off-by: Ghosuto <clash.raja10@gmail.com> Signed-off-by: Mrick343 <mrinmoy8429de@gmail.com>
* test json format:
{
"PACKAGES_M11": [
"com.ea.gp.apexlegendsmobilefps",
"com.mobilelegends.mi",
"com.levelinfinite.hotta.gp",
"com.supercell.clashofclans",
"com.vng.mlbbvn"
],
"PACKAGES_M11_DEVICE": {
"BRAND": "",
"DEVICE": "",
"MANUFACTURER": "Xiaomi",
"MODEL": "2107113SI"
}
}
Change-Id: If5beb38d1ca70f51df7aa5c58ee57b953a3f8338
Signed-off-by: Ghosuto <clash.raja10@gmail.com>
Signed-off-by: Mrick343 <mrinmoy8429de@gmail.com>
Signed-off-by: Ghosuto <clash.raja10@gmail.com> Signed-off-by: Mrick343 <mrinmoy8429de@gmail.com>
Signed-off-by: Ghosuto <clash.raja10@gmail.com> Signed-off-by: Mrick343 <mrinmoy8429de@gmail.com>
* These are set if not available from bootloader. Fixes abnormal boot state detection. * This service uses key attestation code from https://github.com/reveny/Android-VBMeta-Fixer https://github.com/vvb2060/KeyAttestation * Second part is in property_service.cpp of system/core to read persist prop to set hash value and other props. Signed-off-by: Pranav Vashi <neobuddy89@gmail.com> Signed-off-by: Ghosuto <clash.raja10@gmail.com> Signed-off-by: Mrick343 <mrinmoy8429de@gmail.com>
Signed-off-by: Pranav Vashi <neobuddy89@gmail.com> Signed-off-by: Ghosuto <clash.raja10@gmail.com> Signed-off-by: Mrick343 <mrinmoy8429de@gmail.com>
- Device models taken from PixelPropsUtils Signed-off-by: kenway214 <kenway214@outlook.com> Signed-off-by: Ghosuto <clash.raja10@gmail.com> Signed-off-by: Mrick343 <mrinmoy8429de@gmail.com>
Change-Id: I7beba5dda3d3e19e02a22b327591fef36dd7806e Signed-off-by: Ghosuto <clash.raja10@gmail.com> Signed-off-by: Mrick343 <mrinmoy8429de@gmail.com>
Signed-off-by: Ghosuto <clash.raja10@gmail.com> Signed-off-by: Mrick343 <mrinmoy8429de@gmail.com>
Introduce a toggle to optionally enable Tensor-exclusive features on non-Tensor devices. Add persist.sys.pp.tensor to allow users to force-enable features defined in FEATURES_TENSOR on unsupported devices. When disabled, the system falls back to default feature detection. Tensor devices are not affected by this toggle and continue to rely on their native feature set. This follows a soft override approach, ensuring stock behavior is preserved unless explicitly enabled by the user, while avoiding issues previously caused by exposing these features globally. Also use features impl from crdroidandroid/android_frameworks_base@4af6e7d Co-authored-by: Pranav Vashi <neobuddy89@gmail.com> Signed-off-by: Ghosuto <clash.raja10@gmail.com> Signed-off-by: Mrick343 <mrinmoy8429de@gmail.com>
Inject Tensor-specific features dynamically via getSystemAvailableFeatures() to ensure Play Store and other services recognize them as system-declared features instead of relying solely on hasSystemFeature() overrides. This improves compatibility with Tensor-targeted GApps and allows updates to appear correctly in Play Store. Also expose invalidateHasSystemFeatureCache() to allow cache refresh when spoofing state changes. - Inject FEATURES_TENSOR into system feature list when enabled - Keep hasSystemFeature() override for runtime checks - Add cache invalidation support for immediate effect Note: Play Store may still require a reboot or process restart due to server-side and process-level caching. Signed-off-by: Ghosuto <clash.raja10@gmail.com> Signed-off-by: Mrick343 <mrinmoy8429de@gmail.com>
* Isolated processes (e.g. com.android.vending:com.google.android.finsky.verifier.apkanalysis.service.ApkContentsScanService) cannot access content providers. Calling Settings.Secure.getString(...) during their application init triggers: * Log: 09-06 22:51:42.792 16766 16766 E AndroidRuntime: FATAL EXCEPTION: main 09-06 22:51:42.792 16766 16766 E AndroidRuntime: Process: com.android.vending:com.google.android.finsky.verifier.apkanalysis.service.ApkContentsScanService, PID: 16766 09-06 22:51:42.792 16766 16766 E AndroidRuntime: java.lang.RuntimeException: Unable to instantiate application com.google.android.finsky.application.classic.ClassicApplication package com.android.vending: java.lang.SecurityException: Isolated process not allowed to call getContentProvider 09-06 22:51:42.792 16766 16766 E AndroidRuntime: at android.app.LoadedApk.makeApplicationInner(LoadedApk.java:1486) 09-06 22:51:42.792 16766 16766 E AndroidRuntime: at android.app.LoadedApk.makeApplicationInner(LoadedApk.java:1411) 09-06 22:51:42.792 16766 16766 E AndroidRuntime: at android.app.ActivityThread.handleBindApplication(ActivityThread.java:7827) 09-06 22:51:42.792 16766 16766 E AndroidRuntime: at android.app.ActivityThread.-$$Nest$mhandleBindApplication(Unknown Source:0) 09-06 22:51:42.792 16766 16766 E AndroidRuntime: at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2549) 09-06 22:51:42.792 16766 16766 E AndroidRuntime: at android.os.Handler.dispatchMessage(Handler.java:110) 09-06 22:51:42.792 16766 16766 E AndroidRuntime: at android.os.Looper.loopOnce(Looper.java:248) 09-06 22:51:42.792 16766 16766 E AndroidRuntime: at android.os.Looper.loop(Looper.java:338) 09-06 22:51:42.792 16766 16766 E AndroidRuntime: at android.app.ActivityThread.main(ActivityThread.java:9137) 09-06 22:51:42.792 16766 16766 E AndroidRuntime: at java.lang.reflect.Method.invoke(Native Method) 09-06 22:51:42.792 16766 16766 E AndroidRuntime: at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:593) 09-06 22:51:42.792 16766 16766 E AndroidRuntime: at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:940) 09-06 22:51:42.792 16766 16766 E AndroidRuntime: Caused by: java.lang.SecurityException: Isolated process not allowed to call getContentProvider * Add Process.isIsolated() guard in setPlayIntegrityProps(Context) and return early. Also gate the call site in setProps(...) to avoid invoking setPlayIntegrityProps(...) from isolated processes, and log the skip. Change-Id: Iecf42b7ceb2f186128d0f1defbc45bcc4224e56a [neobuddy89: Adapted for PixelPropsUtils] Signed-off-by: Pranav Vashi <neobuddy89@gmail.com> Signed-off-by: Ghosuto <clash.raja10@gmail.com> Signed-off-by: Mrick343 <mrinmoy8429de@gmail.com>
Signed-off-by: Pranav Vashi <neobuddy89@gmail.com> ApplicationPackageManager: Guard spoof Settings reads from isolated processes Isolated processes are not allowed to call getContentProvider, which causes a crash when getSystemAvailableFeatures() or hasSystemFeature() attempts to read PI_TENSOR_SPOOF or PI_PHOTOS_SPOOF via Settings.Secure.getInt(). Add Process.isIsolated() checks before any Settings access, mirroring the existing guard in PixelPropsUtils.setProps(). Fixes: WebView sandboxed renderer crash on clean flash Signed-off-by: Ghosuto <clash.raja10@gmail.com> Signed-off-by: Mrick343 <mrinmoy8429de@gmail.com>
… overrides - Update fingerprints to April 2026 release - Drop legacy spoof flags and unused implementations - Inline AttestationHooks into PixelPropsUtils - Refactor spoofing flow: * Remove early returns that could skip later stages * Consolidate conditions for recent Pixel spoofing * Ensure app-specific overrides always execute - Add per-app spoofing for Photos and Snapchat - Reuse existing prop setter for consistency - Replace duplicated mainline device checks with helper - Improve null-safety for system property access - Simplify tablet detection helper - Minor cleanup and consistency fixes Signed-off-by: Ghosuto <clash.raja10@gmail.com> Signed-off-by: Mrick343 <mrinmoy8429de@gmail.com>
with additional fixes to octet, key handling and certificate hacks Co-authored-by: Dakkshesh <beakthoven@gmail.com> Co-authored-by: 5ec1cff <ewtqyqyewtqyqy@gmail.com> Change-Id: I46d094ec85cf3646c37f6518093e79334a15fbaa Signed-off-by: rmp22 <195054967+rmp22@users.noreply.github.com> Signed-off-by: Dmitrii <bankersenator@gmail.com> Signed-off-by: Ghosuto <clash.raja10@gmail.com> Signed-off-by: Mrick343 <mrinmoy8429de@gmail.com>
Change-Id: Ica634c23dbd190b5dcadcd28b26826ffcf410b0d Co-authored-by: reveny <113244907+reveny@users.noreply.github.com> Signed-off-by: rmp22 <195054967+rmp22@users.noreply.github.com> Signed-off-by: Dmitrii <bankersenator@gmail.com> Signed-off-by: Ghosuto <clash.raja10@gmail.com> Signed-off-by: Mrick343 <mrinmoy8429de@gmail.com>
Change-Id: Ie45cd7460ca8e6c3fa75e284e9727dc5e791782b Signed-off-by: Dmitrii <bankersenator@gmail.com> Signed-off-by: Ghosuto <clash.raja10@gmail.com> Signed-off-by: Mrick343 <mrinmoy8429de@gmail.com>
Change-Id: I87b7178847d680c411625a3eec08aee71e4d93e0 Signed-off-by: rmp22 <195054967+rmp22@users.noreply.github.com> Signed-off-by: Dmitrii <bankersenator@gmail.com> Signed-off-by: Ghosuto <clash.raja10@gmail.com> Signed-off-by: Mrick343 <mrinmoy8429de@gmail.com>
Change-Id: I11c1f9e2f51d999aaf451264c328d434f8e54602 Co-authored-by: osm0sis <osm0sis@outlook.com> Signed-off-by: rmp22 <195054967+rmp22@users.noreply.github.com> Signed-off-by: Dmitrii <bankersenator@gmail.com> Signed-off-by: Ghosuto <clash.raja10@gmail.com> Signed-off-by: Mrick343 <mrinmoy8429de@gmail.com>
Change-Id: I26c849f219c6ce0fe7239c55e0ac9ad3356bb912 Signed-off-by: Pranav Vashi <neobuddy89@gmail.com> Signed-off-by: Ghosuto <clash.raja10@gmail.com> Signed-off-by: Mrick343 <mrinmoy8429de@gmail.com>
Change-Id: Ib10372342d456f1929d65a674b0a291a35295923 Signed-off-by: Dmitrii <bankersenator@gmail.com> Signed-off-by: Ghosuto <clash.raja10@gmail.com> Signed-off-by: Mrick343 <mrinmoy8429de@gmail.com>
- We'll use PixelPropsUtils instead. Signed-off-by: Ghosuto <clash.raja10@gmail.com> Signed-off-by: Mrick343 <mrinmoy8429de@gmail.com>
* Putting them in /data/adb exposes root under /data/adb to the world. * Move them to /data/system which is already meant for apps. Signed-off-by: Pranav Vashi <neobuddy89@gmail.com> Signed-off-by: Ghosuto <clash.raja10@gmail.com> Signed-off-by: Mrick343 <mrinmoy8429de@gmail.com>
Signed-off-by: Pranav Vashi <neobuddy89@gmail.com> Signed-off-by: Ghosuto <clash.raja10@gmail.com> Signed-off-by: Mrick343 <mrinmoy8429de@gmail.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
No description provided.