Creating the 'layers' folder on new installation of ODK

1. What is the issue? Please be detailed.
When setting up a new device with ODK Collect the Layers folder is not created automatically on installation. So if a user is trying to transfer offline layers to the device it is more complicated than necessary.

I think you need to look in project settings for Maps > Reference layer - then the folder is created if you give Collect permission to access storage (it's been a few months since I had to do it so I am a little vague on that, but a user has just asked me how to do it remotely on their new device and I'm trying to write instructions as it's not covered fully in the Docs).

Is there a way of ODK Collect creating the folder during installation?

2. What steps can we take to reproduce this issue?

Install Collect on a new device - connect the device to a PC and look in the folder structure for the layers folder - it is missing
3. What have you tried to fix the issue?
Manually created the folder.

Many thanks.

No, it's not possible. All directories that we use (layers, forms, instances etc.) are only created when they are really needed. So in order to have the layers dir created you have to access maps by opening one of the map widgets (geopoint/geotrace/geoshape) or as you have noticed navigate to the map settings.

It depends on how you push your layers to your device. If you do that using a file manager then of course you have to create that directory first and then copy the file (it also depends on the tool you are using because some might support copying whole dirs).

If you adb (see: Then you can push the whole layers dir from your computer like:
sudo adb push layers /sdcard/Android/data/

Hi @Grzesiek2010
Thanks for your response - it explains the problem I am facing but leaves Android missing something helpful!

At least I know that I'm not missing something obvious.

As always, I appreciate your help and advice.