3

WebViewClient を使用して .mp3 ファイルのリストを表示しています。mp3 ファイルの URL をクリックした後、ユーザーが mp3 をストリーミングするメディア プレーヤーを選択できる [Complete Action Using] メニューを Android にポップアップ表示させたいと考えています。

次のコードを使用すると、「Complete Action Using」メニューを起動して、メディア プレーヤーを選択できます。残念ながら、すべてのメディア プレーヤーが独自のバージョンの「ファイルを再生できません」というエラー メッセージを吐き出します。

次のコードにエラーはありますか? ありがとうございました!

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);
        }
    }
4

0 に答える 0