From e7bf9ac74e83fcc5aad2aad06f4f9ef3be1ed935 Mon Sep 17 00:00:00 2001 From: FongMi Date: Tue, 19 Dec 2023 23:49:55 +0800 Subject: [PATCH] Fix live crash --- .../fongmi/android/tv/ui/activity/LiveActivity.java | 10 +++++++--- .../fongmi/android/tv/ui/activity/LiveActivity.java | 10 +++++++--- 2 files changed, 14 insertions(+), 6 deletions(-) diff --git a/app/src/leanback/java/com/fongmi/android/tv/ui/activity/LiveActivity.java b/app/src/leanback/java/com/fongmi/android/tv/ui/activity/LiveActivity.java index 6e55678d9..d3aa8a9f6 100644 --- a/app/src/leanback/java/com/fongmi/android/tv/ui/activity/LiveActivity.java +++ b/app/src/leanback/java/com/fongmi/android/tv/ui/activity/LiveActivity.java @@ -121,7 +121,11 @@ public class LiveActivity extends BaseActivity implements GroupPresenter.OnClick } private int getPlayerType(int playerType) { - return playerType != -1 ? playerType : getHome().getPlayerType() != -1 ? getHome().getPlayerType() : Setting.getLivePlayer(); + return playerType != -1 ? playerType : getHome() != null && getHome().getPlayerType() != -1 ? getHome().getPlayerType() : Setting.getLivePlayer(); + } + + private int getTimeout() { + return getHome() != null ? getHome().getTimeout() : Constant.TIMEOUT_PLAY; } @Override @@ -222,7 +226,7 @@ public class LiveActivity extends BaseActivity implements GroupPresenter.OnClick private void setViewModel() { mViewModel = new ViewModelProvider(this).get(LiveViewModel.class); - mViewModel.url.observe(this, result -> mPlayers.start(result, getHome().getTimeout())); + mViewModel.url.observe(this, result -> mPlayers.start(result, getTimeout())); mViewModel.epg.observe(this, this::setEpg); mViewModel.live.observe(this, live -> { hideProgress(); @@ -705,7 +709,7 @@ public class LiveActivity extends BaseActivity implements GroupPresenter.OnClick } private void checkError(ErrorEvent event) { - if (getHome().getPlayerType() == -1 && event.isFormat() && event.getRetry() > 0 && getToggleCount() < 2 && mPlayers.getPlayer() != Players.SYS) { + if (getHome() != null && getHome().getPlayerType() == -1 && event.isFormat() && event.getRetry() > 0 && getToggleCount() < 2 && mPlayers.getPlayer() != Players.SYS) { toggleCount++; nextPlayer(); } else { diff --git a/app/src/mobile/java/com/fongmi/android/tv/ui/activity/LiveActivity.java b/app/src/mobile/java/com/fongmi/android/tv/ui/activity/LiveActivity.java index d7ca8940a..8719bfeb4 100644 --- a/app/src/mobile/java/com/fongmi/android/tv/ui/activity/LiveActivity.java +++ b/app/src/mobile/java/com/fongmi/android/tv/ui/activity/LiveActivity.java @@ -131,7 +131,11 @@ public class LiveActivity extends BaseActivity implements CustomKeyDownLive.List } private int getPlayerType(int playerType) { - return playerType != -1 ? playerType : getHome().getPlayerType() != -1 ? getHome().getPlayerType() : Setting.getLivePlayer(); + return playerType != -1 ? playerType : getHome() != null && getHome().getPlayerType() != -1 ? getHome().getPlayerType() : Setting.getLivePlayer(); + } + + private int getTimeout() { + return getHome() != null ? getHome().getTimeout() : Constant.TIMEOUT_PLAY; } @Override @@ -640,7 +644,7 @@ public class LiveActivity extends BaseActivity implements CustomKeyDownLive.List } private void start(Channel result) { - mPlayers.start(result, getHome().getTimeout()); + mPlayers.start(result, getTimeout()); } private void checkPlayImg(boolean playing) { @@ -775,7 +779,7 @@ public class LiveActivity extends BaseActivity implements CustomKeyDownLive.List } private void checkError(ErrorEvent event) { - if (getHome().getPlayerType() == -1 && event.isFormat() && event.getRetry() > 0 && getToggleCount() < 2 && mPlayers.getPlayer() != Players.SYS) { + if (getHome() != null && getHome().getPlayerType() == -1 && event.isFormat() && event.getRetry() > 0 && getToggleCount() < 2 && mPlayers.getPlayer() != Players.SYS) { toggleCount++; nextPlayer(); } else {