Google官方教程:

Google 地图 API V3 使用入门

Google 地图 API V3 针对移动设备进行开发

Google 地图 API V3 之事件

Google 地图 API V3 之控件

Google 地图 API V3 之 叠加层

Google Maps API V3 之绘图库 信息窗口

Google Maps API V3 之 图层

Google Maps API V3 之 路线服务

针对移动设备进行开发

Google Maps API v3 旨在实现快速加载,并可在移动设备上稳定运行。尤其是,我们已专注于针对 Android 和 iOS 手机等先进的移动设备进行开发。与桌面计算机上的传统浏览器相比,移动设备的屏幕较小。而且,移动设备通常具备独有的特定行为(例如“双指张合缩放”)。如果您想让自己的应用在移动设备上稳定运行,建议您执行以下操作:

    • 将包含您地图的 <div> 的宽度属性和高度属性都设为 100%。不过请注意,在一些旧版的桌面浏览器上使用这些值无法获得良好的显示效果。
    • 您可通过检查 DOM 中的 navigator.userAgent 属性来检测 iPhone 和 Android 设备:
      function detectBrowser() {
      var useragent = navigator.userAgent;
      var mapdiv = document.getElementById("map_canvas"); if (useragent.indexOf('iPhone') != -1 || useragent.indexOf('Android') != -1 ) {
      mapdiv.style.width = '100%';
      mapdiv.style.height = '100%';
      } else {
      mapdiv.style.width = '600px';
      mapdiv.style.height = '800px';
      }
      }
       

      这样,您就可以更改特定设备的布局了,就像我们在此处更改各设备的屏幕实际使用面积一样。

    • Android 和 iOS 设备会应用以下 <meta> 标记:
       

      <meta name="viewport" content="initial-scale=1.0, user-scalable=no" />

      • 此设置用于指定地图应以全屏模式显示,且用户不得调整地图的大小。请注意,您需要在网页的 <head> 元素中添加此 <meta> 标记,才能使用 iPhone 的 Safari 浏览器。

      有关针对 iPhone 进行开发的详情,请参阅 Apple 的开发者文档。有关针对 Android 设备进行开发的详情,请参阅 Android 文档

      本地化

      您可以通过更改默认语言设置和设置应用的区域代码来本地化您的 Google Maps API 应用,从而根据给定的国家或地区改变应用的运行方式。

      语言本地化

      Google Maps API 在显示文本信息(如控件名称、版权声明、行车路线和地图上的标签)时,使用浏览器的首选语言设置。大多数情况下,这是首选的做法;通常您不应覆盖用户的首选语言设置。不过,如果您想要更改 Maps API 以忽略浏览器的语言设置,并使浏览器用特定语言显示信息,可以在加入 Maps API JavaScript 代码时将可选的language 参数添加到 <script> 标记,以指定要使用的语言。

      例如,要用日语显示 Maps API 应用,可以将 &language=ja 添加到 <script> 标记,如下所示:

       

      <script type="text/javascript" src="http://maps.googleapis.com/maps/api/js?sensor=false&language=ja">

      注意:按照上述方式加载 API 后,不论用户的偏好设置如何,系统都会对所有用户显示日语。在设置此选项之前,请确定您确实希望这么做。
      Maps JavaScript API 还支持双向 (Bidi) 文本,即本身同时包含从左到右 (LTR) 和从右到左 (RTL) 语言字符的文本。RTL 语言的示例包括阿拉伯语、希伯来语和波斯语。通常,您应当将 dir='rtl' 添加到网页的 <html> 元素中,以指定要正确呈现的 RTL 语言网页。

      区域本地化

      默认情况下,Maps API 会根据加载 API 的主域所在的国家/地区,提供地图图块并偏向应用行为。如果您想要更改应用以提供不同的地图图块或偏向应用(例如,偏向地理编码结果使其靠近某区域),可以在加入 Maps API JavaScript 代码时将 region 参数添加到 <script> 标记中,以覆盖该默认行为。

      作为 Maps API 应用的开发者,您有责任确保针对应用托管所在的国家/地区进行正确的区域本地化,从而确保您的应用符合当地法律。

      region 参数接受 Unicode 区域子标记标识符,该标识符通常与国家/地区代码顶级域名 (ccTLD) 一对一映射。除某些明显不同之外,大多数 Unicode 区域标识符与 ISO 3166-1 代码是相同的。例如,英国的 ccTLD 为“uk”(与其域名 .co.uk 相对应),而其区域标识符则为“GB”。

      例如,要使用本地化到英国的 Maps API 应用,可将 &region=GB 添加到 <script> 标记中,如下所示:

       

      <script type="text/javascript" src="http://maps.googleapis.com/maps/api/js?sensor=false?ion=GB">

      版本控制

      Google Maps API 小组会定期更新此 JavaScript API,即增加新地图项、修复错误和改进性能。所有的 API 更改均向后兼容,以确保您启动应用时使用的是当前记录的界面,且应用可在 API 更新后继续运行,而无需进行相关修改。(注意实验性 API 参考中记录的实验性地图项并不在此担保范围内。实验性地图项将在 API 文档中明确标出。)

      版本类型

      您只需使用 Maps JavaScript API 引导程序请求的 v 参数指定 API 版本,即可指明要在您应用中加载该版本。目前,系统支持以下两个选项:

      • 发行版本,可使用 v=3 或省略 v 参数来指定。
      • 实验版本,可使用 v=3.exp 来指定。该版本是以主干版本为基础的当前版本,其中包含公开发布的所有错误修复和新增地图项。
      • 编号版本,用 v=3.number 表示,指定了 API 的地图项集。

      下面的引导程序请求演示了如何请求具体版本的 Maps JavaScript API:

       

      http://maps.googleapis.com/maps/api/js?v=3.9&sensor=true_or_false

      每个季度,我们都会构建新的编号版本(“发行版本”),并进行发布以供公众使用。在整个季度期间,在确保地图项集保持稳定的同时,我们还会继续向此发行版本中添加错误修复,Maps JavaScript API 更改日志将会对此进行记录。

      当我们发行新的编号版本时,将会“冻结”之前的发行版本,这表示我们不再对其进行任何代码更改更新(包括错误修复),以确保其充分的稳定性。每次我们以此方式推出新的冻结版本时,都会停用现有的冻结版本。也就是说,在任何指定的时间段内,我们只会提供一个冻结版本。请求已停用的编号版本的应用将会自动收到当前的冻结版本。

      选择 API 版本

      在为您的 Maps API V3 应用选择合适的 API 版本时,可参考以下指南:

      • 生产应用应指定发行版本 (v=3) 或冻结版本。指定已停用的版本(如 v=3.0)总是会返回当前的冻结版本。
      • Maps API for Business SLA 不适用于当前的实验版本。Maps API for Business 应用必须使用当前的发行版本(当前为 3.9)或较早版本,以便适用 SLA。
      • 开发新款 Maps API v3 应用时,建议您根据版本号(例如 3.10)选择使用最新的实验版本,直到您需要添加较新版本中所提供的其他地图项时再改用该新版本。这样,您使用的版本会随着应用的开发而日趋成熟,并会在一段时间后变为发行版本,最终成为冻结版本。
      • 请求当前冻结版本或较早版本的生产应用应在每季度对最新的发行版本进行测试,以便在该版本冻结前识别有关向后兼容性方面的任何问题。

      版本文档

      文档将始终反映实验版本。不过,我们会针对每个版本提供一份单独进行维护的参考。

      问题排查

      如果您的代码不起作用,可以参考以下一些方法来解决您遇到的问题:

      Last updated 二月 1, 2013.

Google 地图 API V3 针对移动设备进行开发的更多相关文章

  1. Google 地图 API V3 使用入门

    Google官方教程: Google 地图 API V3 使用入门 Google 地图 API V3 针对移动设备进行开发 Google 地图 API V3 之事件 Google 地图 API V3 ...

  2. Google 地图 API V3 之事件

    Google官方教程: Google 地图 API V3 使用入门 Google 地图 API V3 针对移动设备进行开发 Google 地图 API V3 之事件 Google 地图 API V3 ...

  3. Google 地图 API V3 之控件

    Google官方教程: Google 地图 API V3 使用入门 Google 地图 API V3 针对移动设备进行开发 Google 地图 API V3 之事件 Google 地图 API V3 ...

  4. Google 地图 API V3 之 叠加层

    Google官方教程: Google 地图 API V3 使用入门 Google 地图 API V3 针对移动设备进行开发 Google 地图 API V3 之事件 Google 地图 API V3 ...

  5. Google Maps API V3 之绘图库 信息窗口

    Google官方教程: Google 地图 API V3 使用入门 Google 地图 API V3 针对移动设备进行开发 Google 地图 API V3 之事件 Google 地图 API V3 ...

  6. Google Maps API V3 之 图层

    Google官方教程: Google 地图 API V3 使用入门 Google 地图 API V3 针对移动设备进行开发 Google 地图 API V3 之事件 Google 地图 API V3 ...

  7. Google Maps API V3 之 路线服务

    Google官方教程: Google 地图 API V3 使用入门 Google 地图 API V3 针对移动设备进行开发 Google 地图 API V3 之事件 Google 地图 API V3 ...

  8. Google Map API V3开发(3)

    Google Map API V3开发(1) Google Map API V3开发(2) Google Map API V3开发(3) Google Map API V3开发(4) Google M ...

  9. Google Map API V3开发(1)

    Google Map API V3开发(1) Google Map API V3开发(2) Google Map API V3开发(3) Google Map API V3开发(4) Google M ...

随机推荐

  1. iOS多线程到底不安全在哪里?

    iOS多线程安全的概念在很多地方都会遇到,为什么不安全,不安全又该怎么去定义,其实是个值得深究的话题. 共享状态,多线程共同访问某个对象的property,在iOS编程里是很普遍的使用场景,我们就从P ...

  2. C++ - 静态成员函数

    c++中静态成员函数属于整个类, 而不是某个对象,因此不需要创建对象就可以访问 1.出现在类体外的函数定义不能指定关键字static:2.静态成员之间可以相互访问,包括静态成员函数访问静态数据成员和访 ...

  3. WPF 自定义进度条

    WPF设计界面过程中,有时需要设计一种可以手动滑动修改并实时显示的进度条 进度条,效果如下: 颜色.图标.节点什么的,都可以重新替换. 前端XAML代码: <UserControl x:Clas ...

  4. 报表软件JS开发引用HTML DOM的location和document对象

    上一次提到,在报表软件FineReport的JavaScript开发中,可以访问并处理的HTML DOM对象有windows.location.document三种.这次就继续介绍后两种,locati ...

  5. [转]ASP.NET Core 之 Identity 入门(一)

    本文转自:http://www.cnblogs.com/savorboard/p/aspnetcore-identity.html 前言 在 ASP.NET Core 中,仍然沿用了 ASP.NET里 ...

  6. [tem]线段树练习

    1080 线段树练习 单点修改,区间查询和 #include <iostream> #include <cstdio> #include <algorithm> # ...

  7. 使用using释放资源

    using关键字 using 关键字可以用来导命名空间,与java中的import类似. 我使用using的地方 using(SqlConnection con=new SplConnection(c ...

  8. AC日记——寻找道路 洛谷 P2296

    题目描述 在有向图G 中,每条边的长度均为1 ,现给定起点和终点,请你在图中找一条从起点到终点的路径,该路径满足以下条件: 1 .路径上的所有点的出边所指向的点都直接或间接与终点连通. 2 .在满足条 ...

  9. idea快捷键(自用)

    idea快捷键(自用) 1.比如输入eclipse下面的main,sysout等,在idea里面同样可以实现,如下: sysout(sout 按tab),main(psvm按tab),具体可按照ctr ...

  10. PHP unset销毁变量并释放内存

    PHP的unset()函数用来清除.销毁变量,不用的变量,我们可以用unset()将它销毁.但是某些时候,用unset()却无法达到销毁变量占用的内存!我们先看一个例子: <?php $s=st ...