Gate stricter manifest enforcement on targetSdk R
Two package parsing issues have been promoted to failures in R: a missing <application>/<instrumentation> tag, and an empty "android:name" attribute. The latter due to a bug in the parsing code. These need to be gated by targetSdkVersion so that APKs built for previous versions can still scan/install properly. This change introduces support for this through a framework that leverages @ChangeId to introduce individually toggle-able errors, in case a developer needs to install an app that isn't completely migrated for a new SDK version yet. The ignoreError method was removed from ParseResult as the errors it was used for were manually compared to PackageParser and it's likely they can be hard errors without breaking anything. This also adds tests for general ParseInput/Result behavior. Exempt-From-Owner-Approval: AppIntegrity already approved in older PS. Bug: 150776642 Test: atest android.content.pm.parsing.result.ParseInputAndResultTest Test: atest com.android.server.pm.parsing.PackageParsingDeferErrorTest Test: atest com.android.server.integrity.AppIntegrityManagerServiceImplTest Test: atest com.android.server.pm.parsing Change-Id: Id53a2e65f6e5e4dee9a41cc77007275b3a220ac3
Loading
Please register or sign in to comment