Sharing data between two different processes


#1

Hi

I am trying to pass camera frame data of about 1.3MB to a custom system service from a java code. But the binder transaction is getting failed because of larger data. So is there any shared memory concept in android at java layer? If any solutions please let me know.

Thank you


#2

Binder transaction buffer has a limited fixed size (currently 1MB), binder is not designed for large data transfer.

I don’t know about all the IPC mechanism on Android, but basically I would say that a socket (UNIX) could help you to achieve what you want. (e.g. https://developer.android.com/reference/android/net/LocalSocket)