首页 > 解决方案 > Xamarin.Forms 异步/等待操作不起作用

问题描述

我有一个简单的 Xamarin.android 移动应用程序,它从本地 PC 中托管的 API 获取数据。问题是当我运行应用程序时,它不会得到预期的结果。

_client 是一个 HttpClient,我可以从模拟器的浏览器访问相同的 URL 并获取数据。以下是我的代码。

 protected async override void OnAppearing()
    {
        string content = await _client.GetStringAsync("http://192.168.10.101:1001/api/todo");
        base.OnAppearing();
    }

一旦我点击 F5,模拟器就会启动并运行应用程序,但它没有获取任何数据。另外,当我调试时,一旦我按下 F10,await 语句将执行应用程序将继续并且不会等待。

有人对这个问题有任何想法吗?

我正在使用 API 版本 9,级别 28 和 Visual Studio 2019 谢谢。

标签: c#xamarin.formsxamarin.android

解决方案


问题在于许可。我没有在资源中设置权限或网络安全配置。几秒钟后它给了我一个错误。一旦我设置了这些东西,它就可以正常工作。


推荐阅读