Java 当“地图”处于非';t安装
当我点击地图链接时,我的应用程序将关闭,因为没有安装地图应用程序。我如何在应用程序启动时发出警报,告知他们在未安装地图应用程序的情况下无法使用地图 谢谢 当我点击地图链接时。我的应用程序正在关闭,因为未安装地图应用程序 如果此“链接”正在触发一个Java 当“地图”处于非';t安装,java,android,eclipse,android-activity,maps,Java,Android,Eclipse,Android Activity,Maps,当我点击地图链接时,我的应用程序将关闭,因为没有安装地图应用程序。我如何在应用程序启动时发出警报,告知他们在未安装地图应用程序的情况下无法使用地图 谢谢 当我点击地图链接时。我的应用程序正在关闭,因为未安装地图应用程序 如果此“链接”正在触发一个ACTION\u视图Intent,可能是在geoUri上,创建该Intent,并使用PackageManager和resolveActivity()查看设备上是否有东西可以处理它。如果resolveActivity()返回null,您知道Intent的s
ACTION\u视图
Intent
,可能是在geo
Uri
上,创建该Intent
,并使用PackageManager
和resolveActivity()
查看设备上是否有东西可以处理它。如果resolveActivity()
返回null
,您知道Intent
的startActivity()
将崩溃,因此您可以采取适当的步骤。尝试:
if(isGoogleMapsInstalled){
//do your job
}else{
//display toast or whatever you want
}
public boolean isGoogleMapsInstalled()
{
try
{
ApplicationInfo info = getPackageManager().getApplicationInfo("com.google.android.apps.maps", 0 );
return true;
}
catch(PackageManager.NameNotFoundException e)
{
return false;
}
}
您需要创建一个这样的方法
public boolean isPackageExisted(String targetPackage) {
PackageManager pm = getPackageManager();
try {
PackageInfo info = pm.getPackageInfo(targetPackage,
PackageManager.GET_META_DATA);
} catch (NameNotFoundException e) {
return false;
}
return true;
}
那就看这个
if (isPackageExisted("com.google.android.maps")) {
// Map application is available
} else {
// Map application is not available
}
发布你的代码,我会告诉你怎么做?我的代码不需要。。我需要一个脚本,当没有安装地图应用程序时,在应用程序启动时发出警报。无提示。。简单解释一下。此处地图应用程序表示谷歌地图或什么?仅当(isGoogleMapsNotInstalled)//显示Toast Toast面包=Toast.makeText(getApplicationContext(),“请安装谷歌地图应用程序…”,Toast.LENGTH\u LONG)时,如何执行此操作;面包。展示();完成();