2011-12-06 6 views
2

Webviewのサウンドの再生に問題があります。 ボタンをクリックして開いたものをバックグラウンドで再生したい。 私は現時点でスクリプトをフォローしていますが、ボタンをクリックすると新しいウィンドウが開きます。私を助けることができるWebviewのサウンド

package C.K; 

import android.content.Intent; 
import android.net.Uri; 
import android.webkit.WebView; 
import android.webkit.WebViewClient; 

final class MyWebViewClient extends WebViewClient { 
    @Override  
    public boolean shouldOverrideUrlLoading(WebView view, String url) 
    {   
     if (url.endsWith(".mp3")) {    
      Intent intent = new Intent(Intent.ACTION_VIEW); 
      intent.setDataAndType(Uri.parse(url), "audio/*"); 
      view.getContext().startActivity(intent); 

      return true; 
      } else { 
       return super.shouldOverrideUrlLoading(view, url); 
       }  } } 

答えて

1

あなたは足すされたコードは、Webページ内の .MP3ファイルを持っているリンクをクリックしますたびに新しいウィンドウ を開くためには、あなたのファイルがRAWまたはそのAまたはアプリで 資産を格納している

URL

が、これは、生のフォルダに格納されている新しいウィンドウ オーディオファイルをopenningなしのWebViewからファイルを再生するためのコードである

 @Override  
     public boolean shouldOverrideUrlLoading(WebView view, String url) 
     {   
       if (url.endsWith(".mp3")) {  
       String temp1=url.replace(".mp3", "");  
       playaudio(temp1); 

       return true; 
     }  
     return true; 
} 


     private void playaudio(String url){ 
     String s=url; 
     int i=getResources().getIdentifier(s,"raw",getPackageName()); 
     Log.v("name of file",""+s); 
     Log.v("id of file",""+i); 
     if(i!=0){ 
     MediaPlayer player = new MediaPlayer().create(getBaseContext(),i);; 
     player.setVolume(0.9f, 0.9f); 
     player.start(); 
     } 
    }