Add checks to allow SDK sandbox uids to broadcast certain intents

Integrates ActivityManager with new in-process APIs defined by
SdkSandboxManagerLocal, which check if a sandbox uid is allowed
to broadcast a given intent or start an activity with a given
intent. If the intent is not allowed, a SecurityException is thrown.

This change also adds several checks to the intent broadcast and
activity starting flow to accommodate the sdk sandbox process. The
goal of these checks is to ensure that something visible to the
user is running inside the SDK sandbox process when a broadcast is
sent or an activity is started.

Bug: 209599396
Test: Manual tests. Send ACTION_VIEW broadcast from sdk sandbox
      testing apps and note that activity starts. Try to send other
      broadcast and note failure.
Change-Id: Ia60e4a062efeef6f281c8bc28343c64f7f3936ab
4 files changed