2012-08-25 35 views
0

所以想法是我打开一个文件使用已经预装在设备上的应用程序。 这里是我的代码处理意图视图typ =音频/ mpeg

Intent intent = new Intent(); 
intent.setAction(Intent.ACTION_VIEW); 
intent.setData(fileUri); 
intent.setType(mimeType); 
startActivity(intent); 

我的错误信息是

08-25 12:50:32.900: E/AndroidRuntime(19555): android.content.ActivityNotFoundException: No Activity found to handle Intent { act=android.intent.action.VIEW typ=audio/mpeg } 

任何想法如何处理呢?我阅读了意向过滤器,但是来自这里的人告诉我,如果我要使用其他应用程序来打开我的文件,那么我不需要指定任何过滤器,这是真的吗?

P.S.由于某种原因,它打开PDF文件蛮好的,JPG和TXT

感谢 丹尼斯XX

回答

0

任何想法如何解决这个问题?

在手机上安装一个应用程序,该应用程序具有处理此MIME类型的活动。并非每种可能的MIME类型都将由您设备上已有的应用处理。

如果您认为设备上的某某应用程序应该能够处理此问题,请使用AppXplore检查其清单并查看您的问题出在哪里(例如,fileUri正在使用不支持的方案)。

+1

刚刚完成它 - 我会建议使用intent.setDataAndType而不是intent.setData后跟intent.setType。 – Dennis

+1

@丹尼斯:哦,是的,我完全错过了。 'setType()'将会清除你传递给'setData()'的'Uri'。 – CommonsWare

0

检查支持的媒体格式here。确保你正在使用其中之一。

+0

我正在使用其中之一 – Dennis