Сообщение отправляет объект, но делает свойства объекта нулевыми - PullRequest
3 голосов
/ 22 марта 2011

У меня многопоточное приложение отправляет сообщения между потоками. Я отправляю сообщение этим методом

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 объекта отправляются как нулевые. Все примитивные типизированные свойства являются правильными, например, логические и целые числа.

...