1

默认情况下,每台2.3以上的android手机都有streetview,或者需要下载streetview并进行安装。我问的原因是,我在我的应用程序中使用街景我用默认情况下,每个Android手机都有街景应用吗?

private boolean isIntentAvailable(Intent intent) { 
    final PackageManager packageManager = mapView.getContext().getPackageManager(); 
    List<ResolveInfo> list = 
      packageManager.queryIntentActivities(intent, 
        PackageManager.MATCH_DEFAULT_ONLY); 

    return list.size() > 0; 
} 

,看看街景应用程序在设备使用。问题是,在Android 4.1.1移动街景可用,但仍然这种方法抛出错误的。但它适用于我所测试过的大多数设备,如所有三星,HTC和索尼手机。

+0

那你打算用这个测试街景的意图是什么? – Ifor 2013-02-12 16:52:19

回答

3

并非所有的Android设备都有Google应用程序。这取决于构造

[编辑:]的 检查是否安装了应用程序,你可以使用:

appInstalledOrNot("com.google.android.apps.maps") 

使用方法:

private boolean appInstalledOrNot(String uri) { 
     PackageManager pm = getPackageManager(); 
     boolean app_installed = false; 
     try { 
       pm.getPackageInfo(uri, PackageManager.GET_ACTIVITIES); 
       app_installed = true; 
     } catch (PackageManager.NameNotFoundException e) { 
       app_installed = false; 
     } 
     return app_installed ; 
} 

我读的地方,所有版本的地图有街景,但我确实无法证实这一点,我不确定。

+0

好的谢谢,但它似乎我提供的方法似乎不工作在其中一个设备可以帮助我与这一个。 – 2013-02-12 15:42:02

+1

我编辑过;) – Rocel 2013-02-12 16:01:49

相关问题