fongmi
jhengazuki 1 month ago
parent cfd01be34f
commit 79fdf07834
  1. 2
      app/src/main/java/com/fongmi/android/tv/api/config/LiveConfig.java
  2. 4
      app/src/main/java/com/fongmi/android/tv/api/config/VodConfig.java
  3. 10
      app/src/mobile/java/com/fongmi/android/tv/utils/ScanTask.java

@ -183,7 +183,7 @@ public class LiveConfig {
private void initLive(JsonObject object) {
String spider = Json.safeString(object, "spider");
BaseLoader.get().parseJar(spider, false);
setLives(Json.safeListElement(object, "lives").stream().map(element -> Live.objectFrom(element, spider)).distinct().toList());
setLives(Json.safeListElement(object, "lives").stream().map(element -> Live.objectFrom(element, spider)).distinct().collect(Collectors.toCollection(ArrayList::new)));
Map<String, Live> items = Live.findAll().stream().collect(Collectors.toMap(Live::getName, Function.identity()));
for (Live live : getLives()) {
if (live.getName().equals(config.getHome())) setHome(live, true);

@ -174,7 +174,7 @@ public class VodConfig {
private void initSite(JsonObject object) {
String spider = Json.safeString(object, "spider");
BaseLoader.get().parseJar(spider, true);
setSites(Json.safeListElement(object, "sites").stream().map(element -> Site.objectFrom(element, spider)).distinct().toList());
setSites(Json.safeListElement(object, "sites").stream().map(element -> Site.objectFrom(element, spider)).distinct().collect(Collectors.toCollection(ArrayList::new)));
Map<String, Site> items = Site.findAll().stream().collect(Collectors.toMap(Site::getKey, Function.identity()));
for (Site site : getSites()) {
if (site.getKey().equals(config.getHome())) setHome(site, false);
@ -184,7 +184,7 @@ public class VodConfig {
}
private void initParse(JsonObject object) {
setParses(Json.safeListElement(object, "parses").stream().map(Parse::objectFrom).distinct().toList());
setParses(Json.safeListElement(object, "parses").stream().map(Parse::objectFrom).distinct().collect(Collectors.toCollection(ArrayList::new)));
for (Parse parse : getParses()) {
if (parse.getName().equals(config.getParse()) && parse.getType() > 1) {
setParse(parse, false);

@ -6,10 +6,10 @@ import com.fongmi.android.tv.server.Server;
import com.github.catvod.net.OkHttp;
import java.util.ArrayList;
import java.util.HashSet;
import java.util.List;
import java.util.Set;
import java.util.concurrent.Future;
import java.util.stream.Collectors;
import java.util.stream.IntStream;
import okhttp3.OkHttpClient;
import okhttp3.Response;
@ -46,15 +46,13 @@ public class ScanTask {
}
private List<String> getUrl() {
Set<String> urls = new HashSet<>();
String local = Server.get().getAddress();
String base = local.substring(0, local.lastIndexOf(".") + 1);
for (int i = 1; i < 256; i++) urls.add(base + i + ":9978");
return new ArrayList<>(urls);
return IntStream.range(1, 256).mapToObj(i -> base + i + ":9978").collect(Collectors.toList());
}
private void findDevice(String url) {
if (url.contains(Server.get().getAddress())) return;
if (url.equals(Server.get().getAddress())) return;
try (Response res = OkHttp.newCall(client, url.concat("/device"), "scan").execute()) {
Device device = Device.objectFrom(res.body().string());
if (device != null) App.post(() -> {

Loading…
Cancel
Save