public staticboolean isIntentAvailable(Context
context,String action){
final PackageManager packageManager= context.getPackageManager();
final Intent intent=newIntent(action);
List<ResolveInfo> list=
packageManager.queryIntentActivities(intent,
PackageManager.MATCH_DEFAULT_ONLY);
return list.size()>0;
}
@Override
public boolean onPrepareOptionsMenu(Menu menu){
final boolean scanAvailable= isIntentAvailable(this,
"com.google.zxing.client.android.SCAN");
MenuItem item;
item = menu.findItem(R.id.menu_item_add);
item.setEnabled(scanAvailable);
return super.onPrepareOptionsMenu(menu);
}