More work towards triaging missing app behavior.
Many places across the platform query package details without gracefully handling packages or components that go missing for various reasons. This can cause annoying user data loss, such as resetting back to built-in apps or dropping of accounts, etc. This change verifies that system callers have thought about these edge cases by logging if they use default matching behaviors without explicitly marking themselves as being "triaged." (The logging is currently disabled by default.) Also creates explicit definitions of supported flags for various incoming PackageManager calls, and defines a clear distinction between flag types: -- GET-style flags are used to request additional data that may have been elided to save wire space. -- MATCH-style flags are used to include components or packages that would have otherwise been omitted from a result set by current system state. There are a handful of existing GET flags that better fit under the MATCH definition, so this change clones them to new constants and marks the old ones as deprecated. Fixes bug in JobSchedulerService to consider jobs from apps on external storage. Revert some dialer behavior back to being untriaged. Change-Id: I9b6ab0968241e3479bddbd78de0c51e3b9917318
Loading
Please register or sign in to comment