写点什么

位置感知的浏览会成为主流么?

  • 2009-06-05
  • 本文字数:2203 字

    阅读完需:约 7 分钟

目前 W3C 正在忙于一个新规范的制定,该规范定义了一个 API 进而可以通过脚本访问地理位置信息,借着这个东风,最近Mozilla 宣布为Firefox 3.5 提供内置的地理信息支持。这与早前Opera 的声明不谋而合,该声明谈到了 Opera 浏览器也将提供地理信息支持。难道这意味着位置感知的应用会成为主流?

W3C 草案所提出的 Geolocation API 是个访问位置信息(如经纬度)的高层接口,该接口与实现设备紧密相关。API 本身对下面的位置信息一无所知。常见的位置信息来源主要包括全球定位系统(GPS)、根据网络信号如 IP 地址、RFID、WiFi 及蓝牙 MAC 地址推断出的位置信息以及 GSM/CDMA 的 cell ID:

下面的代码说明了如何获取基本的位置信息: “一次性”的位置请求示例。

复制代码
function showMap(position) {
// Show a map centered at (position.coords.latitude, position.coords.longitude).
}
// One-shot position request.
navigator.geolocation.getCurrentPosition(showMap);

草案还考虑到了隐私问题

规范定义的 API 可用于获取设备的地理信息。在几乎所有情况下,该信息都将包含使用设备的用户位置,这样一来就对用户的隐私造成了潜在的威胁。规范的实现必须要提供一种机制来保护用户隐私,同时要确保在未得到用户同意的情况下不得擅自将用户的位置信息暴露出来。

Firefox3.5 将提供该强大的 API

其工作方式是怎样的? 在访问位置感知的站点时,Firefox 会询问你是否要共享你的位置。

如果你同意,那么 Firefox 就会搜集附近的无线访问点以及你机器的 IP 地址等信息,然后将这些信息发送到默认的服务供应商(Google Location Services)来对你的位置进行计算,接下来所请求的站点就会获得你的位置信息。

如果你不同意,那么 Firefox 就什么都不会做。

Opera 也发布了一个支持地理位置信息的构建版

我们很高兴地宣布 Opera 第一个支持地理位置信息的浏览器版本发布了。W3C 的地理位置工作组(Geolocation Working Group )最近发布了 geolocation API 规范的首个工作草案,现在我们发布了支持该 API 的实验构建版。 网页中的 Javascript 代码会利用该 API 获取浏览器所处位置的经纬度信息。

Web 上的地理信息识别早已不是什么新鲜玩意了。很多站点都已经开始利用浏览器的 IP 地址来投放相关的内容,这其中主要是广告(比方说你会在页面上看到这样的内容:“来寻找同城好友吧”)。然而,这种方式却不那么准确,无法用在高级的地理信息服务中。另一方面,浏览器所在的设备却可以获得其精确的位置信息,前提是它有一个 GPS 单元,或是能访问无线访问点及信号塔,或是能查询到其 IP 地址。即便是设备没有相应的硬件,那它也可以利用位置信息提供商的 Web Services 做到这一点。它使用了 Skyhook 服务,因此需要在 loki.com 上注册你的站点,这样 Web 应用就能得到用户的位置信息了。除此以外,如果你使用的是 Windows XP,那还需要运行 svcsetup.exe,这保证了 WiFi 扫描不会受各种“WiFi 管理器”的影响。在未来的发布中其实不需要这么麻烦,但现在如果遇到问题,那还是先运行 svcsetup.exe 吧。

至于其他方面,可以使用 Google Gears 提供的 Geolocation API

凭借 Geolocation API,Web 应用可以: - 通过 getCurrentPosition 方法获取用户当前的位置

  • 通过 watchPosition 方法查看用户的位置
  • 通过 lastPosition 属性快速、方便地获取用户的上一次访问位置

Geolocation API 通过大量资源(称作位置供应源)获取最准确的用户位置信息。这些供应源可以是移动的(比如 GPS),也可以是基于服务器的(网络位置供应源)。getCurrentPosition 和 watchPosition 方法支持可选的 PositionOptions 类型参数,它可以指定使用哪个位置供应源。

Gears 0.5 将使用 WiFi 无线数据提供更精确的位置数据:

Gears Geolocation API 可以利用网络服务器获取位置装置。服务器通过客户端提供的一套数据来判断客户端的位置。该数据包括客户端的 IP 地址及其检测到的任何信号塔或是 WiFi 结点。

InfoQ 有幸采访到了 Opera 的核心开发人员 Max Froumentin 以了解浏览器上的地理位置信息的未来发展方向:

InfoQ:Firefox 和 Opera 具有本地支持,而其他平台则可以利用 Google Gears 插件,你觉得该 API 的使用会成为未来的主流么,而且像 IE 等平台尚没有本地实现。你认为不久之后会提供支持么?

由于地理位置信息是 Web 上的一个极其有用的特性,尤其在移动设备上,因此只要浏览器对其提供了支持,相应的应用很快就会出现:很多站长都期待着这个功能,一旦出现必将得到广泛应用。

InfoQ:你觉得该 API 的前景如何呢?你认为它是对现有应用的锦上添花,还是一场真正的革命?

我觉得都有。显然那些正尝试使用地理位置信息(通过 IP 或其他类似的方法)的站点会从中受益,其获取到的信息的准确性将会大大提高,这样就能够提供更好的服务。然而我们也要相信一定会有人通过该 API 提供的新功能开创出革命性的应用。

InfoQ:你觉得隐私问题会不会减缓位置感知浏览的发展速度?

隐私问题会减缓其发展速度:如果不相信站点,觉得他们可能会泄漏自己的隐私,那么用户就应该避免使用浏览器的地理位置特性。就像用户往站点发送的任何敏感信息一样(比如信用卡信息),位置感知的浏览器需要确保能通过适当的防护措施来保护用户的隐私。一旦措施得当,用户就会转向位置感知的浏览了。

你怎么想?下一代的 Web 应用会不会天生就是位置感知的呢?

查看英文原文: Location-Aware Browsing to become Mainstream?

2009-06-05 01:451537
用户头像

发布了 88 篇内容, 共 267.3 次阅读, 收获喜欢 8 次。

关注

评论

发布
暂无评论
发现更多内容

头脑风暴:打家劫舍

HelloWorld杰少

8月月更

使用软引用实现缓存机制

JAVA活菩萨

Java 后端 java程序员 大厂技能 大厂实践

危险!请马上替换代码中的BeanUtils!!!

JAVA活菩萨

Java 后端 java程序员 大厂技能 大厂实践

发布Android库至MavenCentral详解

JAVA活菩萨

Java 后端 java程序员 大厂技能 大厂实践

Python 教程之输入输出(6)—— 使用 print() 函数输出

海拥(haiyong.site)

Python 8月月更

12条MySQL优化技巧,提速不止十倍!

TimeFriends

8月月更

Axure9基本交互操作(二)

乔乔

8月月更

Java “constant string too long” 编译错误

HoneyMoose

朴素贝叶斯分类-西瓜分类 python

Five

贝叶斯公式 Python. 8月月更

来学习开源模块化前端框架—Layui【Layui极致轻量前端框架】

恒山其若陋兮

开源 前端框架 签约计划第三季 8月月更

我们来聊聊锁升级吧

JAVA活菩萨

Java 后端 java程序员 大厂技能 大厂实践

系统管理-Linux系统进程管理

Albert Edison

Linux centos 运维 服务器 8月月更

Nacos配置中心之动态感知

急需上岸的小谢

8月月更

设计电商秒杀系统

爱晒太阳的大白

谈谈程序员如何具备领导力

宇宙之一粟

领导力 8月月更

站在数字经济浪尖:360视觉云探路中小微企业数智转型

脑极体

JVM学习之 内存结构

JAVA活菩萨

Java java程序员 大厂技能 大厂实践 秋招

C++对象模型和this指针实例分析

CtrlX

c++ 面向对象 后端 代码 8月月更

轻松完成接口测试及接口文档

Xd

Java 后端 接口测试

2021-Java后端工程师面试指南-(SpringBoot+SpringCloud)

自然

Spring Boot CLI spring cloud stream 8月月更

leetcode 769. Max Chunks To Make Sorted 最多能完成排序的块(中等)

okokabcd

数组 LeetCode 数据结构与算法

七日算法先导(五)——归并排序,希尔排序

工程师日月

8月月更

编译调试插件功能总结

乌龟哥哥

8月月更

Promise的点点滴滴

坚果

开源 8月月更

【字体反爬】的起点,月票数解析,一个小小的Python案例

梦想橡皮擦

Python 爬虫 8月月更

2022-Java后端工程师面试指南-(MySQL)

自然

8月月更

2022-Java后端工程师面试指南-(Redis)

自然

面试题 reis 8月月更

超强力推!阿里全新微服务突击手册,把所有操作都写出来了|超清PDF

冉然学Java

架构 微服务 java; 消息中间件 微服务框架

原型链中的函数和对象

掘金安东尼

JavaScript 前端 8月月更

C++中const关键字的作用总结

桑榆

c++ 8月月更

位置感知的浏览会成为主流么?_Java_Dio Synodinos_InfoQ精选文章