• 第十七章:使用media插件来播放声音


    前面已经讲过如何基于push notification自定义sound,但是还是存在几个问题:

    1. IOS app在前台运行的时候,如何播放sound?因为这个时候push notification是不起作用的。
    2. 如果用户改成了mute(静音)状态,如何保证push notification sound可以播放?

    下面我们就来探讨这些问题。

    问题一:我们可以采用media plugin来播放声音 ---- 如果此时IOS app正在前台运行,不能够接收push notification的话。

    安装plugin:

    cordova plugin add cordova-plugin-media
    

     实现mediaPlayer:

    .factory('mediaPlayer',function($cordovaMedia){
            var src = "src/sound.mp3";
            console.log(src);
            return {
                play:function(){
                  if (media !== undefined) {
                  media.stop();
                  media.release();
                  }
                  media = $cordovaMedia.newMedia(src);
                  var iOSPlayOptions = {
                      numberOfLoops: 1,
                      playAudioWhenScreenIsLocked : false
                  }
    
                  media.play(iOSPlayOptions); // iOS only!
                  media.play(); // Android
                }
            };
    })
    

     在run方法里面调用:

    mediaPlayer.play();
    

     里面的关键点是"playAudioWhenScreenIsLocked : false",即使系统是mute状态的,仍然可以播放声音。

    问题二:

    暂时还没有解决方案。

  • 相关阅读:
    hibernate持久化框架
    spring之AOP
    spring之bean
    spring之IOC
    pdf文件工具typora
    vsCode写vue项目一键生成.vue模板
    微信小程序瀑布流
    小程序接入阿拉丁
    小程序引入背景图片不显示问题解决
    Mac OS下使用rz和sz
  • 原文地址:https://www.cnblogs.com/allanli/p/play_sound_when_mute_in_ionic.html
Copyright © 2020-2023  润新知