 <p>Assuming you have any <code>View</code> instance in your activity, you can use <a href="http://developer.android.com/reference/android/view/View.html#postDelayed%28java.lang.Runnable,%20long%29" rel="nofollow">View.postDelayed()</a> to post runnable with a given delay. In this runnable you can call <a href="http://developer.android.com/reference/android/app/Activity.html#finish%28%29" rel="nofollow">Activity.finish()</a>. You should also use <a href="http://developer.android.com/reference/android/view/View.html#removeCallbacks%28java.lang.Runnable%29" rel="nofollow">View.removeCallbacks()</a> to remove your callback in <code>onDestroy()</code>, to avoid your callback being called after user already navigated back from your activity.</p> <p>Using <code>AsyncTask</code> just to count some time is just an overkill (unless you want to use <code>AsyncTask</code> to actually do some useful, background work). The <code>Looper</code> and <code>Handler</code> classes provide everything you need to execute any code on UI thread after a given delay. The <code>View</code> methods mentioned above are just convenience methods exposing the <code>Handler</code> functionality.</p>