make sure loadUrl is running on ui thread.