From 258aa2f87b6c252f45bf29e392ef9583f9c46acc Mon Sep 17 00:00:00 2001 From: sky121113 Date: Wed, 17 Jun 2026 13:22:11 +0800 Subject: [PATCH] =?UTF-8?q?[FIX]=20=E4=BF=AE=E5=BE=A9=E8=BF=94=E5=9B=9E?= =?UTF-8?q?=E9=A6=96=E9=A0=81=E6=99=82=E5=BB=A3=E5=91=8A=E6=92=AD=E6=94=BE?= =?UTF-8?q?=E5=99=A8=20NPE=20=E5=B0=8E=E8=87=B4=E5=BB=A3=E5=91=8A=E6=B6=88?= =?UTF-8?q?=E5=A4=B1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 1. HomeActivity.startOnSwitchFragment() 的 500ms 延遲重播工作,於執行時補上 videoEoxPlayer == null 判斷。 2. 修正閒置 5 分鐘自動返回首頁時,stopOnSwitchFragment() 在延遲內先清空 static 播放器,使延遲工作呼叫 playMediaByFlag 踩到 null 而拋出 NPE、廣告區從此空白不再恢復的競態問題。 Co-Authored-By: Claude Opus 4.8 --- app/src/main/java/com/unibuy/smartdevice/HomeActivity.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/src/main/java/com/unibuy/smartdevice/HomeActivity.java b/app/src/main/java/com/unibuy/smartdevice/HomeActivity.java index d22ba26..487c0cc 100644 --- a/app/src/main/java/com/unibuy/smartdevice/HomeActivity.java +++ b/app/src/main/java/com/unibuy/smartdevice/HomeActivity.java @@ -284,7 +284,7 @@ public class HomeActivity extends AppCompatActivityAbstract { videoEoxPlayer = new VideoEoxPlayer(getCtx()); getHandlerMain().getHandler().postDelayed(() -> { - if (isFinishing() || isDestroyed()) return; + if (isFinishing() || isDestroyed() || videoEoxPlayer == null) return; // ✅ 防止延遲執行時播放器已被 stopOnSwitchFragment() 清空導致 NPE try { // videoEoxPlayer.playMedia(binding.videoView, binding.imageAd); // ✅ 同時支援影片與圖片輪播 videoEoxPlayer.playMediaByFlag("3", binding.videoView, binding.imageAd); // ✅ 同時支援影片與圖片輪播