科尔多瓦的地理位置
Posted
技术标签:
【中文标题】科尔多瓦的地理位置【英文标题】:Geolocation in cordova 【发布时间】:2018-05-18 10:48:36 【问题描述】:我正在构建一个使用地理定位的科尔多瓦应用程序。
我安装了<plugin name="cordova-plugin-geolocation" spec="4.0.1" />
插件,并以一种似乎在语法上有效的方式使用它:
console.log('Geoloc queried')
navigator.geolocation.watchPosition((position) =>
console.log('Geoloc received', position)
, (err) =>
console.warn('Could not get geoloc', err)
,
maximumAge: 10 * 60 * 1000, // 10 minutes
timeout: 5 * 1000, // 5 seconds
enableHighAccuracy: false,
)
此代码在应用 load 上执行。
当我在浏览器上测试它时,我收到以下警告:
[违规] 仅请求地理定位信息以响应用户手势。
但是在构建我的应用程序时,我认为在应用程序安装期间会询问权限,不是吗?我还需要在用户手势期间添加它吗?
启动应用程序不被视为用户手势吗?
对于广泛依赖地理位置的应用来说,最佳做法是什么?
干杯
【问题讨论】:
【参考方案1】:ios 和 android 都从在安装期间指示权限转变为在第一次需要权限时请求权限。因此,当用户第一次尝试在应用中打开地理定位功能时,您需要请求用户许可。
Apple 指南指出,仅在需要时才需要请求权限,而不是提前。
https://developer.apple.com/ios/human-interface-guidelines/app-architecture/requesting-permission/
安卓也一样
https://developer.android.com/guide/topics/permissions/overview
【讨论】:
以上是关于科尔多瓦的地理位置的主要内容,如果未能解决你的问题,请参考以下文章