title: Can Google protobuf be used for communication between C and Java services in android?
body: <p>We have a legacy protocol stack written in C with c-protobuf interface and C++ wrapper API that need to be ported to Android and develop java service with AIDL interfaces. So here are the questions,</p>
  
  <ol>
  <li><p>Can we remove C++ interface and have Java service talking to C- native process over protobuf?</p></li>
  <li><p>Another approach is to strip c-protobuf interface and develop JNI interface. What is the trade off between protobuf vs JNI approach?</p></li>
  <li><p>As far I know performance will be an issue due to IPC, serialization etc compared to JNI approach. Is there any other major drawback with this approach considering Java and Android context? Also, this service is going to be used by multiple user applications.</p></li>
  </ol>