From 2de6ca303e9e97f7b9b23044b0c2be652d300859 Mon Sep 17 00:00:00 2001 From: Ryan Harg Date: Tue, 6 Dec 2022 09:31:09 +0100 Subject: [PATCH] Necessary upgrades to compileSdk and targetSdk and adjusting code --- app/build.gradle.kts | 6 +++-- app/src/main/AndroidManifest.xml | 12 +++++----- .../funkwhale/ffa/activities/LoginActivity.kt | 22 +++++++++---------- .../funkwhale/ffa/activities/MainActivity.kt | 6 ++--- .../funkwhale/ffa/playback/PinService.kt | 12 ++++++---- .../funkwhale/ffa/playback/PlayerService.kt | 8 +++---- .../ffa/repositories/SearchRepository.kt | 2 +- .../ffa/repositories/TracksRepository.kt | 2 +- .../java/audio/funkwhale/ffa/utils/Bus.kt | 2 +- .../audio/funkwhale/ffa/utils/Extensions.kt | 3 --- .../funkwhale/ffa/views/NowPlayingView.kt | 8 +++---- 11 files changed, 44 insertions(+), 39 deletions(-) diff --git a/app/build.gradle.kts b/app/build.gradle.kts index 2ff9843..4ba0f2a 100644 --- a/app/build.gradle.kts +++ b/app/build.gradle.kts @@ -36,6 +36,8 @@ android { targetCompatibility = JavaVersion.VERSION_1_8 } + namespace = "audio.funkwhale.ffa" + testCoverage { version = "0.8.7" } @@ -52,7 +54,7 @@ android { disable += listOf("MissingTranslation", "ExtraTranslation") } - compileSdk = 31 + compileSdk = 33 defaultConfig { @@ -62,7 +64,7 @@ android { versionName = androidGitVersion.name() minSdk = 24 - targetSdk = 30 + targetSdk = 33 testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner" diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index b6e4126..24462a3 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -1,6 +1,5 @@ - + @@ -22,7 +21,8 @@ android:name=".activities.SplashActivity" android:launchMode="singleInstance" android:noHistory="true" - android:screenOrientation="portrait"> + android:screenOrientation="portrait" + android:exported="true"> @@ -61,7 +61,8 @@ + android:foregroundServiceType="mediaPlayback" + android:exported="false"> @@ -80,7 +81,8 @@ - + diff --git a/app/src/main/java/audio/funkwhale/ffa/activities/LoginActivity.kt b/app/src/main/java/audio/funkwhale/ffa/activities/LoginActivity.kt index de6e936..914be0f 100644 --- a/app/src/main/java/audio/funkwhale/ffa/activities/LoginActivity.kt +++ b/app/src/main/java/audio/funkwhale/ffa/activities/LoginActivity.kt @@ -43,23 +43,23 @@ class LoginActivity : AppCompatActivity() { private var resultLauncher = registerForActivityResult(StartActivityForResult()) { result -> - result.data?.let { - oAuth.exchange(this, it) { - PowerPreference - .getFileByName(AppContext.PREFS_CREDENTIALS) - .setBoolean("anonymous", false) + result.data?.let { + oAuth.exchange(this, it) { + PowerPreference + .getFileByName(AppContext.PREFS_CREDENTIALS) + .setBoolean("anonymous", false) - lifecycleScope.launch(Main) { - Userinfo.get(this@LoginActivity, oAuth)?.let { - startActivity(Intent(this@LoginActivity, MainActivity::class.java)) + lifecycleScope.launch(Main) { + Userinfo.get(this@LoginActivity, oAuth)?.let { + startActivity(Intent(this@LoginActivity, MainActivity::class.java)) - return@launch finish() + return@launch finish() + } + throw Exception(getString(R.string.login_error_userinfo)) } - throw Exception(getString(R.string.login_error_userinfo)) } } } - } override fun onResume() { super.onResume() diff --git a/app/src/main/java/audio/funkwhale/ffa/activities/MainActivity.kt b/app/src/main/java/audio/funkwhale/ffa/activities/MainActivity.kt index efe6eb6..c65a437 100644 --- a/app/src/main/java/audio/funkwhale/ffa/activities/MainActivity.kt +++ b/app/src/main/java/audio/funkwhale/ffa/activities/MainActivity.kt @@ -244,8 +244,8 @@ class MainActivity : AppCompatActivity() { item.setShowAsAction(MenuItem.SHOW_AS_ACTION_COLLAPSE_ACTION_VIEW) item.actionView = View(this) item.setOnActionExpandListener(object : MenuItem.OnActionExpandListener { - override fun onMenuItemActionExpand(item: MenuItem?) = false - override fun onMenuItemActionCollapse(item: MenuItem?) = false + override fun onMenuItemActionExpand(item: MenuItem) = false + override fun onMenuItemActionCollapse(item: MenuItem) = false }) item.isChecked = !item.isChecked @@ -358,7 +358,7 @@ class MainActivity : AppCompatActivity() { .alpha(0.0f) .setDuration(400) .setListener(object : AnimatorListenerAdapter() { - override fun onAnimationEnd(animator: Animator?) { + override fun onAnimationEnd(animator: Animator) { binding.nowPlaying.visibility = View.GONE } }) diff --git a/app/src/main/java/audio/funkwhale/ffa/playback/PinService.kt b/app/src/main/java/audio/funkwhale/ffa/playback/PinService.kt index 321c125..3b5becf 100644 --- a/app/src/main/java/audio/funkwhale/ffa/playback/PinService.kt +++ b/app/src/main/java/audio/funkwhale/ffa/playback/PinService.kt @@ -80,16 +80,20 @@ class PinService : DownloadService(AppContext.NOTIFICATION_DOWNLOADS) { override fun getScheduler(): Scheduler? = null - override fun getForegroundNotification(downloads: MutableList, - notMetRequirements: Int): Notification { + override fun getForegroundNotification( + downloads: MutableList, + notMetRequirements: Int + ): Notification { val description = resources.getQuantityString(R.plurals.downloads_description, downloads.size, downloads.size) return DownloadNotificationHelper( this, AppContext.NOTIFICATION_CHANNEL_DOWNLOADS - ).buildProgressNotification(this, R.drawable.downloads, null, description, - downloads, notMetRequirements) + ).buildProgressNotification( + this, R.drawable.downloads, null, description, + downloads, notMetRequirements + ) } private fun getDownloads() = downloadManager.downloadIndex.getDownloads() diff --git a/app/src/main/java/audio/funkwhale/ffa/playback/PlayerService.kt b/app/src/main/java/audio/funkwhale/ffa/playback/PlayerService.kt index 68adff5..6b1c606 100644 --- a/app/src/main/java/audio/funkwhale/ffa/playback/PlayerService.kt +++ b/app/src/main/java/audio/funkwhale/ffa/playback/PlayerService.kt @@ -438,10 +438,10 @@ class PlayerService : Service() { } if (!playWhenReady) { - Build.VERSION_CODES.N.onApi( - { stopForeground(STOP_FOREGROUND_DETACH) }, - { stopForeground(false) } - ) + Build.VERSION_CODES.N.onApi( + { stopForeground(STOP_FOREGROUND_DETACH) }, + { stopForeground(false) } + ) } } diff --git a/app/src/main/java/audio/funkwhale/ffa/repositories/SearchRepository.kt b/app/src/main/java/audio/funkwhale/ffa/repositories/SearchRepository.kt index ee32d64..60021e1 100644 --- a/app/src/main/java/audio/funkwhale/ffa/repositories/SearchRepository.kt +++ b/app/src/main/java/audio/funkwhale/ffa/repositories/SearchRepository.kt @@ -11,8 +11,8 @@ import audio.funkwhale.ffa.model.Track import audio.funkwhale.ffa.model.TracksCache import audio.funkwhale.ffa.model.TracksResponse import audio.funkwhale.ffa.utils.OAuth -import com.github.kittinunf.fuel.gson.gsonDeserializerOf import audio.funkwhale.ffa.utils.mustNormalizeUrl +import com.github.kittinunf.fuel.gson.gsonDeserializerOf import com.google.android.exoplayer2.offline.DownloadManager import com.google.android.exoplayer2.upstream.cache.Cache import com.google.gson.reflect.TypeToken diff --git a/app/src/main/java/audio/funkwhale/ffa/repositories/TracksRepository.kt b/app/src/main/java/audio/funkwhale/ffa/repositories/TracksRepository.kt index 7858bf0..7a224c6 100644 --- a/app/src/main/java/audio/funkwhale/ffa/repositories/TracksRepository.kt +++ b/app/src/main/java/audio/funkwhale/ffa/repositories/TracksRepository.kt @@ -7,8 +7,8 @@ import audio.funkwhale.ffa.model.TracksCache import audio.funkwhale.ffa.model.TracksResponse import audio.funkwhale.ffa.utils.OAuth import audio.funkwhale.ffa.utils.getMetadata -import com.github.kittinunf.fuel.gson.gsonDeserializerOf import audio.funkwhale.ffa.utils.mustNormalizeUrl +import com.github.kittinunf.fuel.gson.gsonDeserializerOf import com.google.android.exoplayer2.offline.Download import com.google.android.exoplayer2.offline.DownloadManager import com.google.android.exoplayer2.upstream.cache.Cache diff --git a/app/src/main/java/audio/funkwhale/ffa/utils/Bus.kt b/app/src/main/java/audio/funkwhale/ffa/utils/Bus.kt index b7e4828..83b3ac1 100644 --- a/app/src/main/java/audio/funkwhale/ffa/utils/Bus.kt +++ b/app/src/main/java/audio/funkwhale/ffa/utils/Bus.kt @@ -88,7 +88,7 @@ object CommandBus { var commands = _commands.asSharedFlow() fun send(command: Command) { GlobalScope.launch(IO) { - _commands.emit(command) + _commands.emit(command) } } diff --git a/app/src/main/java/audio/funkwhale/ffa/utils/Extensions.kt b/app/src/main/java/audio/funkwhale/ffa/utils/Extensions.kt index 7fb8123..fbd5e81 100644 --- a/app/src/main/java/audio/funkwhale/ffa/utils/Extensions.kt +++ b/app/src/main/java/audio/funkwhale/ffa/utils/Extensions.kt @@ -10,10 +10,8 @@ import audio.funkwhale.ffa.model.DownloadInfo import audio.funkwhale.ffa.repositories.Repository import com.github.kittinunf.fuel.core.FuelError import com.github.kittinunf.fuel.core.Request -import com.github.kittinunf.fuel.core.ResponseDeserializable import com.google.android.exoplayer2.offline.Download import com.google.gson.Gson -import com.google.gson.reflect.TypeToken import com.squareup.picasso.Picasso import com.squareup.picasso.RequestCreator import kotlinx.coroutines.CompletableDeferred @@ -23,7 +21,6 @@ import kotlinx.coroutines.flow.Flow import kotlinx.coroutines.launch import kotlinx.coroutines.runBlocking import net.openid.appauth.ClientSecretPost -import java.io.Reader import java.text.SimpleDateFormat import java.util.Date import kotlin.coroutines.CoroutineContext diff --git a/app/src/main/java/audio/funkwhale/ffa/views/NowPlayingView.kt b/app/src/main/java/audio/funkwhale/ffa/views/NowPlayingView.kt index d4133b0..7ad7374 100644 --- a/app/src/main/java/audio/funkwhale/ffa/views/NowPlayingView.kt +++ b/app/src/main/java/audio/funkwhale/ffa/views/NowPlayingView.kt @@ -52,7 +52,7 @@ class NowPlayingView : MaterialCardView { viewTreeObserver.addOnGlobalLayoutListener(object : ViewTreeObserver.OnGlobalLayoutListener { override fun onGlobalLayout() { gestureDetectorCallback = OnGestureDetection() - gestureDetector = GestureDetector(context, gestureDetectorCallback) + gestureDetector = GestureDetector(context, gestureDetectorCallback!!) setOnTouchListener { _, motionEvent -> val ret = gestureDetector?.onTouchEvent(motionEvent) ?: false @@ -128,8 +128,8 @@ class NowPlayingView : MaterialCardView { } override fun onFling( - firstMotionEvent: MotionEvent?, - secondMotionEvent: MotionEvent?, + firstMotionEvent: MotionEvent, + secondMotionEvent: MotionEvent, velocityX: Float, velocityY: Float ): Boolean { @@ -195,7 +195,7 @@ class NowPlayingView : MaterialCardView { return true } - override fun onSingleTapUp(e: MotionEvent?): Boolean { + override fun onSingleTapUp(e: MotionEvent): Boolean { layoutParams.let { if (height != minHeight) return true