Direct use of AudioManager from AudioReactor

This commit is contained in:
alexandre patelli 2018-03-11 15:09:11 +01:00
parent 5f764ab8f5
commit 1d629e7b2e
2 changed files with 11 additions and 5 deletions

View File

@ -28,7 +28,6 @@ import android.content.Context;
import android.content.Intent; import android.content.Intent;
import android.content.IntentFilter; import android.content.IntentFilter;
import android.graphics.Bitmap; import android.graphics.Bitmap;
import android.media.AudioManager;
import android.os.Build; import android.os.Build;
import android.os.IBinder; import android.os.IBinder;
import android.support.annotation.IntRange; import android.support.annotation.IntRange;
@ -82,7 +81,6 @@ public final class BackgroundPlayer extends Service {
private BasePlayerImpl basePlayerImpl; private BasePlayerImpl basePlayerImpl;
private LockManager lockManager; private LockManager lockManager;
private AudioManager mAudioManager;
private ComponentName mReceiverComponent; private ComponentName mReceiverComponent;
/*////////////////////////////////////////////////////////////////////////// /*//////////////////////////////////////////////////////////////////////////
@ -122,9 +120,8 @@ public final class BackgroundPlayer extends Service {
mBinder = new PlayerServiceBinder(basePlayerImpl); mBinder = new PlayerServiceBinder(basePlayerImpl);
shouldUpdateOnProgress = true; shouldUpdateOnProgress = true;
mAudioManager = (AudioManager) getSystemService(Context.AUDIO_SERVICE);
mReceiverComponent = new ComponentName(this, MediaButtonReceiver.class); mReceiverComponent = new ComponentName(this, MediaButtonReceiver.class);
mAudioManager.registerMediaButtonEventReceiver(mReceiverComponent); basePlayerImpl.audioReactor.registerMediaButtonEventReceiver(mReceiverComponent);
} }
@Override @Override
@ -163,7 +160,7 @@ public final class BackgroundPlayer extends Service {
basePlayerImpl = null; basePlayerImpl = null;
lockManager = null; lockManager = null;
mAudioManager.unregisterMediaButtonEventReceiver(mReceiverComponent); basePlayerImpl.audioReactor.unregisterMediaButtonEventReceiver(mReceiverComponent);
stopForeground(true); stopForeground(true);
stopSelf(); stopSelf();

View File

@ -3,6 +3,7 @@ package org.schabi.newpipe.player.helper;
import android.animation.Animator; import android.animation.Animator;
import android.animation.AnimatorListenerAdapter; import android.animation.AnimatorListenerAdapter;
import android.animation.ValueAnimator; import android.animation.ValueAnimator;
import android.content.ComponentName;
import android.content.Context; import android.content.Context;
import android.content.Intent; import android.content.Intent;
import android.media.AudioFocusRequest; import android.media.AudioFocusRequest;
@ -86,6 +87,14 @@ public class AudioReactor implements AudioManager.OnAudioFocusChangeListener, Au
return Build.VERSION.SDK_INT >= Build.VERSION_CODES.O; return Build.VERSION.SDK_INT >= Build.VERSION_CODES.O;
} }
public void registerMediaButtonEventReceiver(ComponentName componentName) {
audioManager.registerMediaButtonEventReceiver(componentName);
}
public void unregisterMediaButtonEventReceiver(ComponentName componentName) {
audioManager.unregisterMediaButtonEventReceiver(componentName);
}
/*////////////////////////////////////////////////////////////////////////// /*//////////////////////////////////////////////////////////////////////////
// AudioFocus // AudioFocus
//////////////////////////////////////////////////////////////////////////*/ //////////////////////////////////////////////////////////////////////////*/