Add logging around wakelock usage for voice notes player.
This commit is contained in:
parent
2e8ebe8b74
commit
4c5a88c6ca
2 changed files with 14 additions and 1 deletions
|
@ -11,17 +11,23 @@ import com.google.android.exoplayer2.SimpleExoPlayer
|
|||
import com.google.android.exoplayer2.audio.AudioAttributes
|
||||
import com.google.android.exoplayer2.ext.mediasession.MediaSessionConnector
|
||||
import com.google.android.exoplayer2.util.Util
|
||||
import org.signal.core.util.logging.Log
|
||||
|
||||
class VoiceNotePlaybackController(
|
||||
private val player: SimpleExoPlayer,
|
||||
private val voiceNotePlaybackParameters: VoiceNotePlaybackParameters
|
||||
) : MediaSessionConnector.CommandReceiver {
|
||||
|
||||
companion object {
|
||||
private val TAG = Log.tag(VoiceNoteMediaController::class.java)
|
||||
}
|
||||
|
||||
@Suppress("deprecation")
|
||||
override fun onCommand(p: Player, controlDispatcher: ControlDispatcher, command: String, extras: Bundle?, cb: ResultReceiver?): Boolean {
|
||||
Log.d(TAG, "[onCommand] Received player command $command (extras? ${extras != null})")
|
||||
|
||||
if (command == VoiceNotePlaybackService.ACTION_NEXT_PLAYBACK_SPEED) {
|
||||
val speed = extras?.getFloat(VoiceNotePlaybackService.ACTION_NEXT_PLAYBACK_SPEED, 1f) ?: 1f
|
||||
|
||||
player.playbackParameters = PlaybackParameters(speed)
|
||||
voiceNotePlaybackParameters.setSpeed(speed)
|
||||
return true
|
||||
|
|
|
@ -82,6 +82,7 @@ class VoiceNoteProximityWakeLockManager(
|
|||
sensorManager.unregisterListener(hardwareSensorEventListener)
|
||||
|
||||
if (wakeLock?.isHeld == true) {
|
||||
Log.d(TAG, "[cleanUpWakeLock] Releasing wake lock.")
|
||||
wakeLock.release()
|
||||
}
|
||||
|
||||
|
@ -102,10 +103,14 @@ class VoiceNoteProximityWakeLockManager(
|
|||
|
||||
if (isPlayerActive()) {
|
||||
if (startTime == -1L) {
|
||||
Log.d(TAG, "[onPlaybackStateChanged] Player became active with start time $startTime, registering sensor listener.")
|
||||
startTime = System.currentTimeMillis()
|
||||
sensorManager.registerListener(hardwareSensorEventListener, proximitySensor, SensorManager.SENSOR_DELAY_NORMAL)
|
||||
} else {
|
||||
Log.d(TAG, "[onPlaybackStateChanged] Player became active without start time, skipping sensor registration")
|
||||
}
|
||||
} else {
|
||||
Log.d(TAG, "[onPlaybackStateChanged] Player became inactive. Cleaning up wake lock.")
|
||||
cleanUpWakeLock()
|
||||
}
|
||||
}
|
||||
|
@ -132,12 +137,14 @@ class VoiceNoteProximityWakeLockManager(
|
|||
|
||||
if (newStreamType == AudioManager.STREAM_VOICE_CALL) {
|
||||
if (wakeLock?.isHeld == false) {
|
||||
Log.d(TAG, "[onSensorChanged] Acquiring wakelock")
|
||||
wakeLock.acquire(TimeUnit.MINUTES.toMillis(30))
|
||||
}
|
||||
|
||||
startTime = System.currentTimeMillis()
|
||||
} else {
|
||||
if (wakeLock?.isHeld == true) {
|
||||
Log.d(TAG, "[onSensorChanged] Releasing wakelock")
|
||||
wakeLock.release()
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Add table
Reference in a new issue