ammargitham / WallFlow

Wallpaper app for Android using Jetpack Compose
GNU General Public License v3.0
325 stars 18 forks source link

"Change now" in settings doesn't work #85

Open Vyachean opened 5 months ago

Vyachean commented 5 months ago

Automatic wallpaper change does not work starting from version 2.4.0. Version 2.3.1 works fine. Changing wallpaper only works from the wallpaper viewer. When you try to change the wallpaper from the settings menu or from the shortcut, the icon rotates and nothing changes. Android 13, miui for pad 14.

ammargitham commented 5 months ago

Have you correctly configured the sources? Can you post screenshots of your sources screen?

Vyachean commented 5 months ago
Screenshot of source settings ![Screenshot_2024-03-25-07-36-11-729_com ammar wallflow](https://github.com/ammargitham/WallFlow/assets/66068072/80cd2e27-ed5b-4887-a33a-77f96b9fae87)
Vyachean commented 5 months ago

Now I discovered that after a timeout of 4 hours the wallpaper changed. The problem with the "Change now" button remains.

ammargitham commented 5 months ago

So does the 'change now' button keep on loading or does it stop with any info?

Vyachean commented 5 months ago

I haven't seen any messages, just doesn't work and nothing happens. Observed the behavior, I changed the time of changing the wallpaper, the wallpaper did not change anymore. There are no notifications either. If i start changing the wallpaper through the shortcut, the indicator appears and it spins endlessly without messages.

ammargitham commented 5 months ago

To help debug this, create a backup and share the backup here.

ammargitham commented 5 months ago

Are you using Plus or Regular? If using plus, try disabling object detection.

Vyachean commented 5 months ago

wallflow_backup_20240326190253.json I've tried both versions, now I use a regular

ammargitham commented 5 months ago

Hi. I tried your backup and the 'Change Now' button seems to be working correctly. As for the notification, did you give the app the notification permission? You can check that in App info -> Notifications.

ammargitham commented 5 months ago

It could be that the wallpaper sizes are large and it's taking time to download the wallpapers. If you enable notifications, you would be able to see the progress.

Vyachean commented 5 months ago

Of course, I have notifications turned on, I enabled all the permissions that are in miui, and added to exceptions to optimize the battery. The peculiarity is that version 2.3.1 works without problems with similar settings.

ammargitham commented 5 months ago

Okay. To further debug this, can you use LogFox or any Logcat app to see if there are any logs when you click 'Change Now'?

Vyachean commented 5 months ago

30_03-07-17-36_873.zip

ammargitham commented 5 months ago

Nothing of use in the logs. Next what I can do is give you a debug build with various debug lines added. You can use the same method to give me back the logs.

ammargitham commented 5 months ago

Here is the debug apk. app-base-debug.zip

Note that it will be a bit laggy compared to release builds. Try it and send me the logs.

ammargitham commented 4 months ago

@Vyachean Were you able to check the debug build?

gaabster commented 3 months ago

It seems that the app (version 2.5.0) stopped working completely on my Tab s7 fe. I tried earlier versions and it doesn't change wallpapers automatically or manually. There is no notification. I'm not sure what to do, especially that the app works on my phone running lineageos 21 (android 14).

Edit:

OK, I just checked few things again and the only way to change wallpapers I by doing it through "Local Tab" menu. Other methods like "Auto Wallpaper" or "Change now" don't work. Oh and this is the regular, non Plus version.

ammargitham commented 3 months ago

@gaabster What toast message do you get when you click 'Change now'?

gaabster commented 3 months ago

@gaabster What toast message do you get when you click 'Change now'?

Nothing. It just keeps on spinning and spinning. The tablet is running official, non rooted android 14 OS. I had issus where it would not run some Google apps like Google Sounds.

Another edit: Version 2.3.1 works great, just as op said.

ammargitham commented 3 months ago

Please try https://github.com/ammargitham/WallFlow/releases/tag/v2.6.0-alpha01 and let me know if this issue is fixed.

gaabster commented 3 months ago

Hello. Sadly the issue is still present. There is no notification or any toast message. The app also crashed few times when exiting settings.

APP_VERSION_CODE = 2204
APP_VERSION_NAME = 2.6.0-alpha01
PACKAGE_NAME = com.ammar.wallflow
PHONE_MODEL = SM-T733
ANDROID_VERSION = 14
BRAND = samsung
PRODUCT = gts7fewifieea

Stacktrace: 
java.lang.IndexOutOfBoundsException: Index -1 out of bounds for length 1
    at jdk.internal.util.Preconditions.outOfBounds(Preconditions.java:64)
    at jdk.internal.util.Preconditions.outOfBoundsCheckIndex(Preconditions.java:70)
    at jdk.internal.util.Preconditions.checkIndex(Preconditions.java:266)
    at java.util.Objects.checkIndex(Objects.java:359)
    at java.util.ArrayList.get(ArrayList.java:434)
    at androidx.navigation.compose.NavHostKt$NavHost$28$1.invokeSuspend(SourceFile:47)
    at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(SourceFile:9)
    at kotlinx.coroutines.DispatchedTask.run(SourceFile:113)
    at androidx.compose.ui.platform.AndroidUiDispatcher.access$performTrampolineDispatch(SourceFile:24)
    at androidx.compose.ui.platform.AndroidUiDispatcher$dispatchCallback$1.run(SourceFile:3)
    at android.os.Handler.handleCallback(Handler.java:958)
    at android.os.Handler.dispatchMessage(Handler.java:99)
    at android.os.Looper.loopOnce(Looper.java:230)
    at android.os.Looper.loop(Looper.java:319)
    at android.app.ActivityThread.main(ActivityThread.java:8913)
    at java.lang.reflect.Method.invoke(Native Method)
    at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:608)
    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1103)
    Suppressed: kotlinx.coroutines.internal.DiagnosticCoroutineContextException: [androidx.compose.ui.platform.MotionDurationScaleImpl@65763dc, androidx.compose.runtime.BroadcastFrameClock@bcabce5, DeferredCoroutine{Cancelling}@8fe63ba, AndroidUiDispatcher@28f526b]
ammargitham commented 3 months ago

ok. I will check this further. Will try to provide a debug build later this week for you.

For the crash, I have already reported to Google. Which they have not acknowledged yet.

ammargitham commented 3 months ago

@gaabster Can you share me your backup file? Also, is your tablet rooted by any chance?

gaabster commented 3 months ago

@gaabster Can you share me your backup file? Also, is your tablet rooted by any chance?

No problem. wallflow_tablet_backup.json As for the tablet, it's not rooted. My phone is running a custom rom, crdroid android 14, but I don't use root. I also tried restoring backup from my phone but it did not help.

ammargitham commented 3 months ago

@gaabster Can you share your local folders too? Since you have configured only local wallpapers in your settings.

gaabster commented 3 months ago

Sure but how do you want me to share it? It's a 1GB folder with 619 images inside.

On 9 May 2024 12:20:16 CEST, Ammar Githam @.***> wrote:

@gaabster Can you share your local folders too? Since you have configured only local wallpapers in your settings.

-- Reply to this email directly or view it on GitHub: https://github.com/ammargitham/WallFlow/issues/85#issuecomment-2102382753 You are receiving this because you were mentioned.

Message ID: @.***>

ammargitham commented 3 months ago

Mail me a drive link if possible (ammar.githam@outlook.com).

hirnsushi commented 3 months ago

I have the same problem, I do however get a toast on the bottom with the text "Wallpaper not changed: No wallpaper found".

Might be related to the Light/Dark feature, if I switch sources to "Use local directories" everything works fine 🤔 Also using local wallpapers, but that wasn't a problem in previous versions, even the Light/Dark feature used to work. I sadly can't pinpoint exactly when that regression happened.

Edit: Nope, spoke too soon, managed to break "Use local directories" as well by deleting a picture in the wallpaper folder that was set as the current wallpaper. Resetting app data got it going again including Light/Dark. Maybe the last picture sticks around somewhere and doesn't get cleared even if the wallpaper has been set to something else in the meantime, and if it doesn't exist it breaks the source? 🤔

gaabster commented 3 months ago

OK I got some logs for you. App version 2.5.0. Hope it helps. 11_05-10-50-21_436.log logcat--pid=29583.txt

ammargitham commented 3 months ago

@hirnsushi Thanks for the info. Maybe it is an issue with the missing file. I will try to reproduce that particular issue locally. @gaabster I checked the logs, nothing of value there. It will be helpful if you could also try to give me the same with the 2.6.0-alpha01 version. I am also preparing a debug build for you to gather more logs.

gaabster commented 3 months ago

OK new log 11_05-12-57-26_636.log

ammargitham commented 3 months ago

@gaabster Thanks for that. Found the issue.

AutoWallpaperWorker: doWork: AutoWallpaper failed since not in default orientation

Are you holding your tablet vertically or horizontally?

gaabster commented 3 months ago

Horizontally. So you suggest I should try holding it vertically and try to change wallpaper then?

ammargitham commented 3 months ago

@gaabster Try it. It should work. I think this is a Samsung tablet problem. I added that check due to this issue.

To workaround this, I will add a setting for you to set your default orientation.

gaabster commented 3 months ago

@ammargitham And it works! Thank you. I always had screen Auto rotate off. I agree that an option to set default orientation would probably be best for now.

ammargitham commented 3 months ago

@hirnsushi Have you tried 2.6.0-alpha01?

hirnsushi commented 3 months ago

That works! Thank you so much for fixing this :relaxed: