1

我已经添加了搜索框,并且在每台安装了谷歌地图的设备上一切正常,但是当我在没有安装谷歌地图的设备上尝试时,该功能不起作用。我很困惑,并尝试添加一个位智深度链接,以防万一设备没有谷歌地图应用程序,所以它可能有位智。但是位智深度链接仅适用于指向位智应用程序。有什么想法或解决方案吗?我有点困惑,因为并非所有 Android 设备都安装谷歌地图

4

1 回答 1

1

嘿伊加诺夫你是对的不是所有的安卓设备都安装谷歌地图。因此,您可以检查设备是否安装了地图应用程序,然后仅启用您的搜索字段。所以你可以创建功能来检查如下

boolean GoogleMaps(String apk) {
 PackageManager pm = getPackageManager();
 try {
   pm.getPackageInfo(apk, PackageManager.GET_ACTIVITIES);
        return true;
    } catch (PackageManager.NameNotFoundException e) {
    }

     return false;
   }

然后你可以在你的创建活动中调用它,如下所示

boolean appavialble = GoogleMaps("com.check.application");  

if(appavialble ) {
 //do your searching condition here         

 } else {
  //application not found force to download it or show alert 

  Uri.Builder uriBuilder = null;
 try {
    Intent intent = new Intent(Intent.ACTION_VIEW);
     uriBuilder = 
     Uri.parse("market://details").buildUpon().appendQueryParameter("id", 
      "com.check.application");
      intent.setData(uriBuilder.build());
         startActivity(intent);

      }catch (Exception e){

       system.out.println("error in connection");
    }


 }

希望这可以帮助。

于 2018-09-28T06:04:19.610 回答