지금까지이 방법을 가지고 있는데 뭔가 빠진 것 같았습니다
예를 들어 false를 반환하는 /sdcard/sound.3ga 파일이 있지만 (이 유형의 파일을 처리 할 수있는 활동이없는 것처럼) 파일 관리자에서 열면 문제없이 미디어 플레이어로 열립니다.
이 인 텐트가 완전하지 않다고 생각하고이 인 텐트를 처리 할 수있는 활동이없는 경우에만 handlerExists 변수가 거짓임을 확인하기 위해 더 많은 작업이 필요합니다.
PackageManager pm = getPackageManager();
Intent intent = new Intent(android.content.Intent.ACTION_VIEW);
String extension = android.webkit.MimeTypeMap.getFileExtensionFromUrl(Uri.fromFile(new File(uriString)).toString());
String mimetype = android.webkit.MimeTypeMap.getSingleton().getMimeTypeFromExtension(extension);
intent.setDataAndType(Uri.fromFile(new File(uriString)),mimetype);
boolean handlerExists = intent.resolveActivity(pm) != null;