From 11e76688d29ae3c127730bc1fc333fc703bb34e8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E4=BA=8E=E4=BF=8A?= <215613905@qq.com> Date: Thu, 10 Apr 2025 16:02:35 +0800 Subject: [PATCH] fix bug --- .../com/github/tvbox/osc/api/ApiConfig.java | 19 ++++++++++--------- .../tvbox/osc/ui/dialog/GridFilterDialog.java | 4 ++++ 2 files changed, 14 insertions(+), 9 deletions(-) diff --git a/app/src/main/java/com/github/tvbox/osc/api/ApiConfig.java b/app/src/main/java/com/github/tvbox/osc/api/ApiConfig.java index 3c7f6bf4..bed5e7ef 100644 --- a/app/src/main/java/com/github/tvbox/osc/api/ApiConfig.java +++ b/app/src/main/java/com/github/tvbox/osc/api/ApiConfig.java @@ -527,15 +527,16 @@ public class ApiConfig { JsonObject livesOBJ = lives_groups.get(live_group_index).getAsJsonObject(); loadLiveApi(livesOBJ); } - myHosts = new HashMap<>(); - if (infoJson.has("hosts")) { - JsonArray hostsArray = infoJson.getAsJsonArray("hosts"); - for (int i = 0; i < hostsArray.size(); i++) { - String entry = hostsArray.get(i).getAsString(); - String[] parts = entry.split("=", 2); // 只分割一次,防止 value 里有 = - if (parts.length == 2) { - myHosts.put(parts[0], parts[1]); - } + } + + myHosts = new HashMap<>(); + if (infoJson.has("hosts")) { + JsonArray hostsArray = infoJson.getAsJsonArray("hosts"); + for (int i = 0; i < hostsArray.size(); i++) { + String entry = hostsArray.get(i).getAsString(); + String[] parts = entry.split("=", 2); // 只分割一次,防止 value 里有 = + if (parts.length == 2) { + myHosts.put(parts[0], parts[1]); } } } diff --git a/app/src/main/java/com/github/tvbox/osc/ui/dialog/GridFilterDialog.java b/app/src/main/java/com/github/tvbox/osc/ui/dialog/GridFilterDialog.java index 30351236..e741f01a 100644 --- a/app/src/main/java/com/github/tvbox/osc/ui/dialog/GridFilterDialog.java +++ b/app/src/main/java/com/github/tvbox/osc/ui/dialog/GridFilterDialog.java @@ -5,6 +5,7 @@ import android.content.Context; import android.content.DialogInterface; import android.content.pm.PackageManager; import android.content.res.Configuration; +import android.os.Build; import android.view.Gravity; import android.view.LayoutInflater; import android.view.View; @@ -40,6 +41,9 @@ public class GridFilterDialog extends BaseDialog { boolean isTv = uiModeManager.getCurrentModeType() == Configuration.UI_MODE_TYPE_TELEVISION || context.getPackageManager().hasSystemFeature(PackageManager.FEATURE_TELEVISION) || !context.getPackageManager().hasSystemFeature(PackageManager.FEATURE_TOUCHSCREEN); + if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP){ + isTv=isTv || context.getPackageManager().hasSystemFeature(PackageManager.FEATURE_LEANBACK); + } if(!isTv){ View rootView = findViewById(R.id.root); rootView.setOnClickListener(new View.OnClickListener() {