I create a ProgressDialog in onCreateDialog() like so:
protected Dialog onCreateDialog(int id) {
if (id == DIALOG_PROGRESS_ID)
Ha! Got it... was also struggling with this. But calling:
removeDialog(DIALOG_PROGRESS_ID)
immediately after
dismissDialog(...)
removes it from the (presumed) dialog cache for the Activity and forces a call to onCreateDialog. Create a new ProgressDialog in onCreateDialog and the spinner animates everytime (for me at least).