deckerst / aves

Aves is a gallery and metadata explorer app, built for Android with Flutter.
BSD 3-Clause "New" or "Revised" License
2.81k stars 106 forks source link

No media shown with fresh install #1022

Closed IzzySoft closed 2 months ago

IzzySoft commented 6 months ago

Describe the bug I just did a fresh install of Aves from IzzyOnDroid. It starts up fine, but none of the media are shown.

To Reproduce Steps to reproduce the behavior:

  1. Install the app
  2. Start the app
  3. See "Collection loading", but nothing happens

Expected behavior Media show up

Screenshots n/a

System information and logs:

Package: deckers.thibault.aves
Installer: org.fdroid.fdroid.privileged
Aves version: 1.11.1-izzy, build 12001
Flutter: stable 3.19.6
Android version: 11, API 30
Android build: lineage_FP2-userdebug 11 RQ3A.211001.001 eng.root.20230101.184648 dev-keys
Device: Fairphone FP2
Support: dynamic colors=false, geocoder=true, HDR=false
Mobile services: ready
System locales: de_DE, en_US
Storage volumes: /storage/emulated/0/, /storage/B820-09EC/
Storage grants:
Error reporting: false

Additional context As you already pointed out in our communication:

I see from your logs that it goes through most steps in the initialization process but the final initialization log line is missing. Attached a collection of logs, exported from Aves and one generated via adb logcat |egrep '(aves|flutter)'.

aveslogs.zip

MichaelDevon commented 6 months ago

I also experience this. Android 14, AOSP. Other gallery apps instantly start collecting media. Aves only shows newly added media. For example if i have 400 photos in /sdcard/Download/ then install Aves, it wont pick up anything, but if i then download another image, so there would be 401 images in /sdcard/Download/ then only that single new image would be shown. Its not a permission issue. It happens even when aves has direct access to the folder.

deckerst commented 6 months ago

@IzzySoft Could you please try this build and export/save the logs? https://drive.google.com/file/d/1pysSJmpVyBjUMZmU8xBrKJCpUFrJiW7I/view?usp=sharing

It will install as Aves [Profile]. I don't expect this build to solve the issue, but I added some logs to help me pinpoint where the code is hanging.

IzzySoft commented 6 months ago

@deckerst I would – but since I installed the previous version, that old phone got very instable – so not sure how helpful I can be here. But I'll try..

Background of instability, only indirectly related to getting the details for above reportI had to unstall Aves from there, but that didn't solve the issue (I don't think it's related to Aves, just that the install triggered something. Now the device hangs at least once a day, logcat spilling something about `lowmemorykiller: Killing 'Binder:30652_2'` in some eternal loop until the device reboots… (the replacement is scheduled to arrive in July/August). Eh, guess I just found the culpritwhile summing this up – hope you don't ask me again to copy-paste something from the app info: it was the editor I only installed to be able to get those details off-device :see_no_evil: Was hard to get rid of that as the uninstall process hung as well, claiming `Specified package com.farmerbb.notepad under uid 10171 but it is really -1` and then `Exception while retrieving the package info` followed by some `unlinkToDeath` (only managed to get rid of it doing a hard-boot removing the battery, getting in via `adb` before the device was fully booted, and then `pm uninstall` it with root powers, yikes…)

What logs will you need then from me, and where do I find them? If logcat, I'd need some term(s) to grep for, as adb logcat on the affected device currently has something like ~100 lines per second~ (down to 5-10 again now) :see_no_evil:

deckerst commented 6 months ago

Thank you for all the efforts.

If you can, the simplest would be to save the logs via the app > About > Bug Report > Step 1.

If you can't or it yields an empty file, logcat could be a solution:

adb logcat | grep "$(adb shell ps | grep deckers.thibault.aves.profile$ | awk '{print $2}')"
IzzySoft commented 6 months ago

Well, call it a disappointment then, Thibault: as my good old FP2 runs smoothly again, I dared installing the APK. Installed fine, started up faster than the old one I had removed a few days ago – and immediately shows all the photos and screenshots. Even without all the artifacts and bucking I had before (hey, FP2, with its old 32bit CPU, that's amazing, and totally unexpected), thanks a lot! Finally, the great Aves usable on my old Fairphone, I'm excited! :star_struck:

Would you still want the logs – or will they rather be obsolete as the error no longer occurs?

IzzySoft commented 6 months ago

PS: Leaving the issue open so hopefully @MichaelDevon can check and confirm as well.

MichaelDevon commented 6 months ago

PS: Leaving the issue open so hopefully @MichaelDevon can check and confirm as well.

Works for me too. Thanks!

deckerst commented 6 months ago

Thank you both for the feedback.

However, I'd like to double check this positive result.

What you previously had was this version of Aves:

What I linked above is:

As I understand, it wasn't working with release-izzy-v1.11.1 but it works with profile-play-vNext.

Could you try then this build to confirm? It's a release build of the izzy flavour with the current code on master.

IzzySoft commented 6 months ago

Yuck, I can only uninstall during boot it seems… OK, done: uninstalled profile, installed the new, tried – and failed: starts up, but no images. Here's the corresponding aves-logs-20240522_235441.txt

Guess next try is profile-izzy-vNext or release-play-vNext to see in which field the culprit lies?

MichaelDevon commented 6 months ago

For me, aves libre from fdroid didnt work, but the one you sent previously did. I cant test the new one currently, but ill get to it eventually.

deckerst commented 6 months ago

Here are some fresh builds:

I added some logs in these releases, hopefully I'll see where things hang (if they do).

MichaelDevon commented 6 months ago

Here are some fresh builds:

I added some logs in these releases, hopefully I'll see where things hang (if they do).

Play Release works fine. I cant install the other one because its "not compatible with my device". Assuming its because its not arm64 v8

deckerst commented 6 months ago

@IzzySoft if you find the time, please let me know how this goes in your environment.

IzzySoft commented 6 months ago

@deckerst sorry, was AFK (just returned last night). Just tried aves-armeabi-v7a-izzy-profile_20240523_2230 now: works as expected (starts, shows available pictures).

deckerst commented 2 months ago

@IzzySoft various things were modified with regards to launch and the collection model. Do you experience this issue when doing a fresh install of Aves v1.11.13? If so, could you please share the logs you get with that version?

IzzySoft commented 1 month ago

@deckerst apologies for my delayed response, I was on vacation… And sorry, hard to test at the moment: the device I used for that acts up heavily meanwhile. I can give it another shot next week or so if needed (setting up another test device), just let me know.

deckerst commented 1 month ago

Well, if you are no longer concerned in practice by this issue, we can let it closed. But if you encounter it again, feel free to comment/reopen.

IzzySoft commented 1 month ago

I'm close to getting my new test device ready again, so I can definitely give it another try. If only to see whether the issue still exists or not. I'll leave both issues closed until then; once tested, I'll either just let you know (if everything is fine) – or reopen if I think it could need a hand.

Thanks a lot! Aves is definitely my absolute favorite gallery app :heart_eyes: despite of being a Flutter app :see_no_evil:

deckerst commented 1 month ago

despite of being a Flutter app 🙈

Is the fact that it's relying on Flutter troublesome for users?

MichaelDevon commented 1 month ago

despite of being a Flutter app 🙈

Is the fact that it's relying on Flutter troublesome for users?

Correct me if im wrong, but it causes issues with HDR, which is a baseline feature nowadays.

deckerst commented 1 month ago

Right, Aves currently does not render HDR correctly. That said, I've seen recent work on Flutter for large gamut on Android (for their new rendering engine), and there's also the distinct possibility that's it's already possible but I don't know how. Someone smarter will figure it out ^^

IzzySoft commented 1 month ago

For me, its also a question of resource consumption (forgive me being an old man still remembering the times where we fought for each single kilobyte, and made bad jokes about "that guy" declaring "640 kB should be enough for everyone"). Flutter, like Expo, ReactNative and some others, usually require a lot of native libs (not in numbers, but in size) – for each architecture. And one ends up with 10 Flutter apps each duplicating the same native libs (as a Linux guy, I prefer the way package systems like DEB/RPM deal with that – though I admit the pros of the occasional AppImage).

I'm also a proponent of sustainability and long life-times for our hardware, to avoid e-trash wherever possible. My current main driver still is a Fairphone 2 built 2015 – no way it can run larger Flutter apps, not to speak of "fluently". Aves doesn't really run well on the FP2, I use it on my other device which is more recent and stronger.

So in terms of resources, Flutter, React & co to me simply have a bad cost-benefit factor :shrug: My favorite joke is (and that's taken from real-life application descriptions): "This is a small and light-weight Flutter app…" :see_no_evil:

Eh, and of course: no offense meant! As I wrote, I love Aves!

deckerst commented 1 month ago

Aves doesn't really run well on the FP2

Is it the visuals (animations, transitions, overlays & blur effects)? Or IO delays when accessing storage? It's not my main focus but ideally I'd like Aves to run well enough on older devices. That's partly why there are settings to disable animations and blur.

IzzySoft commented 1 month ago

I don't remember all details, and some seem to have been less heavy the last time I've tried. But in general:

Forgive me for not trying again on the FP2 before my final new SHIFTphone8 arrives (to replace the FP2 as my main driver), but meanwhile the device acts up quite a bit – especially when installing new apps; and I need it to keep running until I can replace it. Once that's done, and the move completed, I can factory-reset it and see if that solves the issue. Gladly give it a try again then.

deckerst commented 1 month ago

the screen was flickering when viewing images, distorting them quite a bit

I'm wondering if it's because of the possible discrepancy between the thumbnail preview and the final full screen image. Depending on the app/camera that created it, the thumbnail sometimes is too small or has an aspect ratio that is noticeably far from the one of the full image. Aves shows the scaled up thumbnail until the full screen image is ready, and it can take longer on slower devices, so you would see the distorted upscaled thumbnail longer and it would flicker to the final image with the right aspect ratio once ready.