From 5fed4fd1c62b246b6f424ddcc7fec7894b1ec434 Mon Sep 17 00:00:00 2001 From: FongMi Date: Wed, 19 Jul 2023 23:21:26 +0800 Subject: [PATCH] [mobile] prevent vod name is empty --- app/src/main/java/com/fongmi/android/tv/bean/Vod.java | 10 ++++++++-- .../fongmi/android/tv/ui/activity/DetailActivity.java | 11 ++++++----- 2 files changed, 14 insertions(+), 7 deletions(-) diff --git a/app/src/main/java/com/fongmi/android/tv/bean/Vod.java b/app/src/main/java/com/fongmi/android/tv/bean/Vod.java index d030f2aa9..c18d91859 100644 --- a/app/src/main/java/com/fongmi/android/tv/bean/Vod.java +++ b/app/src/main/java/com/fongmi/android/tv/bean/Vod.java @@ -84,7 +84,8 @@ public class Vod { private Site site; public static List arrayFrom(String str) { - Type listType = new TypeToken>() {}.getType(); + Type listType = new TypeToken>() { + }.getType(); List items = new Gson().fromJson(str, listType); return items == null ? Collections.emptyList() : items; } @@ -193,6 +194,10 @@ public class Vod { return getVodTag().equals("folder"); } + public String getVodName(String name) { + return getVodName().isEmpty() ? name : getVodName(); + } + public void trans() { if (Trans.pass()) return; this.vodName = Trans.s2t(vodName); @@ -345,7 +350,8 @@ public class Vod { } public static List arrayFrom(String str) { - Type listType = new TypeToken>() {}.getType(); + Type listType = new TypeToken>() { + }.getType(); List items = new Gson().fromJson(str, listType); return items == null ? Collections.emptyList() : items; } diff --git a/app/src/mobile/java/com/fongmi/android/tv/ui/activity/DetailActivity.java b/app/src/mobile/java/com/fongmi/android/tv/ui/activity/DetailActivity.java index 394868eb6..48b8f5418 100644 --- a/app/src/mobile/java/com/fongmi/android/tv/ui/activity/DetailActivity.java +++ b/app/src/mobile/java/com/fongmi/android/tv/ui/activity/DetailActivity.java @@ -392,8 +392,9 @@ public class DetailActivity extends BaseActivity implements Clock.Callback, Cust } else if (getName().isEmpty()) { showEmpty(); } else { - checkSearch(false); + mBinding.name.setText(getName()); App.post(mR4, 10000); + checkSearch(false); } } @@ -407,7 +408,7 @@ public class DetailActivity extends BaseActivity implements Clock.Callback, Cust private void setDetail(Vod item) { mBinding.progressLayout.showContent(); mBinding.video.setTag(item.getVodPic()); - mBinding.name.setText(item.getVodName()); + mBinding.name.setText(item.getVodName(getName())); setText(mBinding.remark, 0, item.getVodRemarks()); setText(mBinding.site, R.string.detail_site, getSite().getName()); setText(mBinding.actor, R.string.detail_actor, Html.fromHtml(item.getVodActor()).toString()); @@ -537,7 +538,7 @@ public class DetailActivity extends BaseActivity implements Clock.Callback, Cust } private void onCast() { - CastDialog.create().history(mHistory).video(CastVideo.get(getName(), getUrl())).fm(true).show(this); + CastDialog.create().history(mHistory).video(CastVideo.get(mBinding.name.getText().toString(), getUrl())).fm(true).show(this); } private void onFull() { @@ -1038,7 +1039,7 @@ public class DetailActivity extends BaseActivity implements Clock.Callback, Cust } private void checkSearch(boolean force) { - if (mSearchAdapter.getItemCount() == 0) initSearch(getName(), true); + if (mSearchAdapter.getItemCount() == 0) initSearch(mBinding.name.getText().toString(), true); else if (isAutoMode() || force) nextSite(); } @@ -1091,7 +1092,7 @@ public class DetailActivity extends BaseActivity implements Clock.Callback, Cust } private boolean mismatch(Vod item) { - String keyword = getName(); + String keyword = mBinding.name.getText().toString(); if (mBroken.contains(item.getVodId())) return true; if (isAutoMode()) return !item.getVodName().equals(keyword); else return !item.getVodName().contains(keyword);