问问题
10245 次
2 回答
5
我认为最好的选择是使用选择器活动,用户可以在其中选择他最喜欢的媒体播放器。
Intent viewIntent = new Intent(Intent.ACTION_VIEW);
File file = new File((String) ((TextView) item).getText());
viewIntent.setDataAndType(Uri.fromFile(file), "audio/*");
startActivity(Intent.createChooser(viewIntent, null));
顺便说一句,这种传递文件名的方式对我来说似乎有点奇怪。我会考虑改变它。
我不确定,但如果你声明了相应的意图过滤器,你应该能够在选择器中看到你自己的播放器。
于 2013-06-12T14:21:45.590 回答
2
您仍然可以使用已弃用的意图来定位低于 15 的 API 级别,然后使用新的意图来定位更新的 API 级别。为此,只需在您的代码中使用如下检查:
if ( Build.VERSION.SDK_INT < Build.VERSION_CODES.ICE_CREAM_SANDWICH_MR1 ) {
// use the [MediaStore.INTENT_ACTION_MUSIC_PLAYER] intent
}
else {
// use the [Intent.CATEGORY_APP_MUSIC] intent
}
只要确保您的 TargetAPI 为 15 或更高;你的 MinAPI 可以是 8。
于 2013-06-12T13:52:56.783 回答