spacecowboy / Feeder

Android RSS reader app
GNU General Public License v3.0
1.63k stars 99 forks source link

App doesn't work in background after last updates #405

Open DorH92 opened 3 weeks ago

DorH92 commented 3 weeks ago

Checklist

App version

2.6.33

Where did you get the app from

Google Play

Android version

14

Device model

Galaxy S23

First occurred

about 2 month ago

Current behaviour

After the last updates the app stopped working in background, doesn't refresh the feeds and doesn't send notifications. The app is woring in background for few hours, then stop working in background until you manually open the app.

That's despite there is no battery optimization set and the app's battery consumption is set as "unlimited".

Android version: 14 Phone: Galaxy S23+

spacecowboy commented 3 weeks ago

There has been no changes to background synchronization.

I can only recommend actions on https://dontkillmyapp.com/

DorH92 commented 1 week ago

@spacecowboy

I tried to move back to older version (tried randomly April 2024 version) and it works great in contrast to the newer versions. So it is indeed probably something that happened in the app's code in the last updates.

Anyway, it is not important for me to use newest version so I stay with this older version that works good. Maybe you would want to locate issues in the code so I inform you this fact.

Thank you.

ShinIce commented 1 week ago

I do have the same issue with the f-droid version.

spacecowboy commented 1 week ago

One thing that did change since April is that Feeder respects server's cache policies to a greater extent.

So if possible, please differentiate between

I know it can be hard to tell the difference unless you have many feeds from several sources. But it would help a lot to nail down potential issues.

DorH92 commented 1 week ago

@spacecowboy

New items are fetched well if I open the app manually. I can tell you also that if the app doesn't open again manually, it will not send you notifications forever until you open it manually and then after few hours the same happens.

By the way, I didn't check if the app process is killed and I'm not familiar with your code. I think it is also possible that if the process is not killed, the class responsible for background fetching doesn't get runtime from Android system. Maybe consider apply this class as a service to ensure it works always in background and Android respects it?

spacecowboy commented 6 days ago

@spacecowboy

New items are fetched well if I open the app manually. I can tell you also that if the app doesn't open again manually, it will not send you notifications forever until you open it manually and then after few hours the same happens.

By the way, I didn't check if the app process is killed and I'm not familiar with your code. I think it is also possible that if the process is not killed, the class responsible for background fetching doesn't get runtime from Android system. Maybe consider apply this class as a service to ensure it works always in background and Android respects it?

That's not how Feeder works. Feeder uses the WorkManager library, which is the recommended way by Google to schedule background work.

Running manual background services is not how modern Android apps work

DorH92 commented 5 days ago

@spacecowboy

Ok, Why? Service is ensured to run in background and being respected. WorkManager library doesn't ensure it as well service does.