> For the complete documentation index, see [llms.txt](https://help.adalo.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://help.adalo.com/component-basics/forms-and-fields/image-picker.md).

# Image Picker

### How It Works

The Image Picker opens your device’s file picker or camera, depending on the **build type**, **operating system**, and **browser**. Once a user selects or captures an image, the file is stored in your database or used in your app flow.

{% hint style="success" %}
Camera and Gallery Permissions are prompted initially with no additional setup needed.
{% endhint %}

***

### Expected Behavior Across Platforms

Because the Image Picker relies on the device and browser APIs, its behavior varies:

#### iOS

* **Native App (App Store / TestFlight build)**:\
  ✅ Users can select from **Camera** or **Photo Library**.
* **PWA (installed or Web)**:

  ✅ **Safari (iOS)**: Users can select photo from **Photo Library, Camera, or Files**

  ✅ **Chrome (iOS)**: Users can select photo from **Photo Library, Camera, or Files**

#### Android

* **Native App (Play Store / APK build)**:\
  ✅ Users can select from **Camera** or **Gallery**, using system camera APIs.
* **PWA (installed via Chrome / other browsers)**:\
  ⚠️ Users usually **only see Gallery (Photos or Albums)**\
  The Camera option does **not appear.**\
  ⚠️ Browser behavior may also differ by version (e.g., Chrome vs. Samsung Internet).

***

### &#x20;Limitations & Workarounds

* On **Android PWAs**, users cannot directly access the Camera inside the Image Picker. Instead, they should:
  1. Take a photo with the Camera app.
  2. Select it from the Gallery when uploading in your PWA.
* If your app requires frequent camera use, we recommend distributing it as a **native build** rather than relying on the PWA version.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://help.adalo.com/component-basics/forms-and-fields/image-picker.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
