title: When is it necessary to use singleTop launchMode in an android widget or application?
body: <p>I just got burned by a widget.  I could see the cause of the problem, but I could not determine why or its solution.  My widget was issuing a search (SearchManager) and the activity launched a search dialog, but when it called-back to my widget, it created another reference to the widget (i.e., the thread-id was the same, but the widget-id changed from 65 to 0).</p>
  
  <p>This led me to believe that a new instance was getting created and I searched the documentation for settings that would apply to the problem.  Eventually, I stumbled upon the <code>android:launchMode="singleTop"</code> and as soon as I set it in the AndroidManifest, viola!  My widget worked.</p>
  
  <p>This took me the better part of two days to debug.</p>
  
  <p>Are there any other situations or is there a more technically-correct answer to my problem?</p>