[BUG] Unable to Access Assets on Android #456

Closed
opened 2026-02-04 20:34:13 +03:00 by OVERLORD · 6 comments
Owner

Originally created by @atomdmac on GitHub (Nov 29, 2022).

Describe the bug
No assets appear in the Photos page.

Uploading an asset to the Web UI, however, automatically shows the asset on my phone.

Task List

Please complete the task list below. We need this information to help us reproduce the bug or point out problems in your setup. You are not providing enough info may delay our effort to help you.

  • I have read thoroughly the README setup and installation instructions.
  • I have included my docker-compose file.
  • I have included my redacted .env file.
  • I have included information on my machine, and environment.

To Reproduce
Steps to reproduce the behavior:

  • Create clean Immich installation using docker-compose
  • Login to the administrator account from mobile device
  • Grant access to photos, videos, music and audio
  • Upon reaching the Photos page, no local assets appear
  • Note: Assets that were uploaded to the server via the web UI do appear on the mobile device

Expected behavior
Assets local to the phone should appear in the Photos page.

System

  • Android: 13
  • Server Version: 1.36.2
  • Mobile App Version: 1.36.1 build 56

.env

###################################################################################
# Database
###################################################################################

DB_HOSTNAME=immich_postgres
DB_USERNAME=postgres
DB_PASSWORD=postgres
DB_DATABASE_NAME=immich

# Optional Database settings:
# DB_PORT=5432

###################################################################################
# Redis
###################################################################################

REDIS_HOSTNAME=immich_redis

# Optional Redis settings:
# REDIS_PORT=6379
# REDIS_DBINDEX=0
# REDIS_PASSWORD=
# REDIS_SOCKET=

###################################################################################
# Upload File Config
###################################################################################

UPLOAD_LOCATION=/volume1/docker/Immich/uploads

###################################################################################
# Log message level - [simple|verbose]
###################################################################################

LOG_LEVEL=simple

###################################################################################
# JWT SECRET
###################################################################################

# This JWT_SECRET is used to sign the authentication keys for user login
# You should set it to a long randomly generated value
# You can use this command to generate one: openssl rand -base64 128
JWT_SECRET=[REDACTED]

###################################################################################
# Reverse Geocoding
####################################################################################

# DISABLE_REVERSE_GEOCODING=false

# Reverse geocoding is done locally which has a small impact on memory usage
# This memory usage can be altered by changing the REVERSE_GEOCODING_PRECISION variable
# This ranges from 0-3 with 3 being the most precise
# 3 - Cities > 500 population: ~200MB RAM
# 2 - Cities > 1000 population: ~150MB RAM
# 1 - Cities > 5000 population: ~80MB RAM
# 0 - Cities > 15000 population: ~40MB RAM

# REVERSE_GEOCODING_PRECISION=3

####################################################################################
# WEB - Optional
####################################################################################

# Custom message on the login page, should be written in HTML form.
# For example PUBLIC_LOGIN_PAGE_MESSAGE="This is a demo instance of Immich.<br><br>Email: <i>demo@demo.de</i><br>Password: <i>demo</i>"

PUBLIC_LOGIN_PAGE_MESSAGE=[REDACTED]

####################################################################################
# Alternative Service Addresses - Optional
####################################################################################

# This is an advanced feature for users who may be running their immich services on different hosts. It will not change which address or port that services bind to within their containers, but it will change where other services look for their peers.
# Note: immich-microservices is bound to 3002, but no references are made

# IMMICH_WEB_URL=http://immich-web:3000
# IMMICH_SERVER_URL=http://immich-server:3001
# IMMICH_MACHINE_LEARNING_URL=http://immich-machine-learning:3003

docker-compose.yml

version: "3.8"

services:
  immich-server:
    image: altran1502/immich-server:release
    entrypoint: ["/bin/sh", "./start-server.sh"]
    volumes:
      - ${UPLOAD_LOCATION}:/usr/src/app/upload
    env_file:
      - .env
    environment:
      - NODE_ENV=production
    depends_on:
      - redis
      - database
    restart: always

  immich-microservices:
    image: altran1502/immich-server:release
    entrypoint: ["/bin/sh", "./start-microservices.sh"]
    volumes:
      - ${UPLOAD_LOCATION}:/usr/src/app/upload
    env_file:
      - .env
    environment:
      - NODE_ENV=production
    depends_on:
      - redis
      - database
    restart: always

  immich-machine-learning:
    image: altran1502/immich-machine-learning:release
    entrypoint: ["/bin/sh", "./entrypoint.sh"]
    volumes:
      - ${UPLOAD_LOCATION}:/usr/src/app/upload
    env_file:
      - .env
    environment:
      - NODE_ENV=production
    depends_on:
      - database
    restart: always

  immich-web:
    image: altran1502/immich-web:release
    entrypoint: ["/bin/sh", "./entrypoint.sh"]
    env_file:
      - .env
    environment:
      # Rename these values for svelte public interface
      - PUBLIC_IMMICH_SERVER_URL=${IMMICH_SERVER_URL}
    restart: always

  redis:
    container_name: immich_redis
    image: redis:6.2
    restart: always

  database:
    container_name: immich_postgres
    image: postgres:14
    env_file:
      - .env
    environment:
      POSTGRES_PASSWORD: ${DB_PASSWORD}
      POSTGRES_USER: ${DB_USERNAME}
      POSTGRES_DB: ${DB_DATABASE_NAME}
      PG_DATA: /var/lib/postgresql/data
    volumes:
      - pgdata:/var/lib/postgresql/data
    restart: always

  immich-proxy:
    container_name: immich_proxy
    image: altran1502/immich-proxy:release
    environment:
      # Make sure these values get passed through from the env file
      - IMMICH_SERVER_URL
      - IMMICH_WEB_URL
    ports:
      - 2283:8080
    logging:
      driver: none
    depends_on:
      - immich-server
    restart: always

volumes:
  pgdata:g
Originally created by @atomdmac on GitHub (Nov 29, 2022). **Describe the bug** No assets appear in the `Photos` page. Uploading an asset to the Web UI, however, automatically shows the asset on my phone. **Task List** *Please complete the task list below. We need this information to help us reproduce the bug or point out problems in your setup. You are not providing enough info may delay our effort to help you.* - [x] I have read thoroughly the README setup and installation instructions. - [x] I have included my `docker-compose` file. - [x] I have included my redacted `.env` file. - [x] I have included information on my machine, and environment. **To Reproduce** Steps to reproduce the behavior: * Create clean Immich installation using `docker-compose` * Login to the administrator account from mobile device * Grant access to photos, videos, music and audio * Upon reaching the `Photos` page, no local assets appear * **Note:** Assets that were uploaded to the server via the web UI _do_ appear on the mobile device **Expected behavior** Assets local to the phone should appear in the `Photos` page. **System** - Android: `13` - Server Version: `1.36.2` - Mobile App Version: `1.36.1 build 56` **.env** ```sh ################################################################################### # Database ################################################################################### DB_HOSTNAME=immich_postgres DB_USERNAME=postgres DB_PASSWORD=postgres DB_DATABASE_NAME=immich # Optional Database settings: # DB_PORT=5432 ################################################################################### # Redis ################################################################################### REDIS_HOSTNAME=immich_redis # Optional Redis settings: # REDIS_PORT=6379 # REDIS_DBINDEX=0 # REDIS_PASSWORD= # REDIS_SOCKET= ################################################################################### # Upload File Config ################################################################################### UPLOAD_LOCATION=/volume1/docker/Immich/uploads ################################################################################### # Log message level - [simple|verbose] ################################################################################### LOG_LEVEL=simple ################################################################################### # JWT SECRET ################################################################################### # This JWT_SECRET is used to sign the authentication keys for user login # You should set it to a long randomly generated value # You can use this command to generate one: openssl rand -base64 128 JWT_SECRET=[REDACTED] ################################################################################### # Reverse Geocoding #################################################################################### # DISABLE_REVERSE_GEOCODING=false # Reverse geocoding is done locally which has a small impact on memory usage # This memory usage can be altered by changing the REVERSE_GEOCODING_PRECISION variable # This ranges from 0-3 with 3 being the most precise # 3 - Cities > 500 population: ~200MB RAM # 2 - Cities > 1000 population: ~150MB RAM # 1 - Cities > 5000 population: ~80MB RAM # 0 - Cities > 15000 population: ~40MB RAM # REVERSE_GEOCODING_PRECISION=3 #################################################################################### # WEB - Optional #################################################################################### # Custom message on the login page, should be written in HTML form. # For example PUBLIC_LOGIN_PAGE_MESSAGE="This is a demo instance of Immich.<br><br>Email: <i>demo@demo.de</i><br>Password: <i>demo</i>" PUBLIC_LOGIN_PAGE_MESSAGE=[REDACTED] #################################################################################### # Alternative Service Addresses - Optional #################################################################################### # This is an advanced feature for users who may be running their immich services on different hosts. It will not change which address or port that services bind to within their containers, but it will change where other services look for their peers. # Note: immich-microservices is bound to 3002, but no references are made # IMMICH_WEB_URL=http://immich-web:3000 # IMMICH_SERVER_URL=http://immich-server:3001 # IMMICH_MACHINE_LEARNING_URL=http://immich-machine-learning:3003 ``` **docker-compose.yml** ```yaml version: "3.8" services: immich-server: image: altran1502/immich-server:release entrypoint: ["/bin/sh", "./start-server.sh"] volumes: - ${UPLOAD_LOCATION}:/usr/src/app/upload env_file: - .env environment: - NODE_ENV=production depends_on: - redis - database restart: always immich-microservices: image: altran1502/immich-server:release entrypoint: ["/bin/sh", "./start-microservices.sh"] volumes: - ${UPLOAD_LOCATION}:/usr/src/app/upload env_file: - .env environment: - NODE_ENV=production depends_on: - redis - database restart: always immich-machine-learning: image: altran1502/immich-machine-learning:release entrypoint: ["/bin/sh", "./entrypoint.sh"] volumes: - ${UPLOAD_LOCATION}:/usr/src/app/upload env_file: - .env environment: - NODE_ENV=production depends_on: - database restart: always immich-web: image: altran1502/immich-web:release entrypoint: ["/bin/sh", "./entrypoint.sh"] env_file: - .env environment: # Rename these values for svelte public interface - PUBLIC_IMMICH_SERVER_URL=${IMMICH_SERVER_URL} restart: always redis: container_name: immich_redis image: redis:6.2 restart: always database: container_name: immich_postgres image: postgres:14 env_file: - .env environment: POSTGRES_PASSWORD: ${DB_PASSWORD} POSTGRES_USER: ${DB_USERNAME} POSTGRES_DB: ${DB_DATABASE_NAME} PG_DATA: /var/lib/postgresql/data volumes: - pgdata:/var/lib/postgresql/data restart: always immich-proxy: container_name: immich_proxy image: altran1502/immich-proxy:release environment: # Make sure these values get passed through from the env file - IMMICH_SERVER_URL - IMMICH_WEB_URL ports: - 2283:8080 logging: driver: none depends_on: - immich-server restart: always volumes: pgdata:g ```
Author
Owner

@alextran1502 commented on GitHub (Nov 29, 2022):

Can you try navigating to the backup page on the mobile app and selecting the album that you would like to backup from the mobile app? The mobile app only show local assets that are from the selected album(s)

@alextran1502 commented on GitHub (Nov 29, 2022): Can you try navigating to the backup page on the mobile app and selecting the album that you would like to backup from the mobile app? The mobile app only show local assets that are from the selected album(s)
Author
Owner

@atomdmac commented on GitHub (Nov 30, 2022):

@alextran1502 When I go to the backup page, and attempt to select backup albums, I see:

Total unique assets: 0
Albums on device: 0

and a progress spinner that is displayed indefinitely. If I'm attempting to upload assets for the first time, would they even be in an album yet?

@atomdmac commented on GitHub (Nov 30, 2022): @alextran1502 When I go to the backup page, and attempt to select backup albums, I see: ``` Total unique assets: 0 Albums on device: 0 ``` and a progress spinner that is displayed indefinitely. If I'm attempting to upload assets for the first time, would they even be in an album yet?
Author
Owner

@alextran1502 commented on GitHub (Nov 30, 2022):

@atomdmac Those are the albums/folder on your devices. I believe this is related to an issue with Android 13. The newest version on the PlayStore 1.36.2 Build 57 will fix it. Please help me update it and let me know if it helps.

@alextran1502 commented on GitHub (Nov 30, 2022): @atomdmac Those are the albums/folder on your devices. I believe this is related to an issue with Android 13. The newest version on the PlayStore `1.36.2 Build 57` will fix it. Please help me update it and let me know if it helps.
Author
Owner

@atomdmac commented on GitHub (Nov 30, 2022):

@alextran1502 Looks like that did fix it!. The catch appears to be that even in the Backup Albums screen, assets on the phone don't show up until after some delay. For example, I installed the update just now, signed in, and saw no assets. Just the progress spinner. I re-opened the app after a few minutes and then they did appear.

@atomdmac commented on GitHub (Nov 30, 2022): @alextran1502 Looks like that _did_ fix it!. The catch appears to be that even in the `Backup Albums` screen, assets on the phone don't show up until after some delay. For example, I installed the update just now, signed in, and saw no assets. Just the progress spinner. I re-opened the app after a few minutes and then they _did_ appear.
Author
Owner

@alextran1502 commented on GitHub (Nov 30, 2022):

@atomdmac Yes, I am aware of the issue. It takes some time to scan for assets of albums. We hope to optimize that operation.

Glad it is working now. I am closing this issue.

@alextran1502 commented on GitHub (Nov 30, 2022): @atomdmac Yes, I am aware of the issue. It takes some time to scan for assets of albums. We hope to optimize that operation. Glad it is working now. I am closing this issue.
Author
Owner

@atomdmac commented on GitHub (Nov 30, 2022):

Got it 👍 Thank you so much for the crazy fast response time on this. I'm really excited to watch this project grow!

@atomdmac commented on GitHub (Nov 30, 2022): Got it 👍 Thank you so much for the _crazy fast_ response time on this. I'm really excited to watch this project grow!
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: immich-app/immich#456