[Android] Refactor the useful info gathering

Nicolas Pomepuy git at videolan.org
Thu Jul 10 16:09:45 UTC 2025


vlc-android | branch: master | Nicolas Pomepuy <nicolas at videolabs.io> | Tue Jul  1 08:13:01 2025 +0200| [14c8e5e339509ba23b9949c19c5dab363bdfaddd] | committer: Duncan McNamara

Refactor the useful info gathering

> https://code.videolan.org/videolan/vlc-android/commit/14c8e5e339509ba23b9949c19c5dab363bdfaddd
---

 .../vlc/remoteaccessserver/RemoteAccessRouting.kt  | 31 +--------------------
 .../src/org/videolan/vlc/DebugLogService.kt        | 32 ++--------------------
 .../org/videolan/vlc/gui/helpers/FeedbackUtil.kt   |  3 +-
 3 files changed, 5 insertions(+), 61 deletions(-)

diff --git a/application/remote-access-server/src/main/java/org/videolan/vlc/remoteaccessserver/RemoteAccessRouting.kt b/application/remote-access-server/src/main/java/org/videolan/vlc/remoteaccessserver/RemoteAccessRouting.kt
index d989c3e9b0..92cf6d6107 100644
--- a/application/remote-access-server/src/main/java/org/videolan/vlc/remoteaccessserver/RemoteAccessRouting.kt
+++ b/application/remote-access-server/src/main/java/org/videolan/vlc/remoteaccessserver/RemoteAccessRouting.kt
@@ -414,36 +414,7 @@ fun Route.setupRouting(appContext: Context, scope: CoroutineScope) {
             output = OutputStreamWriter(fos)
             bw = BufferedWriter(output)
             synchronized(this) {
-                bw.write("____________________________\r\n")
-                bw.write("Useful info\r\n")
-                bw.write("____________________________\r\n")
-                bw.write("App version: ${BuildConfig.VLC_VERSION_CODE} / ${BuildConfig.VLC_VERSION_NAME}\r\n")
-                bw.write("libvlc: ${BuildConfig.LIBVLC_VERSION}\r\n")
-                bw.write("libvlc revision: ${appContext.getString(org.videolan.vlc.R.string.build_libvlc_revision)}\r\n")
-                bw.write("vlc revision: ${appContext.getString(org.videolan.vlc.R.string.build_vlc_revision)}\r\n")
-                bw.write("medialibrary: ${BuildConfig.ML_VERSION}\r\n")
-                bw.write("Android version: ${Build.VERSION.SDK_INT}\r\n")
-                bw.write("Device Model: ${Build.MANUFACTURER} - ${Build.MODEL}\r\n")
-                bw.write("____________________________\r\n")
-                bw.write("Permissions\r\n")
-                bw.write("____________________________\r\n")
-                bw.write("Can read: ${Permissions.canReadStorage(appContext)}\r\n")
-                bw.write("Can write: ${Permissions.canWriteStorage(appContext)}\r\n")
-                bw.write("Storage ALL access: ${Permissions.hasAllAccess(appContext)}\r\n")
-                bw.write("Notifications: ${Permissions.canSendNotifications(appContext)}\r\n")
-                bw.write("PiP Allowed: ${Permissions.isPiPAllowed(appContext)}\r\n")
-                try {
-                    bw.write("____________________________\r\n")
-                    bw.write("Changed settings:\r\n")
-                    bw.write("____________________________\r\n")
-                    bw.write("${PreferenceParser.getChangedPrefsString(appContext)}\r\n")
-                } catch (e: Exception) {
-                    bw.write("Cannot retrieve changed settings\r\n")
-                    bw.write(Log.getStackTraceString(e))
-                }
-                bw.write("____________________________\r\n")
-                bw.write("vlc options: ${VLCOptions.libOptions.joinToString(" ")}\r\n")
-                bw.write("____________________________\r\n")
+                bw.write(FeedbackUtil.generateUsefulInfo(appContext))
                 for (line in logs.split(("*"))) {
                     bw.write(line)
                     bw.newLine()
diff --git a/application/vlc-android/src/org/videolan/vlc/DebugLogService.kt b/application/vlc-android/src/org/videolan/vlc/DebugLogService.kt
index ba19510254..187df8d0cc 100644
--- a/application/vlc-android/src/org/videolan/vlc/DebugLogService.kt
+++ b/application/vlc-android/src/org/videolan/vlc/DebugLogService.kt
@@ -48,6 +48,7 @@ import org.videolan.tools.CloseableUtils
 import org.videolan.tools.Logcat
 import org.videolan.tools.getContextWithLocale
 import org.videolan.vlc.gui.DebugLogActivity
+import org.videolan.vlc.gui.helpers.FeedbackUtil
 import org.videolan.vlc.gui.helpers.NotificationHelper
 import org.videolan.vlc.gui.preferences.search.PreferenceParser
 import org.videolan.vlc.util.Permissions
@@ -192,36 +193,7 @@ class DebugLogService : Service(), Logcat.Callback, Runnable {
             output = OutputStreamWriter(fos)
             bw = BufferedWriter(output)
             synchronized(this) {
-                bw.write("____________________________\r\n")
-                bw.write("Useful info\r\n")
-                bw.write("____________________________\r\n")
-                bw.write("App version: ${BuildConfig.VLC_VERSION_CODE} / ${BuildConfig.VLC_VERSION_NAME}\r\n")
-                bw.write("libvlc: ${BuildConfig.LIBVLC_VERSION}\r\n")
-                bw.write("libvlc revision: ${getString(R.string.build_libvlc_revision)}\r\n")
-                bw.write("vlc revision: ${getString(R.string.build_vlc_revision)}\r\n")
-                bw.write("medialibrary: ${BuildConfig.ML_VERSION}\r\n")
-                bw.write("Android version: ${Build.VERSION.SDK_INT}\r\n")
-                bw.write("Device Model: ${Build.MANUFACTURER} - ${Build.MODEL}\r\n")
-                bw.write("____________________________\r\n")
-                bw.write("Permissions\r\n")
-                bw.write("____________________________\r\n")
-                bw.write("Can read: ${Permissions.canReadStorage(this)}\r\n")
-                bw.write("Can write: ${Permissions.canWriteStorage(this)}\r\n")
-                bw.write("Storage ALL access: ${Permissions.hasAllAccess(this)}\r\n")
-                bw.write("Notifications: ${Permissions.canSendNotifications(this)}\r\n")
-                bw.write("PiP Allowed: ${Permissions.isPiPAllowed(this)}\r\n")
-                try {
-                    bw.write("____________________________\r\n")
-                    bw.write("Changed settings:\r\n")
-                    bw.write("____________________________\r\n")
-                    bw.write("${PreferenceParser.getChangedPrefsString(this)}\r\n")
-                } catch (e: Exception) {
-                    bw.write("Cannot retrieve changed settings\r\n")
-                    bw.write(Log.getStackTraceString(e))
-                }
-                bw.write("____________________________\r\n")
-                bw.write("vlc options: ${VLCOptions.libOptions.joinToString(" ")}\r\n")
-                bw.write("____________________________\r\n")
+                bw.write(FeedbackUtil.generateUsefulInfo(this))
                 for (line in logList) {
                     bw.write(line)
                     bw.newLine()
diff --git a/application/vlc-android/src/org/videolan/vlc/gui/helpers/FeedbackUtil.kt b/application/vlc-android/src/org/videolan/vlc/gui/helpers/FeedbackUtil.kt
index eb685e990a..c2c75087f1 100644
--- a/application/vlc-android/src/org/videolan/vlc/gui/helpers/FeedbackUtil.kt
+++ b/application/vlc-android/src/org/videolan/vlc/gui/helpers/FeedbackUtil.kt
@@ -42,6 +42,7 @@ import org.videolan.vlc.R
 import org.videolan.vlc.gui.preferences.search.PreferenceParser
 import org.videolan.vlc.util.FileUtils
 import org.videolan.vlc.util.Permissions
+import java.io.BufferedWriter
 import java.io.File
 
 object FeedbackUtil {
@@ -123,7 +124,7 @@ object FeedbackUtil {
         append("vlc revision: ${context.getString(R.string.build_vlc_revision)}\r\n")
         append("medialibrary: ${BuildConfig.ML_VERSION}\r\n")
         append("Android version: ${Build.VERSION.SDK_INT}\r\n")
-        append("System name: ${Build.DISPLAY}<br/>")
+        append("System name: ${Build.DISPLAY}\r\n")
         append("Device Model: ${Build.MANUFACTURER} - ${Build.MODEL}\r\n")
         append("____________________________\r\n")
         append("Permissions\r\n")



More information about the Android mailing list