【问题标题】:No sound when the Activity starts from Lock ScreenActivity 从锁屏启动时没有声音
【发布时间】:2018-02-28 17:49:45
【问题描述】:

这似乎是一个奇怪的问题。我正在使用 AlarmManager 设置带有自定义音轨的警报。活动开始并正常播放音乐,但是当我锁定手机时活动开始但没有播放音频。

这是我正在使用的代码。

onCreate 方法

PowerManager pm = (PowerManager) getSystemService(Context.POWER_SERVICE);
    mWakelock = pm.newWakeLock(PowerManager.FULL_WAKE_LOCK|PowerManager.ACQUIRE_CAUSES_WAKEUP,"My Wake Log");
    mWakelock.acquire();
    this.requestWindowFeature(Window.FEATURE_NO_TITLE);
    this.getWindow().setFlags(WindowManager.LayoutParams.FLAG_DISMISS_KEYGUARD | 
            WindowManager.LayoutParams.FLAG_SHOW_WHEN_LOCKED | 
            WindowManager.LayoutParams.FLAG_TURN_SCREEN_ON,
            WindowManager.LayoutParams.FLAG_DISMISS_KEYGUARD | 
            WindowManager.LayoutParams.FLAG_SHOW_WHEN_LOCKED | 
            WindowManager.LayoutParams.FLAG_TURN_SCREEN_ON);
    setContentView(R.layout.sampleAlarm);
            mediplayer.setAudioStreamType(AudioManager.STREAM_MUSIC);  
            mediplayer.setDataSource(Environment.getExternalStorageDirectory()+"track1/1.mp3");                     
                            mediplayer.setVolume(100,100);
            mediplayer.prepare();
            mediplayer.setLooping(true);
            mediplayer.start();

知道我做错了什么。

【问题讨论】:

    标签: android audio alarmmanager


    【解决方案1】:

    我能够弄清楚。并解决了问题。我在 onStop 和 onPause 方法中添加了一个媒体播放器版本,当手机从锁定模式中唤醒时,它出于某种原因反复触发 onStop 和 onPause。所以我在 onStop 和 onPause 中添加了一个 isFinishing 以确保活动实际上已停止。

    if(this.isFinishing(){
       mediplayer.stop();
       mediplayer.release();
    }
    

    【讨论】:

      【解决方案2】:

      只需添加到@RagZ anwer

      如果您使用的是 Fragments,那么只需将 isFinishing() 替换为 isRemoving()

      if(this.isRemoving(){
         mediplayer.stop();
         mediplayer.release();
      }
      

      【讨论】:

        猜你喜欢
        • 2020-06-18
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多