• 音乐播放&视频


    1,播放音乐

    先new一个MediaPlay()实例 MediaPlay mMediaPlay = new MediaPlay();

    1.设置点击按钮,然后添加运行权限,在自定义一个方法initMedirPlar()方法,在方法中指定文件路径File file =new File("路径"),通过MediaPlay实例调用setDataSource()方法得到文件路径,在用MediaPlay()调用permission()方法准备文件,其次在点击按钮中设置播放暂停,停止。

    if (ContextCompat.checkSelfPermission(MainActivity.this, Manifest.permission.WRITE_EXTERNAL_STORAGE) != PackageManager.PERMISSION_GRANTED) {
                ActivityCompat.requestPermissions(MainActivity.this, new String[]{Manifest.permission.WRITE_EXTERNAL_STORAGE}, 1);
            } else {
                initViewPath();
    }
    }
     private void initMediaPlay() {
            try {
                File file = new File("/storage/emulated/0/aaa.mp3");
                mediaPlayer.setDataSource(file.getPath());//获取地址
                mediaPlayer.prepare();//准备播放
            } catch (IOException e) {
                e.printStackTrace();
            }
        }
      public void onClick(View v) {
            switch (v.getId()) {
                case R.id.play:
                    if (!mediaPlayer.isPlaying()) {
                        mediaPlayer.start();//开始播放
                    }
                    break;
                case R.id.pause:
                    if (mediaPlayer.isPlaying()) {
                        mediaPlayer.pause();//暂停
                    }
                    break;
                case R.id.stop:
                    if (mediaPlayer.isPlaying()) {
                        mediaPlayer.stop();//结束
                        initMediaPlay();
                    }
                    break;
    

     最后不要忘记释放资源哦:

       protected void onDestroy() {
            super.onDestroy();
            if (mediaPlayer != null) {
                mediaPlayer.stop();
                mediaPlayer.release();
            }
    
    }
    

     播放视频与之大体一样就是要在布局中添加VideoView布局,并且在主函数中找到控件。

    1.还是先找到视频路径(注意,这里的视频只能是mp4格式的)

    File file = new File("路径“);

    通过VideoView()a控件调用setViewPath()方法找到视频文件路径

    最后在点击按钮中通过控件设置播放,暂停,重播。

        private void initViewPath() {
            File file = new File("/storage/emulated/0/pp.mp4");//地址
            mvideoview.setVideoPath(file.getPath());//获取地址
        }
    
      public void onClick(View v) {
            switch (v.getId()) {
                //播放视频按钮
                case R.id.mplay:
                    if (!mvideoview.isPlaying()){
                        mvideoview.start();
                    }
                    break;
                case R.id.mpause:
                    if (mvideoview.isPlaying()){
                        mvideoview.pause();
                    }
                    break;
                case R.id.mstop:
                    if (mvideoview.isPlaying()){
                        mvideoview.resume();//重播
                    }
                    break;
    
    
                default:
                    break;
            }
        }
    

     最后还是释放资源

        @Override
        protected void onDestroy() {
            super.onDestroy();
        
            if (mvideoview!=null){
                mvideoview.suspend();
            }
        }
    
  • 相关阅读:
    A Complete Guide to the <Picture> Element
    html5 在移动端的缩放控制
    新版itunes添加铃声
    html5 背景音乐 js控制播放 暂停
    thinkphp mysql 坐标按距离排序
    jquery ajax跨域 thinkphp getjson
    webkit-box
    Javascript 获取页面高度(多种浏览器)
    怎样实现iMessage群发
    css3背景透明文字不透明
  • 原文地址:https://www.cnblogs.com/lyl123/p/7193436.html
Copyright © 2020-2023  润新知