title: What are ZygoteInit calls?
body: <p>Periodically I get Exceptions reported on Android Market that aren't reproducible. The stack traces always begin like this:</p>
  
  <pre><code>at ...
  at android.os.Handler.handleCallback(Handler.java:587)
  at android.os.Handler.dispatchMessage(Handler.java:92)
  at android.os.Looper.loop(Looper.java:143)
  at android.app.ActivityThread.main(ActivityThread.java:4306)
  at java.lang.reflect.Method.invokeNative(Native Method)
  at java.lang.reflect.Method.invoke(Method.java:507)
  at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:839)
  at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:597)
  at dalvik.system.NativeStart.main(Native Method)
  </code></pre>
  
  <p>ZygoteInit$MethodAndArgsCaller appears to be calling app methods directly instead of through code. How is this happening?</p>
  
  <hr>
  
  <p>Finally reproduced one of these exceptions as follows: touch app icon, touch text field to bring up dialog, press Home, kill app pid, touch app icon, and press Back. Added saving and restoring of app instances variables in onSaveInstanceState and onRestoreInstanceState to fix problem.</p>
  
  <p>Would still like to find description of ZygoteInit calls somewhere.</p>