我正在使用 WebViewClient 来显示 .mp3 文件的列表。单击 mp3 文件 url 后,我希望 Android 弹出“使用完成操作”菜单,允许用户选择从哪个媒体播放器流式传输 mp3。
使用以下代码,我可以启动“使用完成操作”菜单并能够选择媒体播放器。不幸的是,每个媒体播放器都会吐出自己版本的“无法播放文件”错误消息。
您在以下代码中看到任何错误吗?谢谢!
private class MapWebViewClient extends WebViewClient {
@Override
public boolean shouldOverrideUrlLoading(WebView view, String url) {
if (url.endsWith(".mp3")) {
Intent intent = new Intent();
intent.setAction(android.content.Intent.ACTION_VIEW);
File file = null;
try {
file = new File(url);
intent.setDataAndType(Uri.fromFile(file), "audio/*");
startActivity(intent);
} catch (NullPointerException e) {
e.printStackTrace();
}
return true;
} else {
return super.shouldOverrideUrlLoading(view, url);
}
}