Initial implementation of DPM.ACTION_SHOW_NEW_USER_DISCLAIMER.

This intent is broadcasted the first time a new user is added when the
device is managed by a device owner. Upon receiving it:

- A notification is shown.
- When the user taps the notification it launches an activity with a
  "Accept" button.
- When the user taps the button, the activity is dismissed and DPM is
  called to acknowledge that user accepted it.
- If the user never taps the notification or for some reason the
  button is not tapped, the intent will be sent again the next time
  the user is switched to.

There's still some polishing work to be done (like using the proper
resource strings), but the overall workflow is done.

Test: adb shell dumpsys activity service com.android.car/.PerUserCarService

Test: manual verification (automated tests will be added later
Bug: 175057848

Change-Id: I0063a28c5df226456da5c8abcd42d63b07dc4149
11 files changed
tree: 09286ef1fa160f7a3fa4fd7c2cba070a8ff070cd
  1. car-admin-ui-lib/
  2. car-bugreportd/
  3. car-internal-lib/
  4. car-lib/
  5. car-maps-placeholder/
  6. car-systemtest-lib/
  7. car-test-lib/
  8. car-usb-handler/
  9. car_product/
  10. cpp/
  11. experimental/
  12. FrameworkPackageStubs/
  13. obd2-lib/
  14. packages/
  15. procfs-inspector/
  16. service/
  17. tests/
  18. tools/
  19. user/
  20. vehicle-hal-support-lib/
  21. .clang-format
  22. .gitignore
  23. Android.mk
  24. CleanSpec.mk
  25. CPPLINT.cfg
  26. OWNERS
  27. PREUPLOAD.cfg
  28. README.md
  29. TEST_MAPPING
README.md

Native (C++) code format is required to be compatible with .clang-format file. Run

git clang-format --style=file --extension='h,cpp,cc' HEAD~

Note that clang-format is not desirable for Android java files. Therefore the command line above is limited to specific extensions.