pull down to refresh

Introducing two-factor fingerprint and PIN authentication, 80% battery charge limit, and more.
• add support for adding a PIN as a 2nd factor to fingerprint unlock to enable our new recommended high threat model configuration of a random diceware passphrase as the primary unlock method and fingerprint+PIN with a random 4-6 digit PIN as the regularly used secondary unlock method (the usual limitations of secondary unlock only being usable for 48 hours after successful primary unlock and our limit of 5 total secondary unlock attempts apply as usual)
• add support for limiting charging the battery to 80% with support for bypass charging similar to the new Android 15 QPR1 stock Pixel OS feature, although unlike the stock Pixel OS our implementation still works while using a secondary user (the limit is currently hard-wired to 80% due to that being what's properly supported throughout the OS, but we can eventually make it configurable)
• add support for disabling dynamic code loading via storage for user installed by default as we already do for the dynamic code loading via memory setting
• allow dynamic code loading from storage by default for apps depending on Play services due to the legacy dynamite module implementation not yet being fully replaced by split APKs to avoid users encountering a huge number of issues if they disable it by default for user installed apps (users can still disable it for these apps manually and we won't need to keep this exception forever since Google is moving to split APKs for dynamite modules)
• add support for partially recompiling apps (speed-profile) in the Finalizing step of OS updates to skip partially recompiling them during boot, but while still doing most of the work after boot in the background (speed) to avoid slowing down OS update installation too much
• remove adding back boot-time display of app compilation progress now that it's no longer heavily used
• use 2 threads instead of 1 for background compilation of apps
• switch to the new upstream default of 4 threads for compiling apps during boot instead of our previous 2 threads which we set to replace the previous upstream default of a single thread
• Settings: add back battery optimization settings link to Battery screen which was removed by Android a long time ago
• Settings: don't disable App info > Battery usage item while its summary is loading
• Settings: temporarily stop showing battery usage info in App info item summary due to an upstream regression causing it to take more than 5 seconds to load in many cases
• add back our fix for an upstream Android bug causing null pointer exception system_server crash in InputMethodManagerService triggered when ending user sessions because it turns out to still be required after Android 15 QPR1
• fix upstream Android bug causing null pointer exception system_server crash in NotificationManagerService
• Contacts: improve dark theme color contrast
• kernel (5.10): update to latest GKI LTS branch revision including update to 5.10.232
• kernel (5.15): update to latest GKI LTS branch revision including update to 5.15.173
• kernel (6.1): update to latest GKI LTS branch revision including update to 6.1.119
• kernel (6.6): update to latest GKI LTS branch revision including update to 6.6.61
• kernel (Pixel 9, Pixel 9 Pro, Pixel 9 Pro XL, Pixel 9 Pro Fold): fix very minor Android 15 QPR1 regression causing the kernel commit hash to the omitted from the kernel version string and the Unix epoch being used as the build time instead of the kernel commit timestamp
• Camera: update to version 75
• Vanadium: update to version 131.0.6778.200.0
• add developer option to log binder transactions
• fix ignoring harmless fingerprint-service.goodix crash for our system service crash reporting
add support for limiting charging the battery to 80%
Thank you!! 💪
reply