diff --git a/app/build.gradle b/app/build.gradle
index fa04e160..821a4f60 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -5,7 +5,7 @@ plugins {
id 'kotlin-kapt'
id 'androidx.navigation.safeargs.kotlin'
id 'dagger.hilt.android.plugin'
- id 'com.google.android.gms.oss-licenses-plugin'
+ id "com.mikepenz.aboutlibraries.plugin"
}
android {
@@ -99,8 +99,9 @@ dependencies {
def timber_version = "5.0.0"
implementation "com.jakewharton.timber:timber:$timber_version"
- def oss_licenses_version = "17.0.0"
- implementation "com.google.android.gms:play-services-oss-licenses:$oss_licenses_version"
+ def about_libraries_version = "8.9.1"
+ implementation "com.mikepenz:aboutlibraries-core:$about_libraries_version"
+ implementation "com.mikepenz:aboutlibraries:$about_libraries_version"
// Testing
testImplementation 'junit:junit:4.13.2'
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index 75b71ba4..8afba6f1 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -27,11 +27,6 @@
-
-
-
diff --git a/app/src/main/java/dev/jdtech/jellyfin/MainActivity.kt b/app/src/main/java/dev/jdtech/jellyfin/MainActivity.kt
index 1d74d115..ca3969bd 100644
--- a/app/src/main/java/dev/jdtech/jellyfin/MainActivity.kt
+++ b/app/src/main/java/dev/jdtech/jellyfin/MainActivity.kt
@@ -51,9 +51,10 @@ class MainActivity : AppCompatActivity() {
navController.addOnDestinationChangedListener { _, destination, _ ->
binding.navView.visibility = when (destination.id) {
- R.id.settingsFragment, R.id.serverSelectFragment, R.id.addServerFragment, R.id.loginFragment -> View.GONE
+ R.id.settingsFragment, R.id.serverSelectFragment, R.id.addServerFragment, R.id.loginFragment, R.id.about_libraries_dest -> View.GONE
else -> View.VISIBLE
}
+ if (destination.id == R.id.about_libraries_dest) binding.mainToolbar.title = getString(R.string.app_info)
}
viewModel.navigateToAddServer.observe(this, {
diff --git a/app/src/main/java/dev/jdtech/jellyfin/fragments/SettingsFragment.kt b/app/src/main/java/dev/jdtech/jellyfin/fragments/SettingsFragment.kt
index 9fd43144..79be8b10 100644
--- a/app/src/main/java/dev/jdtech/jellyfin/fragments/SettingsFragment.kt
+++ b/app/src/main/java/dev/jdtech/jellyfin/fragments/SettingsFragment.kt
@@ -8,7 +8,6 @@ import androidx.navigation.fragment.findNavController
import androidx.preference.ListPreference
import androidx.preference.Preference
import androidx.preference.PreferenceFragmentCompat
-import com.google.android.gms.oss.licenses.OssLicensesMenuActivity
import dev.jdtech.jellyfin.R
class SettingsFragment : PreferenceFragmentCompat() {
@@ -38,8 +37,8 @@ class SettingsFragment : PreferenceFragmentCompat() {
true
}
- findPreference("ossLicenses")?.setOnPreferenceClickListener {
- startActivity(Intent(requireContext(), OssLicensesMenuActivity::class.java))
+ findPreference("appInfo")?.setOnPreferenceClickListener {
+ findNavController().navigate(SettingsFragmentDirections.actionSettingsFragmentToAboutLibraries())
true
}
}
diff --git a/app/src/main/java/dev/jdtech/jellyfin/utils/VersionPreference.kt b/app/src/main/java/dev/jdtech/jellyfin/utils/VersionPreference.kt
deleted file mode 100644
index 7ce9e9fc..00000000
--- a/app/src/main/java/dev/jdtech/jellyfin/utils/VersionPreference.kt
+++ /dev/null
@@ -1,14 +0,0 @@
-package dev.jdtech.jellyfin.utils
-
-import android.content.Context
-import android.util.AttributeSet
-import androidx.preference.Preference
-
-class VersionPreference(context: Context, attrs: AttributeSet): Preference(context, attrs) {
- init {
- val packageManager = context.packageManager
- val packageInfo = packageManager.getPackageInfo(context.packageName, 0)
- val versionName = packageInfo.versionName
- summary = versionName
- }
-}
\ No newline at end of file
diff --git a/app/src/main/res/navigation/main_navigation.xml b/app/src/main/res/navigation/main_navigation.xml
index 3f64d1d2..2807ccd7 100644
--- a/app/src/main/res/navigation/main_navigation.xml
+++ b/app/src/main/res/navigation/main_navigation.xml
@@ -56,10 +56,13 @@
+ android:label="@string/title_settings">
+
+ tools:layout="@layout/fragment_search_result">
@@ -222,7 +225,7 @@
android:id="@+id/initializingFragment"
android:name="dev.jdtech.jellyfin.fragments.InitializingFragment"
android:label="@string/initializing"
- tools:layout="@layout/fragment_initializing" >
+ tools:layout="@layout/fragment_initializing">
+
+
+
\ No newline at end of file
diff --git a/app/src/main/res/values/about_libraries.xml b/app/src/main/res/values/about_libraries.xml
new file mode 100644
index 00000000..c34ab3d8
--- /dev/null
+++ b/app/src/main/res/values/about_libraries.xml
@@ -0,0 +1,8 @@
+
+
+ true
+ true
+ @string/app_name
+ @string/app_description
+ true
+
\ No newline at end of file
diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml
index c1c8aca1..d6fb7adc 100644
--- a/app/src/main/res/values/strings.xml
+++ b/app/src/main/res/values/strings.xml
@@ -1,5 +1,6 @@
Findroid
+ Third-party native Jellyfin app
Jellyfin banner
Add server
Login
@@ -14,7 +15,6 @@
Are you sure you want to remove the server %1$s
Remove
Cancel
- MainActivity
Home
My media
Favorites
@@ -50,8 +50,7 @@
Appearance
Theme
Error preparing player items
- Version
- Open source licenses
About
Privacy policy
+ App info
\ No newline at end of file
diff --git a/app/src/main/res/xml/fragment_settings.xml b/app/src/main/res/xml/fragment_settings.xml
index dfa140bc..669c3e45 100644
--- a/app/src/main/res/xml/fragment_settings.xml
+++ b/app/src/main/res/xml/fragment_settings.xml
@@ -46,10 +46,8 @@
app:title="@string/privacy_policy" />
-
-
+ app:key="appInfo"
+ app:title="@string/app_info" />
diff --git a/build.gradle b/build.gradle
index 29d39b5e..3c49a726 100644
--- a/build.gradle
+++ b/build.gradle
@@ -4,6 +4,9 @@ buildscript {
repositories {
google()
mavenCentral()
+ maven {
+ url "https://plugins.gradle.org/m2/"
+ }
}
dependencies {
classpath 'com.android.tools.build:gradle:7.0.0'
@@ -17,8 +20,8 @@ buildscript {
def hilt_version = "2.38.1"
classpath "com.google.dagger:hilt-android-gradle-plugin:$hilt_version"
- def oss_licenses_version = "0.10.4"
- classpath "com.google.android.gms:oss-licenses-plugin:$oss_licenses_version"
+ def about_libraries_version = "8.9.1"
+ classpath "com.mikepenz.aboutlibraries.plugin:aboutlibraries-plugin:$about_libraries_version"
}
}