From e26ccfb128937eb46748848cedd61dd4d3388ac3 Mon Sep 17 00:00:00 2001 From: FongMi Date: Fri, 27 Mar 2026 00:47:23 +0800 Subject: [PATCH] Clean code --- .../fongmi/android/tv/player/ParseJob.java | 8 ++++---- .../com/fongmi/android/tv/player/Players.java | 17 ++++++++-------- .../com/fongmi/android/tv/player/Source.java | 20 +++++++++---------- .../android/tv/player/exo/CacheManager.java | 8 ++++---- .../fongmi/android/tv/player/exo/ExoUtil.java | 2 +- .../android/tv/player/exo/TrackUtil.java | 6 +++--- .../android/tv/player/extractor/Thunder.java | 8 ++++---- 7 files changed, 34 insertions(+), 35 deletions(-) diff --git a/app/src/main/java/com/fongmi/android/tv/player/ParseJob.java b/app/src/main/java/com/fongmi/android/tv/player/ParseJob.java index 97362a4d9..fe5fdc1d9 100644 --- a/app/src/main/java/com/fongmi/android/tv/player/ParseJob.java +++ b/app/src/main/java/com/fongmi/android/tv/player/ParseJob.java @@ -42,10 +42,6 @@ public class ParseJob implements ParseCallback { private ParseCallback callback; private Parse parse; - public static ParseJob create(ParseCallback callback) { - return new ParseJob(callback); - } - public ParseJob(ParseCallback callback) { this.executor = Executors.newSingleThreadExecutor(); this.infinite = Executors.newCachedThreadPool(); @@ -53,6 +49,10 @@ public class ParseJob implements ParseCallback { this.callback = callback; } + public static ParseJob create(ParseCallback callback) { + return new ParseJob(callback); + } + public ParseJob start(Result result, boolean useParse) { setParse(result, useParse); execute(result); diff --git a/app/src/main/java/com/fongmi/android/tv/player/Players.java b/app/src/main/java/com/fongmi/android/tv/player/Players.java index 958125da8..5afed6005 100644 --- a/app/src/main/java/com/fongmi/android/tv/player/Players.java +++ b/app/src/main/java/com/fongmi/android/tv/player/Players.java @@ -81,9 +81,8 @@ import master.flame.danmaku.ui.widget.DanmakuView; public class Players implements Player.Listener, ParseCallback { private static final String TAG = Players.class.getSimpleName(); - - public static final int SOFT = 0; - public static final int HARD = 1; + private static final int SOFT = 0; + private static final int HARD = 1; private final ErrorMsgProvider provider; private final AudioManager audioManager; @@ -111,12 +110,6 @@ public class Players implements Player.Listener, ParseCallback { private int decode; private int retry; - public static Players create(Activity activity) { - Players player = new Players(activity); - Server.get().setPlayer(player); - return player; - } - private Players(Activity activity) { decode = HARD; builder = new StringBuilder(); @@ -127,6 +120,12 @@ public class Players implements Player.Listener, ParseCallback { createSession(activity); } + public static Players create(Activity activity) { + Players player = new Players(activity); + Server.get().setPlayer(player); + return player; + } + private void createSession(Activity activity) { session = new MediaSessionCompat(activity, "TV"); session.setCallback(SessionCallback.create(this)); diff --git a/app/src/main/java/com/fongmi/android/tv/player/Source.java b/app/src/main/java/com/fongmi/android/tv/player/Source.java index 8daab8081..5c406da40 100644 --- a/app/src/main/java/com/fongmi/android/tv/player/Source.java +++ b/app/src/main/java/com/fongmi/android/tv/player/Source.java @@ -3,7 +3,6 @@ package com.fongmi.android.tv.player; import android.net.Uri; import com.fongmi.android.tv.bean.Episode; -import com.fongmi.android.tv.utils.Task; import com.fongmi.android.tv.bean.Flag; import com.fongmi.android.tv.bean.Result; import com.fongmi.android.tv.bean.Vod; @@ -15,12 +14,13 @@ import com.fongmi.android.tv.player.extractor.TVBus; import com.fongmi.android.tv.player.extractor.Thunder; import com.fongmi.android.tv.player.extractor.Video; import com.fongmi.android.tv.player.extractor.Youtube; +import com.fongmi.android.tv.utils.Task; import java.util.ArrayList; import java.util.Iterator; import java.util.List; -import java.util.concurrent.CancellationException; import java.util.concurrent.Callable; +import java.util.concurrent.CancellationException; import java.util.concurrent.ExecutorService; import java.util.concurrent.Executors; import java.util.concurrent.Future; @@ -30,14 +30,6 @@ public class Source { private final List extractors; - private static class Loader { - static volatile Source INSTANCE = new Source(); - } - - public static Source get() { - return Loader.INSTANCE; - } - public Source() { extractors = new ArrayList<>(); extractors.add(new Force()); @@ -50,6 +42,10 @@ public class Source { extractors.add(new Youtube()); } + public static Source get() { + return Loader.INSTANCE; + } + private Extractor getExtractor(Uri uri) { return extractors.stream().filter(extractor -> extractor.match(uri)).findFirst().orElse(null); } @@ -110,4 +106,8 @@ public class Source { void exit(); } + + private static class Loader { + static volatile Source INSTANCE = new Source(); + } } diff --git a/app/src/main/java/com/fongmi/android/tv/player/exo/CacheManager.java b/app/src/main/java/com/fongmi/android/tv/player/exo/CacheManager.java index 985e69c4d..98a5202b4 100644 --- a/app/src/main/java/com/fongmi/android/tv/player/exo/CacheManager.java +++ b/app/src/main/java/com/fongmi/android/tv/player/exo/CacheManager.java @@ -12,10 +12,6 @@ public class CacheManager { private SimpleCache cache; - private static class Loader { - static volatile CacheManager INSTANCE = new CacheManager(); - } - public static CacheManager get() { return Loader.INSTANCE; } @@ -34,5 +30,9 @@ public class CacheManager { cache.release(); cache = null; } + + private static class Loader { + static volatile CacheManager INSTANCE = new CacheManager(); + } } diff --git a/app/src/main/java/com/fongmi/android/tv/player/exo/ExoUtil.java b/app/src/main/java/com/fongmi/android/tv/player/exo/ExoUtil.java index 09c4b96b1..759c50ae8 100644 --- a/app/src/main/java/com/fongmi/android/tv/player/exo/ExoUtil.java +++ b/app/src/main/java/com/fongmi/android/tv/player/exo/ExoUtil.java @@ -108,7 +108,7 @@ public class ExoUtil { return new MediaItem.RequestMetadata.Builder().setMediaUri(uri).setExtras(extras).build(); } - private static List getSubtitleConfigs (List subs) { + private static List getSubtitleConfigs(List subs) { List configs = new ArrayList<>(); if (subs != null) for (Sub sub : subs) configs.add(sub.config()); return configs; diff --git a/app/src/main/java/com/fongmi/android/tv/player/exo/TrackUtil.java b/app/src/main/java/com/fongmi/android/tv/player/exo/TrackUtil.java index 227a89e79..e71ac0734 100644 --- a/app/src/main/java/com/fongmi/android/tv/player/exo/TrackUtil.java +++ b/app/src/main/java/com/fongmi/android/tv/player/exo/TrackUtil.java @@ -15,9 +15,6 @@ import java.util.Map; public class TrackUtil { - private record TrackInfo(Tracks.Group trackGroup, int trackIndex) { - } - public static int count(Tracks tracks, int type) { return tracks.getGroups().stream().filter(trackGroup -> trackGroup.getType() == type).mapToInt(trackGroup -> trackGroup.length).sum(); } @@ -58,4 +55,7 @@ public class TrackUtil { }); player.setTrackSelectionParameters(builder.build()); } + + private record TrackInfo(Tracks.Group trackGroup, int trackIndex) { + } } diff --git a/app/src/main/java/com/fongmi/android/tv/player/extractor/Thunder.java b/app/src/main/java/com/fongmi/android/tv/player/extractor/Thunder.java index 780c49f2c..a58505f26 100644 --- a/app/src/main/java/com/fongmi/android/tv/player/extractor/Thunder.java +++ b/app/src/main/java/com/fongmi/android/tv/player/extractor/Thunder.java @@ -83,6 +83,10 @@ public class Thunder implements Source.Extractor { return new Parser(url); } + private static boolean isTorrent(String url) { + return !url.startsWith("magnet") && url.split(";")[0].toLowerCase().endsWith(".torrent"); + } + private Episode create(GetTaskId taskId) { return Episode.create(taskId.getFileName(), taskId.getRealUrl()); } @@ -91,10 +95,6 @@ public class Thunder implements Source.Extractor { return Episode.create(info.getFileName(), info.getSize(), info.getPlayUrl()); } - private static boolean isTorrent(String url) { - return !url.startsWith("magnet") && url.split(";")[0].toLowerCase().endsWith(".torrent"); - } - @Override public List call() { boolean torrent = isTorrent(url);