標籤:
public static boolean isAvilible(Context context, String packageName){ final PackageManager packageManager = context.getPackageManager();//擷取packagemanager List< PackageInfo> pinfo = packageManager.getInstalledPackages(0);//擷取所有已安裝程式的包資訊 List<String> pName = new ArrayList<String>();//用於儲存所有已安裝程式的包名 //從pinfo中將包名字逐一取出,壓入pName list中 if(pinfo != null){ for(int i = 0; i < pinfo.size(); i++){ String pn = pinfo.get(i).packageName; pName.add(pn); } } return pName.contains(packageName);//判斷pName中是否有目標程式的包名,有TRUE,沒有FALSE }
if(BaiduTool.isAvilible(Setting_activity.this.getApplicationContext(), "com.baidu.BaiduMap")){ try { intent = Intent.getIntent("intent://map/direction?origin=latlng:"+BaiduTool.getInstance().getLocationX()+","+BaiduTool.getInstance().getLocationY()+"|name:我的位置&destination= &mode=transit®ion=青島&src=移動醫學護理#Intent;scheme=bdapp;package=com.baidu.BaiduMap;end"); } catch (URISyntaxException e) { ToastUtils.show(getApplicationContext(), "調用百度地圖失敗."); Log.i("BaiduToolisAvilible", "未安裝"); } startActivity(intent); } //未安裝,跳轉至market下載該程式 else { //未安裝百度地圖,跳轉市集. ToastUtils.show(getApplicationContext(), "未安裝百度地圖,跳轉市集."); Uri uri = Uri.parse("market://details?id=com.baidu.BaiduMap");//id為包名 Intent it = new Intent(Intent.ACTION_VIEW, uri); startActivity(it); } //移動APP調起Android百度地圖方式舉例
安卓判斷是否安裝應用,沒安裝從市集下載安裝