Allow for job namespacing.

Make it possible for apps to put jobs into distinct namespaces. This can
be used by libraries to ensure their jobs don't conflict with other
libraries or the main app, by large apps that don't want to worry about
different parts of the app interfering with each other, by different
packages with a shared UID, or even by the system.

Bug: 253649458
Test: atest frameworks/base/services/tests/servicestests/src/com/android/server/job
Test: atest frameworks/base/services/tests/mockingservicestests/src/com/android/server/job
Test: atest CtsJobSchedulerTestCases:JobParametersTest
Test: atest CtsJobSchedulerTestCases:JobSchedulingTest
Change-Id: I1bcb80640c9ef8cb7e8ece77b0f265c60d758957
29 files changed