I'm getting a null pointer exception when I do this:
private String[] foo;
private void readFromParcel(Parcel in) {
in.readStringArray(foo);
}
It seems I need to allocate the array first. But how do I know how big to make it? Do I have to write the size first and then read the size first? And isn't the point of having a writeStringArray()
method to handle this for me?
From the Android Documentation:
There are a variety of methods for reading and writing raw arrays of primitive objects, which generally result in writing a 4-byte length followed by the primitive data items.
So, if I write the count myself, it's getting written twice. There must be some way of doing this where I am not responsible for managing this.