我有一个带有异步方法的静态类。异步方法等待用户操作(用户需要在对话框上确认)。我需要在App.xaml.cs(xamarin)
中的构造函数中调用此方法public static class StoragePermission
{
public static async Task Check()
{
try
{
var status = await CrossPermissions.Current.CheckPermissionStatusAsync(Permission.Storage);
if (status != PermissionStatus.Granted)
{
var results = await CrossPermissions.Current.RequestPermissionsAsync(new[] { Permission.Storage });
status = results[Permission.Storage];
}
}
catch (Exception ex) {}
}
}
我尝试在构造函数中调用此方法,如下所示:
StoragePermission.Check().Wait();
但是按照上面的说法,我根本不会调用下一个代码。在用户操作之后,焦点不会返回到代码。
我也是这样试过的:
public Task StorageInitialization { get; private set; }
然后在构造函数中,我做
StorageInitialization = StoragePermission.Check();
但是执行此代码会返回构造函数中的下一行,但不会等待用户操作完成。
如果有人可以帮助我,我感激不尽