Android - 如何使用 Intent 和 KML 打开谷歌地图?

Rod*_*igo 5 android android-intent

我需要使用 sdcard 上已经存在的 kml 文件打开谷歌地图。(/sdcard/example.kml)

我试过:

这个答案是错误的,当点击链接时,地图打开,但搜索位置“file:///sdcard/example.kml”

  • 使用意图:

此代码抛出ActivityNotFoundException

Intent intent = new Intent(android.content.Intent.ACTION_VIEW,
        Uri.parse("file:///sdcard/example.kml"));
startActivity(intent);
Run Code Online (Sandbox Code Playgroud)
  • 我尝试使用 setDataAndType 方法,但不起作用:

另一个ActivityNotFoundException

Intent intent = new Intent(Intent.ACTION_VIEW);
intent.setDataAndType(
         Uri.parse("file:///sdcard/example.kml"),
                   "application/kml");
startActivity(intent);
Run Code Online (Sandbox Code Playgroud)
  • 关于此问题的其他两个未解决的主题:

在 Android 上的 Google 地图中打开本地 KML 文件

Android API 是否支持 KML 文件?

知道如何打开这个kml吗?

谢谢!!!

Jef*_*elt 0

您需要对 Intent 数据使用 geo URI 方案语法:

Uri.parse("geo:0,0?q=file:///sdcard/example.kml")
Run Code Online (Sandbox Code Playgroud)

这个答案中的代码对我有用: 如何在 MapView 上从谷歌地图绘制预构建地图