美文网首页
android实现跳转第三方地图导航

android实现跳转第三方地图导航

作者: 记忆九天 | 来源:发表于2020-06-23 10:26 被阅读0次

    最近有个需求,就是在自己的app项目里面直接根据定位,跳转进入百度或者高德地图进行导航。

    val uri=Uri.parse("geo:24.473306,118.123456");  //打开地图定位
    val it = Intent(Intent.ACTION_VIEW, uri)
    val cn = it.resolveActivity(packageManager)
    if(cn == null){
        Toast.makeText(this@MainActivity,"请先安装第三方导航软件",Toast.LENGTH_SHORT).show()
       }else{
         Log.v("MainActivity",cn.packageName)
         startActivity(it)
    }
    

    如果手机同时安装高德和百度地图,则会两个都显示出来让你选择。如果只有一个,会直接跳转进入地图。
    这里resolveActivity的方法很重要,是判断能否找到相应的可跳转的软件,如果手机未安装然后地图软件,resolveActivity的值将是空的,这个时候就可以提示先安装第三方地图导航软件。如果没有该方法就直接跳转,会抛出异常。所以这一步判断很有必要。

    git地址:https://gitee.com/stonezry/AndroidDemo

    相关文章

      网友评论

          本文标题:android实现跳转第三方地图导航

          本文链接:https://www.haomeiwen.com/subject/qqmcfktx.html