chore: update dependencies

This commit is contained in:
Suhas Dissanayake
2024-02-18 16:39:33 +05:30
parent f9f5069c2c
commit d25f030fbd
12 changed files with 55 additions and 41 deletions

View File

@@ -5,12 +5,12 @@ plugins {
android {
namespace = "com.bnyro.recorder"
compileSdk = 33
compileSdk = 34
defaultConfig {
applicationId = "com.bnyro.recorder"
minSdk = 21
targetSdk = 33
targetSdk = 34
versionCode = 18
versionName = "7.3"
@@ -42,9 +42,10 @@ android {
}
buildFeatures {
compose = true
buildConfig = true
}
composeOptions {
kotlinCompilerExtensionVersion = "1.4.2"
kotlinCompilerExtensionVersion = "1.5.9"
}
packagingOptions {
resources {
@@ -54,30 +55,37 @@ android {
}
dependencies {
val compose_version: String by rootProject.extra
// Core & runtime
implementation("androidx.core:core-ktx:1.10.1")
implementation("androidx.lifecycle:lifecycle-runtime-ktx:2.6.1")
implementation("androidx.lifecycle:lifecycle-viewmodel-compose:2.6.1")
implementation("androidx.core:core-ktx:1.12.0")
implementation("androidx.lifecycle:lifecycle-runtime-ktx:2.7.0")
implementation("androidx.documentfile:documentfile:1.0.1")
implementation("com.google.android.exoplayer:exoplayer:2.19.0")
val media3Version = "1.2.1"
// For media playback using ExoPlayer
implementation("androidx.media3:media3-exoplayer:$media3Version")
implementation("androidx.media3:media3-ui:$media3Version")
// Compose
implementation("androidx.activity:activity-compose:1.7.2")
implementation("androidx.compose.ui:ui:$compose_version")
implementation("androidx.compose.animation:animation-graphics:$compose_version")
implementation("androidx.compose.ui:ui-tooling-preview:$compose_version")
implementation("androidx.compose.material3:material3:1.1.1")
implementation("androidx.compose.material:material-icons-extended:1.4.3")
implementation(platform("androidx.compose:compose-bom:2024.02.00"))
implementation("androidx.compose.ui:ui")
implementation("androidx.compose.ui:ui-graphics")
implementation("androidx.compose.ui:ui-tooling-preview")
implementation("androidx.compose.material3:material3")
implementation("androidx.compose.animation:animation-graphics")
implementation("androidx.activity:activity-compose:1.8.2")
implementation("androidx.compose.material:material-icons-extended")
//Navigation
implementation("androidx.navigation:navigation-compose:2.6.0")
implementation("androidx.navigation:navigation-compose:2.7.7")
// Testing
testImplementation("junit:junit:4.13.2")
androidTestImplementation("androidx.test.ext:junit:1.1.5")
androidTestImplementation("androidx.test.espresso:espresso-core:3.5.1")
androidTestImplementation("androidx.compose.ui:ui-test-junit4:$compose_version")
debugImplementation("androidx.compose.ui:ui-tooling:$compose_version")
debugImplementation("androidx.compose.ui:ui-test-manifest:$compose_version")
androidTestImplementation(platform("androidx.compose:compose-bom:2024.02.00"))
androidTestImplementation("androidx.compose.ui:ui-test-junit4")
debugImplementation("androidx.compose.ui:ui-tooling")
debugImplementation("androidx.compose.ui:ui-test-manifest")
}

View File

@@ -7,6 +7,7 @@
<uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS" />
<uses-permission android:name="android.permission.FOREGROUND_SERVICE" />
<uses-permission android:name="android.permission.FOREGROUND_SERVICE_MEDIA_PROJECTION" />
<uses-permission android:name="android.permission.POST_NOTIFICATIONS" />
<uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW"/>

View File

@@ -11,6 +11,7 @@ import android.view.MotionEvent
import android.view.WindowManager
import androidx.activity.ComponentActivity
import androidx.annotation.RequiresApi
import androidx.compose.ui.ExperimentalComposeUiApi
import androidx.compose.ui.Modifier
import androidx.compose.ui.input.pointer.motionEventSpy
import androidx.compose.ui.platform.ComposeView
@@ -40,6 +41,8 @@ class CanvasOverlay(context: Context) {
private var initialY = 0
private var initialTouchX = 0f
private var initialTouchY = 0f
@OptIn(ExperimentalComposeUiApi::class)
private val toolbarView = ComposeView(context).apply {
val activity = context as ComponentActivity
setViewTreeLifecycleOwner(activity)

View File

@@ -27,9 +27,9 @@ import androidx.compose.ui.res.stringResource
import androidx.compose.ui.unit.dp
import androidx.documentfile.provider.DocumentFile
import androidx.lifecycle.viewmodel.compose.viewModel
import androidx.media3.common.MediaItem
import androidx.media3.common.Player
import com.bnyro.recorder.ui.models.PlayerModel
import com.google.android.exoplayer2.MediaItem
import com.google.android.exoplayer2.Player
@Composable
fun MiniPlayer(inputFile: DocumentFile, playerModel: PlayerModel = viewModel()) {

View File

@@ -15,9 +15,9 @@ import androidx.compose.runtime.remember
import androidx.compose.runtime.setValue
import androidx.compose.ui.Alignment
import androidx.compose.ui.Modifier
import com.google.android.exoplayer2.ExoPlayer
import com.google.android.exoplayer2.MediaItem
import com.google.android.exoplayer2.Player
import androidx.media3.common.MediaItem
import androidx.media3.common.Player
import androidx.media3.exoplayer.ExoPlayer
import kotlinx.coroutines.delay
import kotlinx.coroutines.isActive
import kotlinx.coroutines.launch

View File

@@ -10,11 +10,11 @@ import androidx.lifecycle.ViewModelProvider.AndroidViewModelFactory.Companion.AP
import androidx.lifecycle.viewModelScope
import androidx.lifecycle.viewmodel.initializer
import androidx.lifecycle.viewmodel.viewModelFactory
import androidx.media3.exoplayer.ExoPlayer
import com.bnyro.recorder.App
import com.bnyro.recorder.enums.SortOrder
import com.bnyro.recorder.obj.RecordingItemData
import com.bnyro.recorder.util.FileRepository
import com.google.android.exoplayer2.ExoPlayer
import kotlinx.coroutines.launch
class PlayerModel(context: Context, private val fileRepository: FileRepository) : ViewModel() {

View File

@@ -13,10 +13,10 @@ import androidx.lifecycle.ViewModelProvider.AndroidViewModelFactory.Companion.AP
import androidx.lifecycle.viewModelScope
import androidx.lifecycle.viewmodel.initializer
import androidx.lifecycle.viewmodel.viewModelFactory
import androidx.media3.exoplayer.ExoPlayer
import com.bnyro.recorder.App
import com.bnyro.recorder.enums.TrimmerState
import com.bnyro.recorder.util.MediaTrimmer
import com.google.android.exoplayer2.ExoPlayer
import kotlinx.coroutines.launch
class TrimmerModel(context: Context) : ViewModel() {

View File

@@ -52,14 +52,14 @@ import androidx.compose.ui.unit.dp
import androidx.compose.ui.viewinterop.AndroidView
import androidx.documentfile.provider.DocumentFile
import androidx.lifecycle.viewmodel.compose.viewModel
import androidx.media3.common.MediaItem
import androidx.media3.common.Player
import androidx.media3.ui.PlayerView
import com.bnyro.recorder.R
import com.bnyro.recorder.enums.TrimmerState
import com.bnyro.recorder.ui.components.PlayerController
import com.bnyro.recorder.ui.components.playPause
import com.bnyro.recorder.ui.models.TrimmerModel
import com.google.android.exoplayer2.MediaItem
import com.google.android.exoplayer2.Player
import com.google.android.exoplayer2.ui.PlayerView
@RequiresApi(Build.VERSION_CODES.O)
@OptIn(ExperimentalMaterial3Api::class, ExperimentalAnimationGraphicsApi::class)

View File

@@ -1,6 +1,7 @@
package com.bnyro.recorder.ui.views
import android.net.Uri
import androidx.annotation.OptIn
import androidx.compose.foundation.layout.fillMaxSize
import androidx.compose.runtime.Composable
import androidx.compose.runtime.DisposableEffect
@@ -8,17 +9,18 @@ import androidx.compose.runtime.remember
import androidx.compose.ui.Modifier
import androidx.compose.ui.platform.LocalContext
import androidx.compose.ui.viewinterop.AndroidView
import com.google.android.exoplayer2.ExoPlayer
import com.google.android.exoplayer2.MediaItem
import com.google.android.exoplayer2.ui.StyledPlayerView
import androidx.media3.common.MediaItem
import androidx.media3.common.util.UnstableApi
import androidx.media3.exoplayer.ExoPlayer
import androidx.media3.ui.PlayerView
@OptIn(UnstableApi::class)
@Composable
fun VideoView(videoUri: Uri) {
val context = LocalContext.current
val exoPlayer = remember(context) {
ExoPlayer.Builder(context)
.setUsePlatformDiagnostics(false)
.build()
.also { exoPlayer ->
val mediaItem = MediaItem.Builder()
@@ -33,7 +35,7 @@ fun VideoView(videoUri: Uri) {
AndroidView(
modifier = Modifier.fillMaxSize(),
factory = {
StyledPlayerView(context).apply {
PlayerView(context).apply {
player = exoPlayer
setShowNextButton(false)
setShowPreviousButton(false)

View File

@@ -1,8 +1,7 @@
buildscript {
val compose_version by extra("1.5.0-beta01")
}// Top-level build file where you can add configuration options common to all sub-projects/modules.
plugins {
id("com.android.application") version "7.4.2" apply false
id("com.android.library") version "7.4.2" apply false
id("org.jetbrains.kotlin.android") version "1.8.10" apply false
id("com.android.application") version "8.2.2" apply false
id("com.android.library") version "8.2.2" apply false
id("org.jetbrains.kotlin.android") version "1.9.22" apply false
}

View File

@@ -20,4 +20,5 @@ kotlin.code.style=official
# Enables namespacing of each library's R class so that its R class includes only the
# resources declared in the library itself and none from the library's dependencies,
# thereby reducing the size of the R class for that library
android.nonTransitiveRClass=true
android.nonTransitiveRClass=true
android.nonFinalResIds=false

View File

@@ -1,6 +1,6 @@
#Mon Feb 20 11:02:55 CET 2023
#Sun Feb 18 16:19:16 IST 2024
distributionBase=GRADLE_USER_HOME
distributionUrl=https\://services.gradle.org/distributions/gradle-7.5-bin.zip
distributionPath=wrapper/dists
zipStorePath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-8.6-bin.zip
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists