void reconnect()
{
if (mRetryCounter < MAX_RETRIES) {
mProgressDialog.Show ();
var m = mRetryHandler.ObtainMessage (MESSAGE_RETRY_CONNECTION);
// back off exponentially
long delay = (long) (INITIAL_RETRY_DELAY_MILLISECONDS * Math.Pow (2, mRetryCounter));
mRetryHandler.SendMessageDelayed (m, delay);
mRetryCounter++;
} else {
handleError(WalletConstants.ErrorCodeServiceUnavailable);
}
}