The solution is that there’s probably some invalid data somewhere in the JSON blob. I was trying to enforce a stronger contract with the Android SDK, so that errors were loud and obvious. However, this has come up enough times that I’m going to acquiesce and just fail silently and move on when encountering bad data (with some logging, if desired by the app dev). The fix will be in the next SDK release.