immich-app / immich

High performance self-hosted photo and video management solution.
https://immich.app
GNU Affero General Public License v3.0
51.09k stars 2.7k forks source link

[BUG] Can not use the mobile app on Android without the storage permission. #1905

Closed natedawg closed 12 months ago

natedawg commented 1 year ago

The bug

Now with v1.50.1 it is not possible to use the android app without granting the storage permission. I use immich as an archive of old family photos. I do not want my personal phone photos showing up in the mobile app. Previously you could deny the storage permission and immich would only show photos from the server. Please allow the old behavior or add a setting to not display local photos in the timeline.

The OS that Immich Server is running on

Docker

Version of Immich Server

v1.50.1

Version of Immich Mobile App

v1.50.1

Platform with the issue

Your docker-compose.yml content

NA

Your .env content

NA

Reproduction steps

1. Open the app
2. Be given only the option to allow local storage or logout

Additional information

No response

martyfuhry commented 1 year ago

Thanks for the feedback! I put this permissions onboarding page in without considering that some folks use the app to just show remote images from the server and don't want to add any of their own personal albums. Sorry for the inconvenience.

Right now, the backup service needs at least one album selected, so I wasn't even aware the app worked at all without that permission. In the future, we're going to improve this to allow you to select the albums you'd like to back up (or, in your case, none). For now, I think you can allow the permission and create a blank album on your device. Select that blank album from the backup service and I think it should work just as you had it before.

natedawg commented 1 year ago

I this case I don't use the backup service it's not turned on. I would like to keep it off if possible. The issue is since users are now forced to grant the storage permission the timeline now shows both local assets and the server assets. Previously not allowing the storage permission would make immich only show the remote server assets.

I think the new page should allow you to continue without the permission in some way or in the settings there should be a toggle to hide local assets from the timeline.

alextran1502 commented 1 year ago

@natedawg You don't have to use the backup service to choose the album. You can choose the album and not uploading anything

jrasm91 commented 1 year ago

The main goal is: do not show local assets in the timeline. This is not possible, since the access photos/videos permission is required, and once granted will shows all local assets in the timeline. OP is proposing being able to use the app to view remote assets only or, adding an option in the settings to not show local assets in the timeline.

natedawg commented 1 year ago

I was able to get only remote assets on the timeline by adding a blank album to the backup service as suggested. However it took extra steps.

  1. I created a folder on my phone with a single image. (Must have a photo inside for immich to detect it) If you try searching for a folder with no images you get an infinite spinner animation and it's not clear what is happening.
  2. Selected the new folder for the backup service in immich.
  3. Try to remove the default recents folder by double taping. (Error says: Cannot exclude album containes all assets) This seems like a bug since the next step works.
  4. Removed the recents folder by removing the recents tag under the Selection Info header.
  5. Go back to the timeline and delete the single image that was in the album.

This works for me but if anyone else wants only remote assets to show up it's a process.

cidrblock commented 1 year ago

Just a quick +1 here for remote only and no required permissions. We've got the same use case here of just using immich as a remote viewer. We handle syncing and backup through nextcloud and a cron job that adds the photos to immich using the CLI.

Will probably look back at this in the future when the disclaimers are removed from the README :)

LM1LC3N7 commented 1 year ago

Hello,

I can also add that using the "storage scopes" in Android 13 does not work if the entire storage permission is not granted.

Using the last apk relase version.

evanphilip commented 1 year ago

…do not show local assets in the timeline. This is not possible, since the access photos/videos permission is required, and once granted will shows all local assets in the timeline.

I would like to exclude local assets from the timeline too. Media from other apps like WhatsApp and Instagram do not have proper metadata and they clutter the timeline.

I think the most flexible option would be to select which local folders to “scan”. Those who wish to display only remote assets could just not select anything.