UWP Windows10开发获取设备位置(经纬度)
1.首先要在UWP项目的Package.appxmanifest文件中配置位置权限,如下图所示:

2.Package.appxmanifest后选择第三个选项卡,勾选位置权限(Location)
打开
3.然后创建一个LocationManage类,包括以下代码:
public async static Task<Geoposition> GetPosition()
{
//请求对位置的访问权
var accessStatus = await Geolocator.RequestAccessAsync();
//此时,窗口会弹出提示是否允许应用访问位置,如果用户不允许则抛出异常
if (accessStatus != GeolocationAccessStatus.Allowed) throw new Exception();
//实例化定位类,并设置经纬度精确度(单位:米),一般为零,为保护用户隐私,建议减少精确度
var geolocator = new Geolocator { DesiredAccuracyInMeters = };
//异步获取设备位置,并将位置保存到变量中(Geoposition类型)
var position = await geolocator.GetGeopositionAsync();
//返回位置
return position;
}
4.此时,这个返回的是Geoposition类型
现在获取输出位置信息:
给Page创建一个Loaded事件,以在应用加载的时候获取设备当前位置
private async void Page_Loaded(object sender, RoutedEventArgs e)
{
//异步获取位置,保存到变量中
var position = await GetLocation.GetPosition();
//维度
double lat = position.Coordinate.Point.Position.Latitude;
//经度
double lon = position.Coordinate.Point.Position.Longitude;
}
5.这样就在应用加载完成后获取用户设备位置坐标
6.初次之外Geoposition还包含以下常用属性,也是很常用的:
Coordinate.PositionSource 获取是那个源定位的位置,比如WIFI,GPS
- Coordinate.SatelliteData 获取卫星相关信息,如果是非GPS获取的位置,则为NaN
- Coordinate.Speed 获取以米/秒为单位的速度,返回类型:double
- Coordinate.Timestamp 通过位置确定的时间,返回类型:DateTimeOffset?
- Coordinate.Point.Position.Altitude 获取当前位置海拔
- 。。。。
UWP Windows10开发获取设备位置(经纬度)的更多相关文章
- Uwp Windows10获取设备位置(经纬度)
先在Package.appxmanifest中配置位置权限 2. 创建LocationManager类 using System; using System.Collections.Generic; ...
- 微信小程序之获取当前位置经纬度以及地图显示
最近刚开始接触微信小程序,在弄懂其结构以及相关接口之后,准备着手实现一个小程序,功能包括--获取用户当前位置的经纬度,在地图上查看位置,通过地图获取不同位置的经纬度. 微信小程序的主体部分包括: 新增 ...
- iOS开发-获取设备型号信息
开发中有的时候查看设计统计数据,或者通过日志查看错误信息,这个时候我们就需要获取获取设备信息,看下关于设备有几种方法: NSLog(@"%@",[[UIDevice current ...
- Android 开发 获取设备信息与App信息
设备信息 设备ID(DeviceId) 获取办法 android.telephony.TelephonyManager tm = (android.telephony.TelephonyManager ...
- UWP开发-获取设备唯一ID
EasClientDeviceInformation deviceInfo = new EasClientDeviceInformation(); this.showDeviceInfo.Items. ...
- UWP Windows10开发更新磁贴和动态更新磁贴
下面将介绍两种方式如何在windows10 uwp开发中如何更新应用磁贴: 实际上windows的磁贴就是用xml实现的,你只需要创建相应格式的xml就可以实现动态磁贴了 一,手动更新磁贴 二,轮询更 ...
- 关于微信小程序获取当前位置信息
小程序开发---获取当前位置信息 一.获取用户地理位置信息 1.配置app.json文件 { "pages": ["pages/index/index"], & ...
- HTML5+规范:Geolocation(管理设备位置信息) 定位
Geolocation模块管理设备位置信息,用于获取地理位置信息,如经度.纬度等.通过plus.geolocation可获取设备位置管理对象.虽然W3C已经提供标准API获取位置信息,但在某些平台存在 ...
- Android获取定位权限,获取设备所在的经纬度
转载请标明出处:http://www.cnblogs.com/tangZH/p/8969898.html 前言: 有时候我们仅仅是想要获取设备所在的经纬度,那么直接调用Android相关的api就可 ...
随机推荐
- cmake使用演示样例与整理总结
本文代码托管于github cmake_demo cmake中一些提前定义变量 PROJECT_SOURCE_DIR project的根文件夹 PROJECT_BINARY_DIR 执行cmake命 ...
- Linux下kill命令的学习,(主要根据man手册进行的翻译)
名字 kill -终止一个进程 格式 kill [-s signal | -p] [--] pid .. ...
- sql server 笔记1--case、WAITFOR、TRY CATCH
一.case 转自:http://blog.csdn.net/add8849/article/details/576424 深入使用:http://blog.csdn.net/akuoma/artic ...
- HDUJ 1203 I NEED A OFFER!
I NEED A OFFER! Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) ...
- C# MVC 枚举转 SelectListItem
<span style="font-size: 18px; font-family: Arial, Helvetica, sans-serif; background-color: r ...
- Hadoop 解除 “Name node is in safe mode”
运行Hadoop程序时,有时候会报以下错误: org.apache.hadoop.dfs.SafeModeException: Cannot delete /user/hadoop/input. N ...
- 有关使用HTTP协议传输二进制文件
HTTP协议是基于字符(ASCII)的,当Content-Type项为text/xml,则内容是文本格式:当二进制格式时,Content-Type项为image/gif,就是了.例如,浏览器请求一张图 ...
- CAShapeLayer和贝塞尔曲线配合使用
前言 CAShapeLayer继承自CALayer,因此,可使用CALayer的所有属性.但是,CAShapeLayer需要和贝塞尔曲线配合使用才有意义. 关于UIBezierPath,请阅读文章:i ...
- 并不对劲的bzoj5020:loj2289:p4546:[THUWC2017]在美妙的数学王国中畅游
题目大意 有一个n(\(n\leq 10^5\))个点的森林,每个点\(u\)上有个函数\(f_u(x)\),是形如\(ax+b\)或\(e^{ax+b}\)或\(sin(ax+b)\)的函数,保证当 ...
- BZOJ_4177_Mike的农场_最小割
BZOJ_4177_Mike的农场_最小割 Description Mike有一个农场,这个农场n个牲畜围栏,现在他想在每个牲畜围栏中养一只动物,每只动物可以是牛或羊,并且每个牲畜围栏中的饲养条件都不 ...