У меня многопоточное приложение отправляет сообщения между потоками. Я отправляю сообщение этим методом
public static void sendToListener(SomeObject someobject, Object obj) {
Message msg = new Message();
msg.setTarget(ResponseClass.responseMessageHandler);
Vector<Object> v = new Vector<Object>();
v.add(someobject);
v.add(obj);
msg.obj = v;
msg.arg1 = someobject.id;
Log.d(TAG,someobject.str); // property named str is not null
msg.sendToTarget();
}
и я получаю с;
public static Handler responseMessageHandler = new Handler(){
@Override
public void handleMessage(Message msg) {
Vector<Object> v = (Vector<Object>) msg.obj;
SomeObject so = (SomeObject) v.elementAt(0);
Object o = v.elementAt(1);
Log.d(TAG,so.str); // property named str is null
}
};
Если я отправляю сообщение с объектом, объект отправляется без проблем, но свойства String объекта отправляются как нулевые. Все примитивные типизированные свойства являются правильными, например, логические и целые числа.