I have two activities.
First calls second like this:
Intent intent = new Intent(this, Second.class); startActivityForResult(intent, 1);
I also ran into this and found the answer in the comments. To make it more discoverable for the next guy, let's restate as answer:
You must read the same data-type as you put in.