[Google Pixel 7 Pro] roirraW "edor" ehT:
Unlocking Bootloader / Rooting / Updating | Play Integrity / SafetyNet | ADB/Fastboot & Windows USB Drivers

​

​

Unlocking Bootloader / Rooting / Updating

:​

How to Root the first time / aka How to unlock the Bootloader

:

Unlocking the bootloader will factory reset your device. There is no way around this. I highly suggest never re-locking your bootloader once you unlock it. If you do ever re-lock the bootloader, only do so after restoring the phone to 100% stock by using the latest Pixel 7 Pro Factory Image or Official Google Android Flash Tool.

Verizon variants:

T-Mobile and AT&T variants:

The direct-from-Google (or other retailers who aren't U.S. Carriers), the factory Carrier Unlocked Pixels:

Spectrum:

The rest of the world's carriers:

Other than trying the things I mentioned above, there is nothing else that anyone on XDA can do to help get OEM unlocking to be ungrayed.

Unlocking Bootloader

(required in order to root)

NOTE that as @Lughnasadh has previously found and reported, both the factory image method using Flash-All.Bat, and the Official Google Android Flash Tool (webpage) cause only the most recently flashed slot to boot. If you want both slots to be bootable, you want the Full OTA Zip method a couple of sections down in this post.

How to update each month (and also how to root)

[requires an unlocked bootloader for updating via this factory image method, and for the Full OTA method if you're rooting]

These three instructions only apply if you're already rooted and updating from one firmware version to another:

Made sure all Magisk Modules have been updated.

Disable all Magisk Modules.

UNhide

Magisk!

If you are going to use the Official Google Android Flash Tool, then skip the steps I indicate with FAB(Flash-All.Bat).

If using the Android Flash Tool to update/dirty flash, you should have the following items notselected:

Deselect Wipe

Deselect Force Flash all partitions (which will also wipe)

Deselect re-lock bootloader

Always use the latest ADB/Fastboot (SDK Platform Tools) and Windows USB Drivers.

Unzip the Platform Tools.

At this point, if you're going to use the Full OTA Zip method, go to the:

Full OTA Zip method

section below the next section.

Factory Image / Android Flash Tool method

:

Rooting or updating using the (preferred) Full OTA Zip method

​

These days I recommend this Full OTA Zip method instead of the Factory Image, for both rooting and updating each month.

NOTE that as @Lughnasadh and @badabing2003 have previously found and reported, both the factory image method using Flash-All.Bat, and the Official Google Android Flash Tool (webpage) cause only the most recently flashed slot to boot. If you want both slots to be bootable, you want the Full OTA Zip method a couple of sections down in this post.

These three instructions only apply if you're already rooted and updating from one firmware version to another:

Made sure all Magisk Modules have been updated.

Disable all Magisk Modules.

UNhide

Magisk!

Always use the latest ADB/Fastboot (SDK Platform Tools) and Windows USB Drivers.

Unzip the Platform Tools.

[you don't normally have to manually switch slots - this is just an FYI]

If you ever manually need to switch slots, then from running Android:

adb reboot bootloader
fastboot --set-active=other
fastboot reboot

[you can also follow all of these Full OTA Zip method instructions without a locked bootloader - just ignore anything having to do with Magisk or init_boot.img]

Full OTA Zip method

:

If you ever need to manually switch slots, then from running Android:

adb reboot bootloader
fastboot --set-active=other
fastboot reboot

Play Integrity / SafetyNet

:​

You do not need more than one of these:

@chiteroman's [MODULE] Play Integrity Fix (SafetyNet fix)

@osm0sis PlayIntegrityFork (fork of @chiteroman's)

I had been also using the following up until June 12, 2024, when @chiteroman said the above quote.

I haven't actually used the second one by osm0sis, so I don't know for sure, but I use the first one by chiteroman, combined with:

daboynb's PlayIntegrityNEXT (actually just playcurl) - you can use it to (your choice) automatically or manually update the Play Integrity fingerprints used.

Also for reference, @simplepinoi177's thread How to search & find your own fingerprints [noob friendly]: A Comprehensive Guide w/ tips & Discussion for Complete Noobs (from one)

Launch the Magisk app.

Go to Magisk's Settings (Gear in top right).

Click Hide the Magisk app.

When you hide it, you'll have the optional opportunity to change the Magisk app's name to whatever you wish. It doesn't have to be complex to fool apps that check for Magisk.

Important

: When you have the Magisk app hidden or renamed, you can accidentally install a new copy of Magisk. This situation won't work at all - neither copy of Magisk will work with two installed. This is one reason why I don't completely hide Magisk, so I can tell it's installed because I have it renamed as something easily recognizable.

Back to the Magisk app's Settings...

Click Systemless hosts. This adds a Magisk Module to Magisk, which you can verify in a later step.

Toggle Zygisk on.

Toggle Enforce DenyList on.

Click Configure DenyList.

Add every app that you want to explicitly deny root and the existence of root.

You can click the 3-dot menu and choose the options to display system and/or OS apps, if necessary.

Note that for many apps, it is not enough to click the single checkmark to the right of the app name in this list. For many but not all apps, you should click on the app name and you'll see it expand to two or more entries, each with its own toggles. In this expanded state, you can now check the single top checkbox beside the main app name and it'll toggle all individual sub-entries.

Some apps add new entries to this list from time to time, so if you find that an app used to work for you when rooted and doesn't now, check this list again and look for the entries that aren't fully checked. There will be an incomplete horizontal line above the apps that don't have all of their sub-entries toggled.

You can use the Search button at the top of this list to find specific apps quickly.

The most common apps you should definitely fully check in this list are:

IMPORTANT - There are some things, such as Google Play Services which it's fine to add to the DenyList, but it's perfectly normal when used in combination with the Universal SafetyNet Fix (USNF) that it is back to being unchecked the next time you visit the DenyList. Since USNF takes care of Google Play Services, you don't even have to add it to the DenyList in the first place.​

Google Play Store

Google Services Framework

Google Play Protect Service

Wallet

GPay

Any banking apps.

Any streaming apps that use DRM.

Any 2FA apps, especially those for work.

Some of those Google apps might not need denying, but it doesn't hurt to deny them.

Any time you toggle more entries in this list, it may be necessary to reboot the phone for it to take effect.

From the main screen in the Magisk app, go to Modules at the bottom.

Confirm that the Systemless hosts Magisk Module is added to this list, and enabled.

Install the appropriate Magisk Module: Universal SafetyNet Fix referenced above these numbered instructions.

Reboot.

The Play Integrity pop-up that appears should say:

[MEETS_BASIC_INTEGRITY, MEETS_DEVICE_INTEGRITY]

Sometimes, clearing app cache and/or data for apps like the Google Play Store, GPay, Wallet and others (and then rebooting) after these steps may help pass SafetyNet as well.

See @V0latyle's explanation (and further linked post) for why we can't achieve STRONG_INTEGRITY with an unlocked bootloader.

See @V0latyle's [DISCUSSION] Play Integrity API regarding why SafetyNet, per se, is actually defunct and replaced with Play Integrity - and New Official Universal SafetyNet Fix released by @kdrag0n v2.4.0 referenced in the steps above takes care of the latter.

Optional steps when updating - flashing custom kernels

:

IF you forget to disable Verity and Verification

:

My own words:

Optional steps when updating - flashing custom kernels

:

IF you forget to disable Verity and Verification

:

My own words:

ADB/Fastboot & Windows USB Drivers:

​