reisxd / TizenTube

A NodeJS script to remove ads and add support for Sponsorblock for your Tizen TV (2017 and forward).
https://tizentube.vercel.app
GNU General Public License v3.0
466 stars 41 forks source link

The Tizen Tube app loads ads when we reopen it after 15-20 minutes of restarting the TV. #78

Closed ssdhage closed 3 weeks ago

ssdhage commented 1 month ago

Hello, I am new to Tizen Tube and using it with Tizen Brew. First of all, thank you for providing the mod; it is a lifesaver. However, I have noticed an issue with Tizen Tube. I'm not sure if it's due to Tizen Tube (TT) or Tizen Brew (TB).

Here's what happens:

Can you please help me figure out what's going on and how to fix it? Thanks!

zhongkechen commented 1 month ago

I have the same issue. And the workaround for me is to run Device Care ( Settings -> Support -> Device Care ), which kills all background services and then open TizenTube.

reisxd commented 1 month ago

What you're referencing to is the "Invalid JSON" error which happens when the app client (TizenBrew frontend) sends invalid JSON data to the app server (TizenBrew Service). Problem is, the client always sends valid JSON data, but the server receives the launch event (the event tells the server to load the JS files) as garbled data. I have no clue why, and this does not happen on my TV (2017 Tizen 3).

The only fix currently is to restart your TV/as the commenter above suggested, killing all background applications.

ssdhage commented 1 month ago

I assume (as I am not very familiar with Tizen development) the service and front-end app run as two different applications in Tizen. We close the front-end TT, but the background service (which is launched when TB is first started after we restart the TV) gets killed if it's not used for more than 10 minutes. I read about this issue on the Samsung development forum, but I can't find the link now. I think this is the root cause.

Could you please provide a button or configuration that allows us to restart TB itself? It should always start both the front end and the background service when we start TB. This will ensure everything starts fresh. We can wait for this hot launch rather than waiting to skip the ads on every youtube video/restart tv/run device care.

reisxd commented 1 month ago

We close the front-end TT, but the background service (which is launched when TB is first started after we restart the TV) gets killed if it's not used for more than 10 minutes. I read about this issue on the Samsung development forum, but I can't find the link now. I think this is the root cause.

No, this is not the root cause. As I've said, the server receives garbled data for no reason at all. Also, TizenTube does not have a background service other than the casting service. The main service is in TizenBrew. And also, the service never gets killed unless something happens (like system running out of memory, service crash, etc.).

ssdhage commented 1 month ago

Could we add an option to exit TB? I found some information on this here: Samsung Developer - Terminating Applications.

Maybe we could have it as a configuration or a button in the UI. Alternatively, when clicking the return button, we could get a popup that asks whether to Terminate or Hide the application.

I have tried long press return button to kill TB but that dont work for some reason.

reisxd commented 3 weeks ago

Fixed in the latest version of TizenBrew.