From 4f0e651a83a4ed8bf84594940e82f7f23893d998 Mon Sep 17 00:00:00 2001 From: Maxr1998 Date: Mon, 28 Mar 2022 22:16:05 +0200 Subject: [PATCH] Fix or suppress various lint warnings --- android-lint.xml | 14 ++++ app/build.gradle.kts | 8 ++- .../interaction/PlayerMediaSessionCallback.kt | 2 + .../mobile/webapp/RemotePlayerService.kt | 66 ++++++++++--------- .../res/values/strings_donottranslate.xml | 1 - 5 files changed, 58 insertions(+), 33 deletions(-) create mode 100644 android-lint.xml diff --git a/android-lint.xml b/android-lint.xml new file mode 100644 index 00000000..e20f8e8f --- /dev/null +++ b/android-lint.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + diff --git a/app/build.gradle.kts b/app/build.gradle.kts index 0f30103d..b1aea091 100644 --- a/app/build.gradle.kts +++ b/app/build.gradle.kts @@ -71,6 +71,12 @@ android { } } + bundle { + language { + enableSplit = false + } + } + @Suppress("UnstableApiUsage") buildFeatures { viewBinding = true @@ -83,9 +89,9 @@ android { isCoreLibraryDesugaringEnabled = true } lint { + lintConfig = file("$rootDir/android-lint.xml") abortOnError = false sarifReport = true - disable.addAll(setOf("MissingTranslation", "ExtraTranslation")) } } diff --git a/app/src/main/java/org/jellyfin/mobile/player/interaction/PlayerMediaSessionCallback.kt b/app/src/main/java/org/jellyfin/mobile/player/interaction/PlayerMediaSessionCallback.kt index 120a2150..81c077ac 100644 --- a/app/src/main/java/org/jellyfin/mobile/player/interaction/PlayerMediaSessionCallback.kt +++ b/app/src/main/java/org/jellyfin/mobile/player/interaction/PlayerMediaSessionCallback.kt @@ -1,8 +1,10 @@ package org.jellyfin.mobile.player.interaction +import android.annotation.SuppressLint import android.media.session.MediaSession import org.jellyfin.mobile.player.PlayerViewModel +@SuppressLint("MissingOnPlayFromSearch") class PlayerMediaSessionCallback(private val viewModel: PlayerViewModel) : MediaSession.Callback() { override fun onPlay() { viewModel.play() diff --git a/app/src/main/java/org/jellyfin/mobile/webapp/RemotePlayerService.kt b/app/src/main/java/org/jellyfin/mobile/webapp/RemotePlayerService.kt index 167f050a..c4e18c9b 100644 --- a/app/src/main/java/org/jellyfin/mobile/webapp/RemotePlayerService.kt +++ b/app/src/main/java/org/jellyfin/mobile/webapp/RemotePlayerService.kt @@ -1,5 +1,6 @@ package org.jellyfin.mobile.webapp +import android.annotation.SuppressLint import android.app.Notification import android.app.NotificationManager import android.app.PendingIntent @@ -31,9 +32,9 @@ import kotlinx.coroutines.CoroutineScope import kotlinx.coroutines.Dispatchers import kotlinx.coroutines.Job import kotlinx.coroutines.launch -import org.jellyfin.mobile.app.AppPreferences import org.jellyfin.mobile.MainActivity import org.jellyfin.mobile.R +import org.jellyfin.mobile.app.AppPreferences import org.jellyfin.mobile.utils.Constants import org.jellyfin.mobile.utils.Constants.EXTRA_ALBUM import org.jellyfin.mobile.utils.Constants.EXTRA_ARTIST @@ -339,44 +340,47 @@ class RemotePlayerService : Service(), CoroutineScope { mediaController = MediaController(applicationContext, sessionToken) @Suppress("DEPRECATION") setFlags(MediaSession.FLAG_HANDLES_TRANSPORT_CONTROLS or MediaSession.FLAG_HANDLES_MEDIA_BUTTONS) - setCallback(object : MediaSession.Callback() { - override fun onPlay() { - webappFunctionChannel.callPlaybackManagerAction(PLAYBACK_MANAGER_COMMAND_PLAY) - } + setCallback( + @SuppressLint("MissingOnPlayFromSearch") + object : MediaSession.Callback() { + override fun onPlay() { + webappFunctionChannel.callPlaybackManagerAction(PLAYBACK_MANAGER_COMMAND_PLAY) + } - override fun onPause() { - webappFunctionChannel.callPlaybackManagerAction(PLAYBACK_MANAGER_COMMAND_PAUSE) - } + override fun onPause() { + webappFunctionChannel.callPlaybackManagerAction(PLAYBACK_MANAGER_COMMAND_PAUSE) + } - override fun onSkipToPrevious() { - webappFunctionChannel.callPlaybackManagerAction(PLAYBACK_MANAGER_COMMAND_PREVIOUS) - } + override fun onSkipToPrevious() { + webappFunctionChannel.callPlaybackManagerAction(PLAYBACK_MANAGER_COMMAND_PREVIOUS) + } - override fun onSkipToNext() { - webappFunctionChannel.callPlaybackManagerAction(PLAYBACK_MANAGER_COMMAND_NEXT) - } + override fun onSkipToNext() { + webappFunctionChannel.callPlaybackManagerAction(PLAYBACK_MANAGER_COMMAND_NEXT) + } - override fun onRewind() { - webappFunctionChannel.callPlaybackManagerAction(PLAYBACK_MANAGER_COMMAND_REWIND) - } + override fun onRewind() { + webappFunctionChannel.callPlaybackManagerAction(PLAYBACK_MANAGER_COMMAND_REWIND) + } - override fun onFastForward() { - webappFunctionChannel.callPlaybackManagerAction(PLAYBACK_MANAGER_COMMAND_FAST_FORWARD) - } + override fun onFastForward() { + webappFunctionChannel.callPlaybackManagerAction(PLAYBACK_MANAGER_COMMAND_FAST_FORWARD) + } - override fun onStop() { - webappFunctionChannel.callPlaybackManagerAction(PLAYBACK_MANAGER_COMMAND_STOP) - onStopped() - } + override fun onStop() { + webappFunctionChannel.callPlaybackManagerAction(PLAYBACK_MANAGER_COMMAND_STOP) + onStopped() + } - override fun onSeekTo(pos: Long) { - webappFunctionChannel.seekTo(pos) - val currentState = playbackState ?: return - val isPlaying = currentState.state == PlaybackState.STATE_PLAYING - val canSeek = (currentState.actions and PlaybackState.ACTION_SEEK_TO) != 0L - setPlaybackState(isPlaying, pos, canSeek) + override fun onSeekTo(pos: Long) { + webappFunctionChannel.seekTo(pos) + val currentState = playbackState ?: return + val isPlaying = currentState.state == PlaybackState.STATE_PLAYING + val canSeek = (currentState.actions and PlaybackState.ACTION_SEEK_TO) != 0L + setPlaybackState(isPlaying, pos, canSeek) + } } - }) + ) } } diff --git a/app/src/main/res/values/strings_donottranslate.xml b/app/src/main/res/values/strings_donottranslate.xml index 0b1f9f8a..d37e1669 100644 --- a/app/src/main/res/values/strings_donottranslate.xml +++ b/app/src/main/res/values/strings_donottranslate.xml @@ -1,5 +1,4 @@ Jellyfin - " / "