Bundle keys/values stored in android service disappear in Message
<p>My activity shares the Handler around the app to worker threads in a service. Threads use the handler to sendMessage() Acitivity use handleMessage() to handle them</p>

<p>The Activity goes to background Android kills it and when come back it is started again.</p>

<p>The Activity calls Service's static method to check the last status (as to what the last sendMessage() was ) of threads in service. So that it can init its UI status based on the service thread's last message</p>

<pre><code>Message m = SyncService.lastSyncMessage();
</code></pre>

<p><strong>For some reason the bundle inside the message m is sometimes valid (contains key/value pairs) and sometimes key/values are absent</strong></p>

<p>The code on the side of thread which forwards message to UI via handler looks like this.</p>

<pre><code>  Handler uiHandler = UIGlobals.getHandler();
  Message msg = uiHandler.obtainMessage();
  Bundle msgBundle = new Bundle();

  msgBundle.putInt("status", syncEv.status.ordinal());
  msgBundle.putString("param", syncEv.param);

  msg.setData(msgBundle);
  if(uiHandler.sendMessage(msg))
  {
    lastMessage = msg;
  }
</code></pre>

<p>The static method in the service</p>

<pre><code>   public static Message lastSyncMessage()
{
    return lastMessage;
}
</code></pre>
