Skip to content
This repository has been archived by the owner on Oct 29, 2024. It is now read-only.

Show user name that last installed/updated the app "Install available apps" and App Info #560

Open
wants to merge 308 commits into
base: 14
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
308 commits
Select commit Hold shift + click to select a range
41056ad
SettingsProvider: Enable screen auto brightness by default
girlbossceo Jan 6, 2023
62afb64
SettingsProvider: hide sensitive information while locked by default
thestinger Jan 2, 2017
5bc5e53
SettingsProvider: Migration for legacy fingerprint keyguard toggle
flawedworld Oct 18, 2021
e81c8ba
SettingsProvider: add a helper class for migrating Global,Secure values
muhomorr May 24, 2023
b533e15
SettingsProviderHooks: Infrastructure for hooking settings state init
quh4gko8 Jun 29, 2023
adbe6e3
Disable "Add users when locked" settings on every boot
quh4gko8 Jul 1, 2023
2c858be
Disable instant apps feature on every boot
quh4gko8 Jul 1, 2023
5ac15c7
CarrierConfig: Always show APN settings on CDMA carriers
flawedworld Sep 28, 2021
349f476
CarrierConfig: Do not mark dun APN types as read only
flawedworld Feb 9, 2022
dbe4c6c
CarrierConfig: Always show ICCID
flawedworld Mar 5, 2022
c598303
CarrierConfig: allow toggling VoWiFi while roaming by default
girlbossceo Mar 24, 2023
78a5eae
enable secondary user logout support by default
flawedworld Oct 15, 2021
137f957
enable backup service for non-owner users
empratyush May 2, 2021
3b2adf2
increase default max password length to 64
thestinger Jun 29, 2017
061cb76
increase default max password length to 128
neelchauhan May 24, 2024
2774e36
GrapheneOS boot logo mask
thestinger May 11, 2019
6e346b5
use black wallpaper by default
thestinger Mar 7, 2022
92f37c5
stop auto-granting location to system browsers
thestinger Mar 17, 2019
9e94952
appop: Save discrete app op history for more permissions
kdrag0n Oct 11, 2021
8af9d29
add check for empty TTS engine name
thestinger Dec 20, 2020
3cd1bf9
Add a config to state whether a device supports increased touch sensi…
lzlrd Jun 30, 2021
6631886
stop enforcing camera sound for certain carriers
thestinger Feb 11, 2022
fb9f85f
colors: Switch to GrapheneOS blue color palette for Material You
kdrag0n Mar 7, 2022
cba97c5
improve PendingIntent security check compatibility
thestinger Mar 18, 2022
e30c34c
Show USB icon in notification instead of generic system icon
kdrag0n Oct 6, 2020
a6c642c
Sharesheet: Display two rows of max ranked targets
luk1337 Oct 28, 2020
22e9094
extsettings: add a set of helper classes for defining system settings
muhomorr Feb 12, 2023
614f1ac
add exec spawning sysprop to ExtSettings
muhomorr May 24, 2023
e4abf51
add exec-based spawning support
thestinger Mar 14, 2015
72ec4e6
disable exec spawning when using debugging options
thestinger May 22, 2019
58c468a
add parameter for avoiding full preload with exec
thestinger May 14, 2019
75dbbf4
pass through fullPreload to libcore
thestinger Sep 11, 2019
b331350
disable OpenGL preloading for exec spawning
thestinger May 14, 2019
83c0987
Revert "disable OpenGL preloading for exec spawning"
thestinger Oct 16, 2021
7af1a25
disable resource preloading for exec spawning
thestinger May 14, 2019
7948778
disable class preloading for exec spawning
thestinger May 14, 2019
02e4c12
disable WebView reservation for exec spawning
thestinger May 14, 2019
95c4e2e
disable JCA provider warm up for exec spawning
thestinger May 14, 2019
e7a7806
disable preloading classloaders for exec spawning
thestinger Sep 11, 2019
1d1ca64
disable preloading HALs for exec spawning
thestinger Sep 11, 2019
eb322cc
pass through runtime flags for exec spawning and implement them in th…
randomhydrosol Oct 30, 2020
847a632
exec spawning: don't close the binder connection when the app crashes
muhomorr Aug 8, 2022
64603b0
add a wrapper for execveat(2)
muhomorr Aug 14, 2022
6ce59e6
zygote: define runtime flags that depend on exec spawning
muhomorr Aug 14, 2022
5c4322d
exec spawning: support runtime resource overlays
muhomorr Mar 30, 2023
9068452
exec spawning: support disabling hardened_malloc and extended VA space
muhomorr Aug 14, 2022
f557362
exec spawning: add workaround for late init of ART userfaultfd GC
muhomorr Apr 9, 2024
3dc8a9f
use HTTPS X-Time header for time updates instead of NTP
muhomorr Jan 23, 2024
e93bbfc
extend auto-time setting to forced time updates
muhomorr Jan 24, 2024
24f36c2
reduce system clock drift warning
thestinger Feb 22, 2023
8c64120
core/config: disable using telephony-based auto time
thestinger Feb 22, 2023
9357982
add system package check methods to PackageUtils
muhomorr Jun 22, 2023
e2bf213
filter out non-system packages from location indicator exemptions
muhomorr Jun 22, 2023
adb859a
filter out non-system packages from getLocationBypassPackages() result
muhomorr Jun 22, 2023
a990223
define package name of first-party app source
muhomorr Jan 3, 2024
e86919b
SystemUI: require unlocking to use QS tiles by default
muhomorr Mar 11, 2024
08d33dd
SystemUI: allow to use some QS tiles while device is locked
muhomorr Mar 11, 2024
e483e8d
SystemUI: enable NFC quick settings tile
thestinger Mar 17, 2019
42722a8
SystemUI: Enable production-ready feature flags
kdrag0n Mar 14, 2022
7afe3df
SystemUI: Use new privacy indicators for location
kdrag0n Oct 11, 2021
3745076
SystemUI: fully enable location indicators by default
thestinger Aug 17, 2022
f556832
SystemUI: specify config_sceenshotWorkProfileFilesApp
muhomorr Jun 18, 2023
65896a1
SystemUI: improve media projection dialog wording
muhomorr Jan 22, 2023
3f0684d
SystemUI: add Battery share & Battery share quick tiles
empratyush Jun 21, 2022
a9ff616
SystemUI: change default quick tiles and quick tile order
thestinger Oct 19, 2021
cc20d14
SystemUI: make screenshot sound use touch sounds setting
girlbossceo Mar 19, 2023
6d1a50f
SystemUI: have NfcTile get an NfcAdapter directly
inthewaves Sep 20, 2020
17b4d23
SystemUI: apply "Add users from lock screen" setting to guest users
muhomorr Jun 23, 2023
247da13
SystemUI: Allow customizing lock screen shortcuts via ThemePicker
quh4gko8 Oct 10, 2023
3f4cf94
Add config to exempt telephony-related app from location indicators
kdrag0n Feb 17, 2022
6401325
exempt some system packages from status bar privacy indicator
thestinger Apr 17, 2022
fb2396e
allow PackageInstaller to use platform APIs
muhomorr Mar 5, 2024
c3d68fe
PackageInstaller: link "App info" screen from the uninstallation dialog
muhomorr Apr 17, 2022
d4431a8
PackageInstaller: make sure install confirmation returns a result
muhomorr Jun 2, 2022
861d727
disable support for pre-approving PackageInstaller sessions
muhomorr Dec 22, 2023
0116318
define READ_LOGS_FULL permission for promptless logcat access
muhomorr Jan 6, 2024
ea8c5c8
add APIs for launching LogViewer app
muhomorr Jan 6, 2024
8524ddb
add helpers for system_server extensions
muhomorr Jul 31, 2022
8c33553
Warn the user if they are using a prototype Pixel device
flawedworld Jun 15, 2022
a67e3ec
Support forwarding notifications from other users
girlbossceo Mar 19, 2022
7f667c2
DeviceIdleJobsController: don't ignore whitelisted system apps
muhomorr Jul 7, 2022
b94b32d
do not allow disabling app visibility filtering
muhomorr Apr 6, 2023
23dbef6
add hooks for modifying PackageManagerService behavior
muhomorr Mar 27, 2023
81d9d71
rename AppsFilterImpl.grantImplicitAccess method
muhomorr Apr 30, 2024
2b10955
add hooks for modifying ActivityThread behavior
muhomorr Aug 18, 2023
b79954a
AppBindArgs: infrastructure for passing extra args to app process init
muhomorr May 16, 2023
a682c67
infrastructure for custom handling of known packages
muhomorr Dec 20, 2023
8e3dcbf
gosps: support for per-app GrapheneOS-specific persistent state
muhomorr Jul 31, 2022
8762185
extend excludedMethods list in AndroidPackageTest
muhomorr Jun 2, 2024
ebda4f7
add method for updating cached package permission state
muhomorr Dec 18, 2023
c49d8bd
PackageHooks: infrastructure for per-package hooks in system_server
muhomorr Dec 18, 2023
6b0ff39
add base class for complex per-app switches
muhomorr Sep 24, 2023
eef8f96
infrastructure for spoofing self permission checks
muhomorr Jul 31, 2022
bc20675
infrastructure for special runtime permissions
muhomorr Feb 9, 2023
b7aeede
add special runtime permission for other sensors
muhomorr Feb 9, 2023
e57c70e
notify the user when sensors access is denied by OTHER_SENSORS perm
muhomorr Oct 4, 2022
7af19b7
make INTERNET into a special runtime permission
thestinger Mar 17, 2019
76e2ecc
improve compatibility of INTERNET special runtime permission
muhomorr Jul 31, 2022
8d709bf
don't run jobs that need connectivity in apps that lack INTERNET perm
muhomorr May 19, 2023
fe09c8f
PackageInstallerUI: an option to skip auto-grant of INTERNET permission
muhomorr Oct 7, 2022
463ca5a
use permanent fingerprint lockout immediately
thestinger Sep 12, 2017
e61f84b
add system property for disabling keyguard camera
thestinger Jul 25, 2017
6c518f0
add auto-reboot feature
muhomorr Jan 13, 2024
8a092af
infrastructure for the Storage Scopes feature
muhomorr Jul 31, 2022
55f5259
sscopes: temp: disable incomplete handling of READ_MEDIA_VISUAL_USER_…
muhomorr Oct 5, 2023
0c35feb
control access to Android/obb directory with a GosPackageState flag
muhomorr Jul 31, 2022
d7f9185
add an option to show the details of an application error to the user
muhomorr Aug 8, 2022
acc7ec1
ErrorDialogController: do not auto-dismiss crash dialogs
muhomorr Oct 1, 2023
5fce17c
Set always-on and lockdown on by default on first vpn connection at s…
quh4gko8 Aug 1, 2022
1333baa
pre-grant POST_NOTIFICATIONS to more system apps
muhomorr Aug 22, 2022
791567b
allow privileged installer to search for packages across all users
muhomorr Nov 23, 2022
e9aa43b
extend original-package renaming to provider authorities for Vanadium
muhomorr Nov 5, 2022
0d7dd66
extend original-package renaming to static launcher shortcuts
muhomorr Nov 23, 2022
aad255b
bugfix: properly acquire package state from original package
quh4gko8 Mar 13, 2024
ae1130b
disable package parser cache
muhomorr Jan 30, 2023
18c1958
perform additional boot-time checks on system package updates
muhomorr Jan 31, 2023
ca1a6aa
allow out-of-band package updates to use original-package system
muhomorr Jan 27, 2023
3cce1e6
require fs-verity when installing system package updates
muhomorr Jan 31, 2023
2088d5d
don't allow updating system packages to the same versionCode
muhomorr Dec 27, 2022
b1c9918
allow privileged installers to use getSharedLibraries(MATCH_ANY_USER)
muhomorr Mar 30, 2024
71e9680
allow only first party app source and shell to update system packages
muhomorr May 2, 2024
48bbb15
Remove build fingerprint from screenshot EXIF
girlbossceo Apr 29, 2022
36806f6
add toggle for screenshot timestamp EXIF metadata
girlbossceo Feb 18, 2023
17b5016
SUPL: Don't send IMSI / Phone number to SUPL server
MSe1969 Oct 29, 2018
5aa9096
add GNSS SUPL setting
muhomorr Mar 3, 2023
4837df5
allow privileged installers to maintain a global list of busy packages
muhomorr Mar 4, 2023
0952155
add option to scramble PIN layout
muhomorr Feb 24, 2023
9fa3ae2
enable LOCK_PIN_ENHANCED_PRIVACY setting by default
muhomorr Jun 14, 2023
0abdcfa
don't crash apps that depend on missing Gservices provider
muhomorr Mar 26, 2023
a4c3f15
integrate Google's EuiccSupportPixel package
muhomorr Mar 27, 2023
713e0db
integrate Google's eUICC LPA package (EuiccGoogle)
muhomorr May 30, 2023
e6907da
do not auto-grant Camera permission to the eUICC LPA UI app
muhomorr Mar 19, 2023
09f3d58
gmscompat: add compatibility layer for unprivileged GMS
thestinger Jun 6, 2023
5512368
require vendor camera extensions package to be a system app by default
muhomorr Mar 30, 2023
a43ef42
add config for Pixel Camera Services
muhomorr Jan 9, 2024
08fcbc0
infrastructure for creating per-package seinfo overrides
muhomorr Mar 30, 2023
cb409fb
support denying special access to hardware accelerators by Google apps
muhomorr Apr 6, 2023
8cde7a6
add GNSS PSDS setting
muhomorr May 2, 2023
d8a01a7
support redirecting ContentProvider calls to another provider
muhomorr May 16, 2023
cdfe799
infrastructure for the Contact Scopes feature
muhomorr May 16, 2023
ad3c81a
add connectivity checks setting and its migration from Settings.Global
muhomorr May 25, 2023
aff51db
Wi-Fi auto turn off
muhomorr Jul 31, 2022
1740d84
Bluetooth auto turn off
muhomorr Jul 31, 2022
a522d94
implement dynamic deny_new_usb toggle mode
thestinger Jun 16, 2016
e5c98bc
add support for hooking LocationManager methods
muhomorr Jun 19, 2023
ebcf6ac
improve compat with apps that try to access network location provider
muhomorr Jun 19, 2023
6de22be
add RemoteKeyProvisioning server override setting
muhomorr Aug 10, 2023
df82e91
support showing dexopt progress during boot
muhomorr Oct 3, 2023
493db70
don't skip AOT compilation of apps that weren't recently used
muhomorr Nov 14, 2022
4832f08
do not delete compiled code (OAT files) of hibernated apps
muhomorr Oct 11, 2023
aa2fa1c
disable OtaDexoptService
muhomorr Oct 23, 2023
c406c89
add notification-based UI for the background dexopt job
muhomorr Oct 23, 2023
9004445
infrastructure for per-package dex2oat compiler filter overrides
muhomorr Oct 31, 2023
840eda5
always use speed dex2oat compiler filter for VPN service packages
muhomorr Nov 1, 2023
876fc69
add helper class for launching non-standard Settings intents
muhomorr Nov 15, 2023
81b3b8f
add helper class for notifications that link AppSwitch UI
muhomorr Nov 8, 2023
1e9ca41
infrastructure for passing extra args to Zygote and WebViewZygote
muhomorr Sep 23, 2023
3f63133
infrastructure for passing SELinux flags to the kernel
muhomorr Sep 24, 2023
e27874a
add per-app setting for hardened_malloc and extended VA space
muhomorr Sep 26, 2023
a1b40a7
always stop app zygotes when app is being force-stopped
muhomorr Nov 8, 2023
9459da4
add per-app native debugging setting
muhomorr Sep 26, 2023
9d02bbe
add per-app dynamic code execution settings
muhomorr Sep 26, 2023
1c9f3b7
add a test for the new per-app hardening features
muhomorr Sep 20, 2023
b457a82
add per-app memory tagging setting
muhomorr Nov 5, 2023
22ebef8
add system API for getting app info by PID
muhomorr Nov 8, 2023
5c2ba8b
infrastructure for handling callbacks from logd to system_server
muhomorr Nov 8, 2023
966fae4
infrastructure for showing notifications about SELinux TSEC_FLAG denials
muhomorr Nov 15, 2023
ec61e85
show notification after app is blocked from accessing ptrace
muhomorr Nov 19, 2023
6e2ccea
fix rate limiting for non-app tombstones
muhomorr Nov 8, 2023
5c6bbef
DropBoxManager: fix TreeSet API contract violations
muhomorr Dec 23, 2023
511d1b6
DropBox: skip spurious system_server_crash entries
muhomorr Jan 15, 2024
10090ca
DropBox: skip fsck.f2fs results that don't contain errors
muhomorr Jan 16, 2024
5316122
notify the user about notable system journal entries
muhomorr Nov 8, 2023
65c954b
Widevine provisioning setting
maade93791 Sep 29, 2023
63f861a
add a method for sending BOOT_COMPLETED broadcast to a specific package
muhomorr Dec 23, 2023
5be7934
define READ_DEVICE_SERIAL_NUMBER permission for Build.getSerial() access
muhomorr Dec 18, 2023
d6c926e
aauto: define a restricted version of the MANAGE_USB permission
muhomorr Dec 18, 2023
a7002c1
aauto: add definition of restricted BLUETOOTH_PRIVILEGED permission
muhomorr Dec 18, 2023
b01f7e3
aauto: add definition of restricted WIFI_PRIVILEGED permission
muhomorr Dec 18, 2023
c3bb22b
aauto: add definition of restricted READ_PRIVILEGED_PHONE_STATE permi…
muhomorr Dec 25, 2023
724bb17
adjust definition of TelecomManager.getUserSelectedOutgoingPhoneAccou…
muhomorr Dec 25, 2023
bb32fe7
aauto: support using aauto USB accessory activity as a default activity
muhomorr Dec 20, 2023
1baa81d
aauto: define ASSOCIATE_COMPANION_DEVICES_RESTRICTED permission
muhomorr Dec 18, 2023
0df5c4f
aauto: support allowing association with "automotive projection" devices
muhomorr Dec 18, 2023
19fffe5
aauto: support granting privileged permissions via PackageHooks
muhomorr Dec 18, 2023
2e489ed
hide from Aurora Store packages that it's not allowed to update
muhomorr Jan 15, 2024
a2cf23d
run full explicit GC in SystemUI and system_server after locking
thestinger Feb 2, 2024
9491f9c
add UsbManager API for configuring USB port security state
muhomorr Feb 23, 2024
ebed785
add setting for USB port security state
muhomorr Feb 23, 2024
c22389f
Do not use filter calling uid parameter originally intended for insta…
quh4gko8 Nov 3, 2023
bcf8904
Disallow the camera shortcut toggle from the lockscreen
neelchauhan May 28, 2024
ba832ee
disable support for adoptable storage
muhomorr May 29, 2024
007439c
add a helper class for wiping eUICCs
muhomorr May 29, 2024
d84f5a9
add duress password feature
muhomorr May 29, 2024
bf3d789
add lock_settings shell commands for testing the duress password feature
muhomorr May 30, 2024
a73079f
add a test for the duress password feature
muhomorr May 29, 2024
92aa267
extend the upstream wipe-without-reboot implementation
muhomorr Jun 1, 2024
b280044
add lock_settings shell command option for printing executed Weaver ops
muhomorr Jun 1, 2024
7368847
duress password test: check that Weaver is wiped as part of duress wipe
muhomorr Jun 1, 2024
9ff1854
gmscompat: adjust to DynamiteLoader changes in GmsCore 24.22
muhomorr Jun 5, 2024
d166c1b
change default UsbPortSecurity mode to CHARGING_ONLY_WHEN_LOCKED
muhomorr Jun 6, 2024
da309f8
temp: unconditionally enable system crash notifications
muhomorr Jun 3, 2024
3077fec
gmscompat: move enableNfc() to GmsModuleHooks
muhomorr Jun 11, 2024
2d94824
Revert "SystemUI: have NfcTile get an NfcAdapter directly"
muhomorr Jun 11, 2024
2e7694a
update lint baseline
muhomorr Jun 11, 2024
2e7c290
temp: disable boot-time dexopt progress UI
muhomorr Jun 12, 2024
d2637f3
Revert "temp: unconditionally enable system crash notifications"
thestinger Jun 13, 2024
0e6093c
EuiccWipe: add missing null check for UiccSlotInfo
muhomorr Jun 13, 2024
9aa27c6
fixup! extend the upstream wipe-without-reboot implementation
muhomorr Jun 13, 2024
fdb7e91
DuressPasswordTest: remove device wipe from test preparation
muhomorr Jun 13, 2024
f69d259
DuressPasswordTest: adjust to changed representation of WeaverRead.to…
muhomorr Jun 13, 2024
8e8507b
DuressPasswordTest: fix test failure when device screen is initially …
muhomorr Jun 13, 2024
44f596c
fix ApplicationInfo flag initialization being skipped in some cases
muhomorr Jun 13, 2024
5a1f8db
Revert "temp: disable boot-time dexopt progress UI"
muhomorr Jun 13, 2024
dc1aa55
fix crash of boot-time info dialog due to delayed font init
muhomorr Jun 13, 2024
c3980b8
fixup! add option to scramble PIN layout
muhomorr Jun 13, 2024
a940cc6
Revert "Remove SystemUIDialog subclass from InternetDialog"
muhomorr Jun 13, 2024
d797b69
Revert "[CDM][1/2] Modulize files"
muhomorr Jun 14, 2024
ec250e6
Revert "Move association revoke logic to AssociationRevokeProcessor"
muhomorr Jun 14, 2024
cc10f8c
fixup! add setting for USB port security state
muhomorr Jun 18, 2024
982cdf7
add status callback to USB port security state API
muhomorr Jun 20, 2024
9a7b58e
fixup! add setting for USB port security state
muhomorr Jun 20, 2024
8e5156e
bugfix: Use cast checking first before casting to PackageExt
quh4gko8 Jun 20, 2024
74e1476
move auto-reboot callback listener from SystemUI to system_server
muhomorr Jun 20, 2024
9151858
don't toggle USB-C port after first unlock if it was connected BFU
muhomorr Jun 20, 2024
5d5a898
fixup! add setting for USB port security state
muhomorr Jun 20, 2024
3a0bf1d
Remove extra colon on GosPackageStatePmHooks
quh4gko8 Jul 1, 2024
ded72b0
rework initialization of UsbPortSecurityHooks
muhomorr Jul 1, 2024
2f6770b
fix USB port toggling being skipped after first unlock in some cases
muhomorr Jul 1, 2024
67e2cbc
stub out reads of hidden system settings in Google's text-to-speech app
muhomorr Jul 1, 2024
e3990a7
Revert "PackageInstaller: make sure install confirmation returns a re…
muhomorr Jul 1, 2024
3d0c1b5
gmscompat: don't let Play Store abort pending package installation
muhomorr Jul 1, 2024
2746309
PackageInstaller: add missing handling of trusted app sources
muhomorr Jul 1, 2024
f7b8cb9
fix AppSwitch#isNotificationSuppressed
octocorvus May 14, 2024
9ee4a6f
show a deprecation warning dialog on each launch of a 32-bit app
muhomorr Jul 6, 2024
ae51f79
better 32-bit deprecation warning
thestinger Jul 7, 2024
1de655b
fix a race condition in initialization of UsbPortSecurityHooks
muhomorr Jul 16, 2024
ca6f374
fix touch-to-unlock on Google devices with side fingerprint scanner
muhomorr Jul 16, 2024
e49abfa
add setting for alternative touchscreen mode
muhomorr Jun 19, 2024
55a5fa4
fixup! integrate Google's eUICC LPA package (EuiccGoogle)
muhomorr Jul 28, 2024
1622e61
TombstoneHandler: support not reporting crashes with specific backtraces
muhomorr Aug 5, 2024
f061bd8
don't report some android.hardware.bluetooth-service.bcmbtlinux crashes
muhomorr Aug 5, 2024
ebb62a9
don't report some vendor.google.wifi_ext-service-vendor crashes
muhomorr Aug 5, 2024
3639a74
Enforce BaseUserRestriction for DISALLOW_CONFIG_BRIGHTNESS
wangchaohui Mar 12, 2024
dd7c27b
Remove Dependency#get call from ToggleSeekBar.
Mar 5, 2024
f9f6121
add a method to get installer of record uid
quh4gko8 Jul 26, 2024
8e6cc13
AppCopyHelper: add extra information for fetched apps for AppCopyFrag…
quh4gko8 Jul 25, 2024
d584d1c
AppCopyHelper: Support for comparsion with extra info in SelectableAp…
quh4gko8 Jul 25, 2024
1562a7c
SettingsLib: show which user recently updated/installed app on App In…
quh4gko8 Jul 25, 2024
59ebb50
Exclude non-system userId for showing which user has installed an app
quh4gko8 Jul 25, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
1 change: 1 addition & 0 deletions Android.bp
Original file line number Diff line number Diff line change
Expand Up @@ -248,6 +248,7 @@ java_library {
"android.hardware.usb-V1.0-java-constants",
"android.hardware.usb-V1.1-java-constants",
"android.hardware.usb-V1.2-java-constants",
"android.hardware.usb.ext-V1-java",
"android.hardware.usb.gadget-V1-java",
"android.hardware.usb.gadget-V1.0-java",
"android.hardware.usb.gadget-V1.1-java",
Expand Down
12 changes: 12 additions & 0 deletions apex/jobscheduler/framework/java/android/app/AlarmManager.java
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,7 @@
import android.annotation.SystemApi;
import android.annotation.SystemService;
import android.annotation.TestApi;
import android.app.compat.gms.GmsCompat;
import android.compat.annotation.ChangeId;
import android.compat.annotation.EnabledSince;
import android.compat.annotation.UnsupportedAppUsage;
Expand Down Expand Up @@ -1049,6 +1050,17 @@ private void setImpl(@AlarmType int type, long triggerAtMillis, long windowMilli
long intervalMillis, int flags, PendingIntent operation, final OnAlarmListener listener,
String listenerTag, Executor targetExecutor, WorkSource workSource,
AlarmClockInfo alarmClock) {
if (GmsCompat.isEnabled()) {
if (windowMillis == WINDOW_EXACT && !canScheduleExactAlarms()) {
windowMillis = WINDOW_HEURISTIC;
}
// non-null WorkSource requires privileged UPDATE_DEVICE_STATS permission
workSource = null;

// requires privileged SCHEDULE_PRIORITIZED_ALARM permission
flags &= ~FLAG_PRIORITIZE;
}

if (triggerAtMillis < 0) {
/* NOTYET
if (mAlwaysExact) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -30,8 +30,11 @@
import android.annotation.SystemApi;
import android.annotation.SystemService;
import android.annotation.UserHandleAware;
import android.app.compat.gms.GmsCompat;
import android.content.Context;

import com.android.internal.gmscompat.client.ClientPriorityManager;

import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.util.Collections;
Expand Down Expand Up @@ -618,6 +621,11 @@ public void removeFromPermanentAllowList(@NonNull String packageName) {
@RequiresPermission(android.Manifest.permission.CHANGE_DEVICE_IDLE_TEMP_WHITELIST)
public void addToTemporaryAllowList(@NonNull String packageName, @ReasonCode int reasonCode,
@Nullable String reason, long durationMs) {
if (GmsCompat.isEnabled()) {
ClientPriorityManager.raiseToForeground(packageName, durationMs, reason, reasonCode);
return;
}

try {
mService.addPowerSaveTempWhitelistApp(packageName, durationMs, mContext.getUserId(),
reasonCode, reason);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -74,7 +74,7 @@ void addPowerSaveTempWhitelistAppDirect(int uid, long duration,

boolean isAppOnWhitelist(int appid);

int[] getPowerSaveWhitelistUserAppIds();
int[] getPowerSaveWhitelistAppIds();

int[] getPowerSaveTempWhitelistAppIds();

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2381,14 +2381,14 @@ public String[] getFullPowerWhitelistExceptIdle() {
}

/**
* Returns the array of app ids whitelisted by user. Take care not to
* Returns the array of whitelisted app ids. Take care not to
* modify this, as it is a reference to the original copy. But the reference
* can change when the list changes, so it needs to be re-acquired when
* {@link PowerManager#ACTION_POWER_SAVE_WHITELIST_CHANGED} is sent.
*/
@Override
public int[] getPowerSaveWhitelistUserAppIds() {
return DeviceIdleController.this.getPowerSaveWhitelistUserAppIds();
public int[] getPowerSaveWhitelistAppIds() {
return DeviceIdleController.this.getAppIdWhitelistInternal();
}

@Override
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -90,7 +90,7 @@ public void onReceive(Context context, Intent intent) {
case PowerManager.ACTION_POWER_SAVE_WHITELIST_CHANGED:
synchronized (mLock) {
mDeviceIdleWhitelistAppIds =
mLocalDeviceIdleController.getPowerSaveWhitelistUserAppIds();
mLocalDeviceIdleController.getPowerSaveWhitelistAppIds();
if (DEBUG) {
Slog.d(TAG, "Got whitelist "
+ Arrays.toString(mDeviceIdleWhitelistAppIds));
Expand Down Expand Up @@ -133,7 +133,7 @@ public DeviceIdleJobsController(JobSchedulerService service) {
mPowerManager = (PowerManager) mContext.getSystemService(Context.POWER_SERVICE);
mLocalDeviceIdleController =
LocalServices.getService(DeviceIdleInternal.class);
mDeviceIdleWhitelistAppIds = mLocalDeviceIdleController.getPowerSaveWhitelistUserAppIds();
mDeviceIdleWhitelistAppIds = mLocalDeviceIdleController.getPowerSaveWhitelistAppIds();
mPowerSaveTempWhitelistAppIds =
mLocalDeviceIdleController.getPowerSaveTempWhitelistAppIds();
mDeviceIdleUpdateFunctor = new DeviceIdleUpdateFunctor();
Expand Down Expand Up @@ -194,7 +194,7 @@ public void setUidActiveLocked(int uid, boolean active) {
}

/**
* Checks if the given job's scheduling app id exists in the device idle user whitelist.
* Checks if the given job's scheduling app id exists in the device idle whitelist.
*/
boolean isWhitelistedLocked(JobStatus job) {
return Arrays.binarySearch(mDeviceIdleWhitelistAppIds,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -35,6 +35,7 @@
import android.app.job.UserVisibleJobSummary;
import android.content.ClipData;
import android.content.ComponentName;
import android.content.Context;
import android.net.Network;
import android.net.NetworkRequest;
import android.net.Uri;
Expand Down Expand Up @@ -2384,6 +2385,23 @@ private boolean isConstraintsSatisfied(int satisfiedConstraints) {
return true;
}

if ((mRequiredConstraintsOfInterest & CONSTRAINT_CONNECTIVITY) != 0) {
if ((satisfiedConstraints & CONSTRAINT_CONNECTIVITY) != 0) {
var pmi = LocalServices.getService(
com.android.server.pm.permission.PermissionManagerServiceInternal.class);

if (pmi.checkUidPermission(getSourceUid(), android.Manifest.permission.INTERNET, Context.DEVICE_ID_DEFAULT) !=
android.content.pm.PackageManager.PERMISSION_GRANTED) {
if (DEBUG) {
Slog.d(TAG, "skipping job " + getJobId() + " for " + getSourcePackageName()
+ " in user " + getSourceUserId() + ": it has CONSTRAINT_CONNECTIVITY, "
+ "but its UID doesn't have the INTERNET permission");
}
return false;
}
}
}

int sat = satisfiedConstraints;
if (overrideState == OVERRIDE_SOFT) {
// override: pretend all 'soft' requirements are satisfied
Expand Down
6 changes: 4 additions & 2 deletions cmds/app_process/app_main.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -85,8 +85,10 @@ class AppRuntime : public AndroidRuntime
AndroidRuntime* ar = AndroidRuntime::getRuntime();
ar->callMain(mClassName, mClass, mArgs);

IPCThreadState::self()->stopProcess();
hardware::IPCThreadState::self()->stopProcess();
if (mClassName != "com.android.internal.os.ExecInit") {
IPCThreadState::self()->stopProcess();
hardware::IPCThreadState::self()->stopProcess();
}
}

virtual void onZygoteInit()
Expand Down
2 changes: 1 addition & 1 deletion cmds/hid/jni/com_android_commands_hid_Device.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -368,7 +368,7 @@ static void closeDevice(JNIEnv* /* env */, jclass /* clazz */, jlong ptr) {
}
}

static JNINativeMethod sMethods[] = {
static const JNINativeMethod sMethods[] = {
{"nativeOpenDevice",
"(Ljava/lang/String;IIII[B"
"Lcom/android/commands/hid/Device$DeviceCallback;)J",
Expand Down
2 changes: 1 addition & 1 deletion cmds/uinput/jni/com_android_commands_uinput_Device.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -325,7 +325,7 @@ static jint getEvdevInputPropByLabel(JNIEnv* env, jclass /* clazz */, jstring ra
return InputEventLookup::getLinuxEvdevInputPropByLabel(label.c_str()).value_or(-1);
}

static JNINativeMethod sMethods[] = {
static const JNINativeMethod sMethods[] = {
{"nativeOpenUinputDevice",
"(Ljava/lang/String;IIIIIILjava/lang/String;"
"Lcom/android/commands/uinput/Device$DeviceCallback;)J",
Expand Down
5 changes: 4 additions & 1 deletion core/api/current.txt
Original file line number Diff line number Diff line change
Expand Up @@ -231,6 +231,7 @@ package android {
field public static final String NFC = "android.permission.NFC";
field public static final String NFC_PREFERRED_PAYMENT_INFO = "android.permission.NFC_PREFERRED_PAYMENT_INFO";
field public static final String NFC_TRANSACTION_EVENT = "android.permission.NFC_TRANSACTION_EVENT";
field public static final String OTHER_SENSORS = "android.permission.OTHER_SENSORS";
field public static final String OVERRIDE_WIFI_CONFIG = "android.permission.OVERRIDE_WIFI_CONFIG";
field public static final String PACKAGE_USAGE_STATS = "android.permission.PACKAGE_USAGE_STATS";
field @Deprecated public static final String PERSISTENT_ACTIVITY = "android.permission.PERSISTENT_ACTIVITY";
Expand Down Expand Up @@ -345,7 +346,9 @@ package android {
field public static final String LOCATION = "android.permission-group.LOCATION";
field public static final String MICROPHONE = "android.permission-group.MICROPHONE";
field public static final String NEARBY_DEVICES = "android.permission-group.NEARBY_DEVICES";
field public static final String NETWORK = "android.permission-group.NETWORK";
field public static final String NOTIFICATIONS = "android.permission-group.NOTIFICATIONS";
field public static final String OTHER_SENSORS = "android.permission-group.OTHER_SENSORS";
field public static final String PHONE = "android.permission-group.PHONE";
field public static final String READ_MEDIA_AURAL = "android.permission-group.READ_MEDIA_AURAL";
field public static final String READ_MEDIA_VISUAL = "android.permission-group.READ_MEDIA_VISUAL";
Expand Down Expand Up @@ -43266,7 +43269,7 @@ package android.telecom {
method public android.telecom.PhoneAccountHandle getSimCallManager();
method @Nullable public android.telecom.PhoneAccountHandle getSimCallManagerForSubscription(int);
method @Nullable public String getSystemDialerPackage();
method @Nullable @RequiresPermission(android.Manifest.permission.READ_PHONE_STATE) public android.telecom.PhoneAccountHandle getUserSelectedOutgoingPhoneAccount();
method @Nullable @RequiresPermission(anyOf={"android.permission.READ_PRIVILEGED_PHONE_STATE", "android.permission.READ_PRIVILEGED_PHONE_STATE_ANDROID_AUTO"}) public android.telecom.PhoneAccountHandle getUserSelectedOutgoingPhoneAccount();
method @RequiresPermission(android.Manifest.permission.READ_PHONE_STATE) public String getVoiceMailNumber(android.telecom.PhoneAccountHandle);
method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public boolean handleMmi(String);
method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public boolean handleMmi(String, android.telecom.PhoneAccountHandle);
Expand Down
7 changes: 6 additions & 1 deletion core/api/lint-baseline.txt
Original file line number Diff line number Diff line change
Expand Up @@ -1109,6 +1109,12 @@ Todo: android.provider.ContactsContract.RawContacts#newEntityIterator(android.da
Documentation mentions 'TODO'


UnflaggedApi: android.Manifest.permission#OTHER_SENSORS:
New API must be flagged with @FlaggedApi: field android.Manifest.permission.OTHER_SENSORS
UnflaggedApi: android.Manifest.permission_group#NETWORK:
New API must be flagged with @FlaggedApi: field android.Manifest.permission_group.NETWORK
UnflaggedApi: android.Manifest.permission_group#OTHER_SENSORS:
New API must be flagged with @FlaggedApi: field android.Manifest.permission_group.OTHER_SENSORS
UnflaggedApi: android.R.color#on_surface_disabled_material:
New API must be flagged with @FlaggedApi: field android.R.color.on_surface_disabled_material
UnflaggedApi: android.R.color#outline_disabled_material:
Expand Down Expand Up @@ -1461,7 +1467,6 @@ UnflaggedApi: android.graphics.text.PositionedGlyphs#getItalicOverride(int):
New API must be flagged with @FlaggedApi: method android.graphics.text.PositionedGlyphs.getItalicOverride(int)
UnflaggedApi: android.graphics.text.PositionedGlyphs#getWeightOverride(int):
New API must be flagged with @FlaggedApi: method android.graphics.text.PositionedGlyphs.getWeightOverride(int)

UnflaggedApi: android.hardware.camera2.ExtensionCaptureRequest:
New API must be flagged with @FlaggedApi: class android.hardware.camera2.ExtensionCaptureRequest
UnflaggedApi: android.hardware.camera2.ExtensionCaptureRequest#ExtensionCaptureRequest():
Expand Down
44 changes: 44 additions & 0 deletions core/api/module-lib-current.txt
Original file line number Diff line number Diff line change
Expand Up @@ -86,6 +86,20 @@ package android.app.admin {

}

package android.app.compat.gms {

public class GmsModuleHooks {
method @Nullable public static String deviceConfigGetProperty(@NonNull String, @NonNull String);
method public static boolean deviceConfigSetProperties(@NonNull android.provider.DeviceConfig.Properties);
method public static boolean deviceConfigSetProperty(@NonNull String, @NonNull String, @Nullable String);
method @Nullable public static Boolean enableBluetoothAdapter();
method public static void enableNfc();
method public static boolean interceptSynchronousResultReceiverException(@NonNull RuntimeException);
method public static void makeBluetoothAdapterDiscoverable();
}

}

package android.content {

public abstract class ContentProvider implements android.content.ComponentCallbacks2 {
Expand Down Expand Up @@ -140,6 +154,31 @@ package android.content.pm {

}

package android.ext.settings {

public class ConnChecksSetting {
method public static int get();
method public static boolean put(int);
field public static final int VAL_DEFAULT = 0; // 0x0
field public static final int VAL_DISABLED = 2; // 0x2
field public static final int VAL_GRAPHENEOS = 0; // 0x0
field public static final int VAL_STANDARD = 1; // 0x1
}

public class RemoteKeyProvisioningSettings {
method @Nullable public static String getServerUrlOverride(@NonNull android.content.Context);
field public static final int GRAPHENEOS_PROXY = 0; // 0x0
field public static final int STANDARD_SERVER = 1; // 0x1
}

public class WidevineProvisioningSettings {
method @Nullable public static String getServerHostnameOverride(@NonNull android.content.Context);
field public static final int WV_GRAPHENEOS_PROXY = 0; // 0x0
field public static final int WV_STANDARD_SERVER = 1; // 0x1
}

}

package android.hardware.usb {

public class UsbManager {
Expand Down Expand Up @@ -456,6 +495,11 @@ package android.os {
field public static final long TRACE_TAG_NETWORK = 2097152L; // 0x200000L
}

public final class UserHandle implements android.os.Parcelable {
method public static int getUid(int, int);
method public static int getUserId(int);
}

}

package android.os.storage {
Expand Down
Loading