System server should pass through the GD as is

This means the system server never unmarshall and marshall the GD parcel
and just pass through it. This also means the shared memory is always
allocated by the app, but not the system server.

The approach was taken from BaseBundle

Flag: android.app.appfunctions.flags.enable_app_function_manager
Bug: 360864791

Test: Added GenericDocumentWrapperTest
Test: atest AppFunctionDocumentManagerTest
Test: Added a log in unparcel() to print out the current UID. Make
sure system server never triggers unparcel()

Change-Id: Ibc1f8cae191d0d5c74c1b5ef9cd0e4ef767b53ef
2 files changed