Вы можете использовать Обработчик, чтобы автоматически закрыть его.
В учениках класса:
private final int CANCEL_DIALOG = 1;
private Handler mHandler;
private Dialog mDialog;
В onCreate ():
mHandler = new Handler(new Handler.Callback()
{
@Override
public boolean handleMessage(Message msg)
{
if(msg.what == CANCEL_DIALOG)
{
mDialog.cancel();
}
return false;
}
});
На кнопкевы используете для открытия диалогового окна (или любой другой системы, которую вы используете):
mDialog.show();
mHandler.sendEmptyMessageDelayed(CANCEL_DIALOG, 5000);
По существу, через 5 секунд, диалоговое окно закроется после открытия с использованием этого кода.