Exceptions that look like this are confusing:
FATAL EXCEPTION: main
RuntimeException("Unknown exception code: " + code + " msg " + msg);
What's going on here is that
readException() is checking the IPC byte stream for a header that says that an exception occurred; if it finds one, then it throws a new exception of that type, with the same message, but missing the original stack trace. (It only actually knows a few exception types; anything else gets translated into a base
So where's the original exception coming from? Well, somewhere down in the guts of the real implementation of
YourClass.yourMethod() -- not in any of the parcelable or IPC code. So go there, wrap the whole method in a try/catch, and log whatever you caught.
(Or set a breakpoint there if you've got remote process breakpoints working.)