Is there a way to cancel onCompletionListener?
<p>I'm writing an app with an autoplay feature, basically like a story book.  I set a media player <code>onCompletionListener</code> for each activity (page) so that when the narration is done, it starts the next activity (page).  There's an option to turn autoplay off (so you can read it at your own pace)...but turning it off results in the activity --the current page-- "remembering" the previous <code>onCompletionListener</code> call (as the back button is used to navigate back to the previous activity).  The ensuing activities (pages) work fine...as the logic check that starts the <code>onCompletionListener</code> keeps it from being executed.  </p>

<p>I've also tried moving that logic check to <code>onStart()</code> [instead of <code>onCreate</code>] as the menu where autoplay is toggled takes over the full screen and causes the previous activity (page) to execute <code>onStop()</code>.  While this setup keeps the <code>onCompletionListener</code> from being executed again...it still doesn't "cancel" the previous <code>onCompletionListener</code>.  Note: This is only an issue when an activity (page) has been started with the <code>autoplay=on</code>.</p>

<p>I have also briefly tried <code>super.recreate()</code> for that particular activity in an attempt to "restart" everything (hopefully, including the <code>onCompletionListener</code>).  However, the result was not pretty (activity blanked out and never reinitialized).</p>

<p>I didn't include any code as (to me) this is more of a procedural question.  1. can a <code>onCompletionListener</code> be "canceled".  If so, how?  2. If not, (since I'm relatively new to java/android) is the recreate method acceptable/beneficial to "reset" the entire activity (and the <code>onCompletionListener</code> inside it)?</p>

<p>I'm targeting API 11 and above.  Any thoughts/constructive criticism would be appreciated.</p>
