Android:媒体播放器创建

标签 android android-mediaplayer

我有这个代码:

package com.example.pr;

import android.media.MediaPlayer;

public class Audio{

    MediaPlayer mp;

    public void playClick(){
        mp = MediaPlayer.create(Audio.this, R.raw.click);  
        mp.start();
    }
}

我在“创建”时出错,并显示此消息“类型 MediaPlayer 中的方法创建(上下文,整数)不适用于参数(音频,整数)”

为什么?

最佳答案

MediaPlayer.create() 需要一个 Context 作为第一个参数。传入当前的 Activity,它应该可以工作。

尝试:

public void playClick(Context context){
    mp = MediaPlayer.create(context, R.raw.click);  
    mp.start();
}

在您的 Activity 中:

audio = new Audio();
...
audio.playClick(this);

但不要忘记在声音结束后在 MediaPlayer 实例上调用 release,否则你会得到一个异常。

但是,无论如何,使用 SoundPool 播放短点击可能会更好。

关于Android:媒体播放器创建,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12154951/

相关文章:

android - 带有 JSON.NET 的包非常大

javascript - 隐藏具有特定 url 的 anchor 标签

cordova - 何时使用 Phonegaps media.release()

android - 如何在Android中无间隙地循环播放声音?

android - 如何创建音乐控件?

java - 如何让我的处理程序在微秒而不是毫秒内调用可运行程序?

android - Google Play 不允许我更新我的应用

Android:使用json上传图片

java - Android 媒体播放器在暂停后无法启动

Android 知道音乐是否在 MediaPlayer 的特定实例中播放