diff --git a/app/build.gradle.kts b/app/build.gradle.kts index 2c8593e..cb268db 100644 --- a/app/build.gradle.kts +++ b/app/build.gradle.kts @@ -13,6 +13,7 @@ android { keyPassword = "111111" keyAlias = "music" } + } namespace = "com.ztftrue.music" compileSdk = 34 @@ -21,8 +22,8 @@ android { applicationId = "com.ztftrue.music" minSdk = 30 targetSdk = 34 - versionCode = 31 - versionName = "0.1.31" + versionCode = 32 + versionName = "0.1.32" testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner" vectorDrawables { @@ -35,9 +36,9 @@ android { } dependenciesInfo { // Disables dependency metadata when building APKs. - includeInApk = false + includeInApk = true // Disables dependency metadata when building Android App Bundles. - includeInBundle = false + includeInBundle = true } buildTypes { release { @@ -64,14 +65,16 @@ android { } } } + signingConfig = signingConfigs.getByName("debug") + } getByName("debug") { - isMinifyEnabled = false - isShrinkResources = false -// proguardFiles( -// getDefaultProguardFile("proguard-android-optimize.txt"), -// "proguard-rules.pro" -// ) + isMinifyEnabled = true + isShrinkResources = true + proguardFiles( + getDefaultProguardFile("proguard-android-optimize.txt"), + "proguard-rules.pro" + ) signingConfig = signingConfigs.getByName("debug") } } @@ -100,11 +103,11 @@ android { dependencies { implementation("androidx.core:core-ktx:1.13.1") - implementation("androidx.lifecycle:lifecycle-runtime-ktx:2.8.5") + implementation("androidx.lifecycle:lifecycle-runtime-ktx:2.8.6") implementation("org.jetbrains.kotlinx:kotlinx-coroutines-android:1.7.3") - implementation("androidx.lifecycle:lifecycle-viewmodel-compose:2.8.5") + implementation("androidx.lifecycle:lifecycle-viewmodel-compose:2.8.6") implementation("androidx.activity:activity-compose:1.9.2") - implementation("androidx.navigation:navigation-compose:2.8.0") + implementation("androidx.navigation:navigation-compose:2.8.1") implementation("androidx.media3:media3-exoplayer:1.4.1") implementation ("androidx.media:media:1.7.0") @@ -123,7 +126,7 @@ dependencies { testImplementation("junit:junit:4.13.2") androidTestImplementation("androidx.test.ext:junit:1.2.1") androidTestImplementation("androidx.test.espresso:espresso-core:3.6.1") - androidTestImplementation(platform("androidx.compose:compose-bom:2024.09.01")) + androidTestImplementation(platform("androidx.compose:compose-bom:2024.09.02")) androidTestImplementation("androidx.compose.ui:ui-test-junit4") debugImplementation("androidx.compose.ui:ui-tooling") debugImplementation("androidx.compose.ui:ui-test-manifest") @@ -143,9 +146,9 @@ dependencies { // implementation("net.jthink:jaudiotagger:3.0.1") implementation("androidx.core:core-ktx:1.13.1") - implementation("androidx.collection:collection-ktx:1.4.3") + implementation("androidx.collection:collection-ktx:1.4.4") implementation("androidx.fragment:fragment-ktx:1.8.3") - implementation("androidx.lifecycle:lifecycle-runtime-ktx:2.8.5") + implementation("androidx.lifecycle:lifecycle-runtime-ktx:2.8.6") implementation("androidx.palette:palette-ktx:1.0.0") diff --git a/app/src/main/java/com/ztftrue/music/MainActivity.kt b/app/src/main/java/com/ztftrue/music/MainActivity.kt index 6ee0f8b..d0f9b3a 100644 --- a/app/src/main/java/com/ztftrue/music/MainActivity.kt +++ b/app/src/main/java/com/ztftrue/music/MainActivity.kt @@ -313,10 +313,12 @@ class MainActivity : ComponentActivity() { musicViewModel.getDb(this@MainActivity).StorageFolderDao().insert( StorageFolder(null, treeUri.toString()) ) - musicViewModel.dealLyrics( - this@MainActivity, - musicViewModel.currentPlay.value!! - ) + val c = musicViewModel.currentPlay.value + if (c != null) + musicViewModel.dealLyrics( + this@MainActivity, + c + ) } } diff --git a/app/src/main/java/com/ztftrue/music/play/PlayUtils.kt b/app/src/main/java/com/ztftrue/music/play/PlayUtils.kt index 75a30e1..d6970cd 100644 --- a/app/src/main/java/com/ztftrue/music/play/PlayUtils.kt +++ b/app/src/main/java/com/ztftrue/music/play/PlayUtils.kt @@ -258,13 +258,13 @@ object PlayUtils { val i = getItemInQueueIndex(musicQueue, id) val bundle = Bundle() if (i > -1) { - musicQueue.removeAt(i) - changePriorityTableId(musicQueue, musicQueue[i], db) + val musicItem = musicQueue.removeAt(i) + changePriorityTableId(musicQueue, musicItem, db) CoroutineScope(Dispatchers.Main).launch { exoPlayer.removeMediaItem(i) } - bundle.putInt("playIndex", exoPlayer.currentMediaItemIndex) } + bundle.putInt("playIndex", exoPlayer.currentMediaItemIndex) bundle.putParcelableArrayList("songsList", ArrayList(tracksLinkedHashMap.values)) bundle.putLong("id", id) bundle.putParcelableArrayList("queue", musicQueue) diff --git a/app/src/main/java/com/ztftrue/music/ui/other/SettingsPage.kt b/app/src/main/java/com/ztftrue/music/ui/other/SettingsPage.kt index cdccbc5..52657b3 100644 --- a/app/src/main/java/com/ztftrue/music/ui/other/SettingsPage.kt +++ b/app/src/main/java/com/ztftrue/music/ui/other/SettingsPage.kt @@ -819,11 +819,12 @@ fun ManageTabDialog(musicViewModel: MusicViewModel, onDismiss: () -> Unit) { } fun onConfirmation() { musicViewModel.mainTabList.clear() - if (mainTabList.size == 0) { + if(mainTabList.find { it.isShow }==null){ Toast.makeText(context, "Must has at least one tab", Toast.LENGTH_SHORT).show() return } - mainTabList.forEach { + mainTabList.forEachIndexed { index, it -> + it.priority=index if (it.isShow) { musicViewModel.mainTabList.add(it) } @@ -888,7 +889,6 @@ fun ManageTabDialog(musicViewModel: MusicViewModel, onDismiss: () -> Unit) { contentDescription = "Up tab priority" }, onClick = { - item.priority = it - 1 mainTabList.remove(item) mainTabList.add(it - 1, item) }) { @@ -925,7 +925,6 @@ fun ManageTabDialog(musicViewModel: MusicViewModel, onDismiss: () -> Unit) { contentDescription = "Down tab priority" }, onClick = { - item.priority = it + 1 mainTabList.remove(item) mainTabList.add(it + 1, item) }) {