如何在超时后关闭活动

本文关键字:活动 超时 | 更新日期: 2023-09-27 18:27:53

我在安卓应用程序中有登录屏幕,它有45秒的超时期,它还显示弹出窗口"超时",但在该活动没有关闭或完成后,点击弹出应用程序崩溃

public HttpClient Client
        {
            get
            {
                if (_client != null) return _client;

                var httpClient = new HttpClient(new NativeMessageHandler {UseCookies = false});
                httpClient.BaseAddress = new Uri(ApplicationSettings.BaseServiceUrl);
                httpClient.Timeout = TimeSpan.FromMilliseconds(45000);
                return _client = httpClient;
            }
        }
        public HttpClient ClientPreAuthenticated
        {
            get
            {
                if (_client != null) return _client;
                var httpClient = new HttpClient(new NativeMessageHandler { UseCookies = false, PreAuthenticate = true });
                httpClient.BaseAddress = new Uri(ApplicationSettings.BaseServiceUrl);
                httpClient.Timeout = TimeSpan.FromMilliseconds(45000);
                return _client = httpClient;
            }
        }

建议我关闭此活动的任何代码

如何在超时后关闭活动

Task.Factory.StartNew(async()=>{等待Task.Delay(45000);Finish();});

在调用程序(btnGinClicked)或其他程序中,您需要处理HTTP客户端代码超时引发的超时异常或事件。。然后在catch子句中简单地调用Finish()。。如果你似乎不知道如何捕捉HttpClient引发的超时,也许可以看看:我如何判断HttpClient何时超时?