Using external camera app - Issue with using APPEARANCE field

Hi,

Just sharing the experience of testing the external camera app with ODK Collect. I installed and used OPENCAMERA as external app, and programmed the form to trigger it. It works fine with normal values (camera gets triggered, and I get the required image with additional parameters embedded on it.

However, I observed that if I set the APPEARANCE as NEW (to force the camera to not open gallery), the form does not trigger the external OPENCAMERA app. Instead it opens its own standard camera.

So if I remove the NEW appearance, external app does open fine, but the interface starts offering the selection of gallery pic via button, which is something I am trying to avoid.

Any way to solve this?

Thanks,
Saad

Hi @Saad

There are two different ways to start a non default camera app from ODK Collect

The difference between the two options is that in the second case, the camera app must be compatible with ODK Collect and return images in a format specific to it. In contrast, the first option is more versatile, following a more standard Android approach rather than being tailored to ODK Collect.
So, the first option is more recommended, but in that case, the parameters column (see the documentation) should be used to set the package name, not the appearance.

If you're using the first option, there shouldn't be an issue, as the application's package name is set in a different column from the appearance, so no conflict should arise. However, if for some reason you need to use the second option, it should still be possible to combine appearances with package names in the same column.

Could you attach your form?

Indeed, Collect doesn't support the new appearance with custom camera apps.

As far as I know, there isn't a standard way to require that camera apps be used to take new pictures so unfortunately it's not functionality we can add. We should update documentation to make this limitation clear.

I don't think that approach supports any additional appearances either, right? So others would be ignored.

It does. Not with external question types but the image one can be used with a custom camera app and that appearance.
survey_example.xlsx (5.8 KB)

The NEW appearance is just for hiding the Choose Image button and it seems to work well.

Sorry here I made a mistake the External app image widget contains only one button LAUNCH so there is nothing to configure there.

@Saad which question type of those two were you using? I guess Image widget with custom camera app?

1 Like