Add marshal() and unmarshal() APIs.
Expose marshal/unmarshal APIs from binder_ndk because we need
to pass large data that exceeds binder memory limitation across
binder for auto use case. We need to serialize parcel to a shared
memory file and unmarshal it into a parcel. We would only marshal
stable AIDL generated parcelable.
Test: Add a unit test to CTS.
Bug: 197781220
Change-Id: I774663d619ad0ca04f23044d2245021b265b32c1
diff --git a/libs/binder/ndk/libbinder_ndk.map.txt b/libs/binder/ndk/libbinder_ndk.map.txt
index 4eb51c4..ac892db 100644
--- a/libs/binder/ndk/libbinder_ndk.map.txt
+++ b/libs/binder/ndk/libbinder_ndk.map.txt
@@ -144,6 +144,8 @@
LIBBINDER_NDK33 { # introduced=33
global:
AIBinder_Class_disableInterfaceTokenHeader;
+ AParcel_marshal;
+ AParcel_unmarshal;
};
LIBBINDER_NDK_PLATFORM {