c# - 请求位置权限不返回(Xamarin 表单)
问题描述
如果被拒绝,我正在请求位置权限,但是在发出请求并且用户点击以拒绝或允许权限后没有返回任何内容,线路 status = results[Permission.Location];
永远不会被击中,我认为这将是一个等待呼叫,任何人都可以告诉我这是为什么?
我应该提一下,如果我在它看起来什么也没做之后立即再次调用此代码,那么线路await vm.RefreshCampaigns();
被击中,因此正在设置权限,只是调用没有返回。我在共享项目中运行此代码。
private async void GrantPermission(object sender, ItemTappedEventArgs e)
{
try
{
var status = await CrossPermissions.Current.CheckPermissionStatusAsync(Permission.Location);
if (status != PermissionStatus.Granted)
{
var results = await CrossPermissions.Current.RequestPermissionsAsync(Permission.Location);
status = results[Permission.Location];
}
if (status == PermissionStatus.Granted)
{
vm.ShowPermissionWarning = false;
await vm.RefreshCampaigns();
}
}
catch (Exception ex)
{
Crashes.TrackError(ex);
}
}
解决方案
推荐阅读
- javascript - 想不出在 JIRA 中创建插件的起点
- oracle - Oracle 临时表
- android - 为什么在 Android Studio Android NDK 中出现错误:找不到 -lGLESv3?请指教
- python - 如何将熊猫数据框与一列上的覆盖连接起来?
- unity3d - 如何在 Unity 中将 Sprite Flip 与 Photon2 同步
- python - Openpyxl - 使用合并单元格复制工作表
- javascript - 在 Puppeteer 中循环一组 url
- javascript - 无法启动节点应用程序(server.js,可能是 Babel 问题?)
- google-chrome - 预加载资源在 Chrome 中会转到哪个缓存
- php - 即使 PHP 中没有图像也填充提要