由于隐式intent并不会明确告知要打开哪些activity, 有可能设备上就不会有合适的应用。这时候应用就会崩溃。 为此我们在使用隐式intent之前,应该先进行安全检查, 判断是否有合适的activity。 Intent intentpic = new Intent(MediaStore.ACTION_IMAGE_CAPTURE); PackageManager pm=getPackageManager(); List<ResolveInfo> activities=pm.queryIntentActivities(intentpic,0); if(activities.size()<=0) { //不存在匹配跳转隐式intent的Activity ToastUtil.toastShow(PeopleDataActivity.this,"设备不支持拍照"); } else{ //存在匹配跳转隐式intent的Activity ToastUtil.toastShow(PeopleDataActivity.this,"设备支持拍照"); }
转载于:https://blog.51cto.com/1206995290qq/1976340