【问题标题】:Open google maps from hyperlink从超链接打开谷歌地图
【发布时间】:2012-04-18 07:11:40
【问题描述】:

我正在尝试专门为android用户设计一个网页,所以我想知道是否有一种超链接格式可以像调用功能一样打开谷歌地图

<a href="tel:0766551121"> Call me now </a>

【问题讨论】:

    标签: android google-maps


    【解决方案1】:

    如果“打开 Google 地图”是指原生 Android 谷歌地图应用程序,而不是在 Android 浏览器中打开链接,那么根据Geo Intents,您可以使用以下Geo URI 格式来触发将打开设备上的谷歌地图应用程序到给定的位置或查询:

    • 地理:纬度,经度
    • geo:latitude,longitude?z=zoom
    • geo:0,0?q=my+street+address
    • geo:0,0?q=business+near+city

    对于谷歌街景,您可以使用:

    • google.streetview:cbll=lat,lng&cbp=1,yaw,,pitch,zoom&mz=mapZoom

    有关可用选项的详细信息,请参阅the official Google Maps Intents documentation

    【讨论】:

    • 我用第一种格式给自己发了一封邮件,但是没有用。它尝试用浏览器打开它。
    • 迄今为止我在网上找到的关于这个话题的最佳评论,谢谢先生!
    • 也可以用步行模式打开地图作为导航?所以用户不必点击“获取路线”
    • @miro 是的,您必须附加 "&mode=w" 参数,有关详细信息,请参阅 this 。我还更新了响应以包含 Google 地图意图的官方文档链接。
    • 我也可以这样在地图上放图钉吗?
    【解决方案2】:

    使用GEO URI在超链接上打开地图点击:

    <a href="geo:37.786971,-122.399677;u=35">open map</a>
    

    【讨论】:

      【解决方案3】:

      我将使用@Mnemonic Flow

      • 地理:纬度,经度
      • geo:latitude,longitude?z=zoom
      • geo:0,0?q=my+street+address
      • geo:0,0?q=business+near+city

      创建你的 Uri

      示例

      第 1 步: 创建链接,如

      Uri uri; 
      
      • 地理:纬度,经度

        uri = Uri.parse("geo:47.6,-122.3")

      • geo:latitude,longitude?z=zoom

        uri = Uri.parse("geo:47.6,-122.3?z=11")

      • geo:0,0?q=my+street+address

        uri = Uri.parse("geo:0,0q=The+Eldorado+Park,+Rampar+Mota,+Gujarat,+India")

      • geo:0,0?q=business+near+city

        uri = Uri.parse("geo:0,0q=The+Eldorado+Park,+Rampar+Mota,+Gujarat,+India")

      第一步创建方法如下

      public void showMap(Uri geoLocation) {
          Intent intent = new Intent(Intent.ACTION_VIEW);
          intent.setData(geoLocation);
          if (intent.resolveActivity(getPackageManager()) != null) {
              startActivity(intent);
          }
      }
      

      然后像这样打电话

      showMap(uri);
      

      第 2 步: 在清单文件中添加意图过滤器

      <activity YourActivity>
          <intent-filter>
              <action android:name="android.intent.action.VIEW" />
              <data android:scheme="geo" />
              <category android:name="android.intent.category.DEFAULT" />
          </intent-filter>
      </activity>
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2015-11-27
        • 2015-04-23
        • 2019-12-18
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2012-03-23
        相关资源
        最近更新 更多