2016-04-11 4 views
0

J'ai le code suivant pour lancer le sélecteur d'application pour ouvrir n'importe quel type de fichier, mais quand jamais j'essaye d'ouvrir le fichier je reçois le fichier de message ne peut pas être ouvert.Android ouvrir le fichier de mon application dans l'application appropriée erreur installée

Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse(path)); 

if(type.contains("image")) { 
    intent.setDataAndType(Uri.parse(path),type); 
}else if(extension.equalsIgnoreCase("txt")){ 
    intent.setDataAndType(Uri.parse(path),"text/plain"); 
}else{ 
    intent.setDataAndType(Uri.parse(path),type); 
}      

intent.setFlags(Intent.FLAG_ACTIVITY_NO_HISTORY); 
Intent intentOpen = Intent.createChooser(intent, "Open File"); 

try { 
    activity.startActivity(intentOpen); 
} catch (ActivityNotFoundException e) {     
} 

toute aide sera appréciée, merci à l'avance

+0

Essayez d'utiliser 'Intent intent = new Intent (Intent.ACTION_VIEW);'. –

+0

Quelle est la valeur de 'path'? Quelle est la valeur de 'type'? – CommonsWare

+0

type = "application/vnd.openxmlformats-officedocument.wordprocessingml.document" et chemin = "/ storage/emulated/0/Download/ws.docx" le chemin d'accès à partir de root = Environment.getExternalStoragePublicDirectory (Environment.DIRECTORY_DOWNLOADS) .getPath() – user173488

Répondre

0

je l'ai résolu, je devais ajouter un fichier: // au début du chemin pour ouvrir le fichier.

path="file://"+Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_DOWNLOA‌​DS).getPath()+"/"+myFileName;