在Android上的Waze中显示geopoint

时间:2013-01-31 14:54:43

标签: android android-intent geolocation

我正在尝试使用Waze在地图上显示一个点。

这意图:

String link = geo:?ll=32.26944,34.890442&z=10;
new Intent(Intent.ACTION_VIEW, Uri.parse(link))

而不是显示它让我进入导航模式。 奇怪的是,如果我使用谷歌地图,那么它可以正常工作。

这是Waze或我的代码的问题吗?

3 个答案:

答案 0 :(得分:5)

正如您所见here,他们更简单:

以下是可用参数:

search for address:         waze://?q=<address search term>
center map to lat / lon:    waze://?ll=<lat>,<lon>
set zoom (minimum is 6):    waze://?z=<zoom>

<强>示例:

center map to Ayalon and set zoom to 10     waze://?ll=37.44469,-122.15971&z=10
search for address:                         waze://?q=San%20Jose%20California

直接使用Android API:

  

以下代码段示例将启动Waze查找   指定的位置,如果安装了Waze。如果Waze没有安装它   将在市场应用程序上打开Waze页面。

try
{
   String url = "waze://?q=Hawaii";
    Intent intent = new Intent( Intent.ACTION_VIEW, Uri.parse( url ) );
   startActivity( intent );
}
catch ( ActivityNotFoundException ex  )
{
  Intent intent =
    new Intent( Intent.ACTION_VIEW, Uri.parse( "market://details?id=com.waze" ) );
  startActivity(intent);
}

答案 1 :(得分:1)

String uri = "geo:" + latitude + ","
                    +longitude + "?q=" + latitude
                    + "," + longitude;
startActivity(new Intent(android.content.Intent.ACTION_VIEW,
                    Uri.parse(uri)));

这个答案的优点是可以调用所有处理此功能的应用程序。在手机中,它显示了Google地图,Google地球和Waze。

推荐:使用ShareActionProvider!它显示处理地理位置的所有可能应用程序的列表。

来源:This StackOverflow Answer

答案 2 :(得分:0)

尝试仅输入32.26944 34.890442。不要在坐标之间使用逗号