Tengo este método hasta ahora, pero me pareció que faltaba algo
por ejemplo, tengo un archivo /sdcard/sound.3ga que devuelve falso (como si no hubiera actividad que pueda manejar este tipo de archivo), pero cuando lo abro desde el administrador de archivos se abre con el reproductor multimedia sin problema
Creo que esta intención no está completa y necesito algo más para asegurarme de que la variable handlerExists será falsa SOLO si no hay actividad que pueda manejar esta intención
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;