package com.bonait.bnframework.common.helper;

import android.content.Context;
import android.media.MediaPlayer;
import android.net.Uri;

import com.bonait.bnframework.R;
import com.bonait.bnframework.common.constant.DataBus;

import java.io.IOException;
import java.util.Random;

/**
 * MediaPlayerHelper
 * 媒体工具类，使用单例设计模式保证使用的媒体对象只有一个
 */
public class MediaPlayerHelper {

    MediaPlayer mPlayer=null;
    public Context context=null;

    //region 单例模式
    private static MediaPlayerHelper mInstance; //实例变量设置私有，防止直接通过类名访问

    private MediaPlayerHelper() {
        //默认构造函数私有，防止类外直接new创建对象
    }

    public static synchronized MediaPlayerHelper getInstance() { //静态同步方法作为唯一的实例对象获取方式
        if (mInstance==null) {
            mInstance = new MediaPlayerHelper();
        }
        return mInstance;
    }
    //endregion
    public void SetConText(Context v)
    {
        this.context=v;
    }

    //释放
    public void Release()
    {
        if (mPlayer != null && mPlayer.isPlaying()) {
            mPlayer.stop();
            mPlayer.release();          }

    }
    public int GetStringID(String str)
    {
        if(str=="配料开始")return R.raw.plks;///下面把要写的rawid 复制粘贴到此处
        else if(str=="配料完成")return R.raw.plwc;///下面把要写的rawid 复制粘贴到此处
        else if(str=="配料中请稍后")return R.raw.plzqsh;///下面把要写的rawid 复制粘贴到此处
        else if(str=="清洗开始请稍后")return R.raw.qxksqsh;///下面把要写的rawid 复制粘贴到此处
        else if(str=="清洗完成")return R.raw.qxwc;///下面把要写的rawid 复制粘贴到此处
        else return  R.raw.plwc;
    }

    public int GetSJ()
    {
        Random rand = new Random();
        int randNum = rand.nextInt(5);
        if(randNum==0)return R.raw.plks;///下面把要写的rawid 复制粘贴到此处
        else if(randNum==1)return R.raw.plwc;///下面把要写的rawid 复制粘贴到此处
        else if(randNum==2)return R.raw.plzqsh;///下面把要写的rawid 复制粘贴到此处
        else if(randNum==3)return R.raw.qxksqsh;///下面把要写的rawid 复制粘贴到此处
        else if(randNum==4)return R.raw.qxwc;///下面把要写的rawid 复制粘贴到此处
        else return  R.raw.plwc;
    }

    //播放语音
    public void PlaySound(String text)
    {
        if(context==null )
        {
            return;
        }

        if (mPlayer!=null){  //判断当mPlayer不为空的时候
            mPlayer.stop();  //先结束上一个播放内容
            mPlayer.release();
        }
        mPlayer = MediaPlayer.create(context, GetStringID(text));  //添加本地资源
        mPlayer.setLooping(false);//设置不循环
        mPlayer.start();   //开始播放
    }
    //播放语音
    public void PlaySound(int id)
    {
        if(context==null )
        {
            return;
        }
        if (mPlayer!=null){  //判断当mPlayer不为空的时候
            mPlayer.stop();  //先结束上一个播放内容
            mPlayer.release();
        }
        mPlayer = MediaPlayer.create(context, id);  //添加本地资源
        mPlayer.setLooping(false);//设置不循环
        mPlayer.start();   //开始播放
    }
    public int  getResource(String resName){
        int resId = context.getResources().getIdentifier(resName,"raw",context.getPackageName());
        return resId;
    }

}

