iPhone 地理定位 JavaScript Web 应用程序

Jac*_*ace 7 html javascript iphone geolocation ios

我正在用 JavaScript 构建一个全栈 Web 应用程序,旨在在移动设备(Android 和 iPhone)上使用。在 Android 手机上使用 HTML5 Geolocation API 效果很好,但在 iPhone 上似乎存在授权问题。当以 iPhone 用户身份与 Web 应用程序交互时,iOS 会自动拒绝用户使用位置服务的权限,因此与 Android 手机不同的是,不会弹出窗口让用户选择允许位置服务。我对 iPhone 定位服务设置做了很多修改,但没有效果。是否有一个 JavaScript 片段可以让用户允许位置服务的权限?谢谢。

d27*_*nis 2

您的 Safari 位置设置可能设置为OFF,您可以在此处更改它:Settings > Privacy > Location Services > Safari

你也可以尝试这样的事情:

if (navigator.geolocation) {
    navigator.geolocation.getCurrentPosition(successFunction);
} else {
    // Make API call to the GeoIP services
}
Run Code Online (Sandbox Code Playgroud)

并使用一些服务,如http://ip-api.com(但基于ip的地理数据不是很准确)

在这里您可以找到有关 getCurrentPosition() 的更多信息: