【问题标题】:Sound in WebviewWebview 中的声音
【发布时间】:2011-12-06 16:24:29
【问题描述】:

我在 Webview 中播放声音时遇到问题。 我想在后台播放通过单击按钮打开的声音。 我现在使用 folowwing 脚本,但是当我点击按钮时会打开一个新窗口。

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

谁能帮帮我?

【问题讨论】:

    标签: android android-webview


    【解决方案1】:

    你写的代码是打开一个新窗口 每当您单击具有 网页中的 .mp3 文件

    您的文件存储在应用程序的什么位置 assets 或 raw 或其一个 url

    这是在不打开新窗口的情况下从 webview 播放文件的代码 音频文件存储在 raw 文件夹中

           @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();
            }
        }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-10-02
      • 1970-01-01
      • 2021-12-22
      • 1970-01-01
      • 2012-06-13
      相关资源
      最近更新 更多