How to specify permissions for watch face deployment

Former Member
Former Member
How do I specify permissions (e.g. Background, Communications, etc.) when I deploy a watch face to my device? When I select my custom watch face on my Forerunner 935, the CIQ_LOG file states, "ERROR: Permission Required", so I assume that the permissions are not part of the prg file that I copied to my garmin/apps folder.
  • Former Member
    Former Member
    Permissions should be specified in the manifest.xml file for your project. There is a graphical editor for these permissions built in to eclipse, but you can always do it manually if you please.
    See this link for more info: https://developer.garmin.com/connect-iq/developer-tools/manifest-file
  • Former Member
    Former Member
    I understand where to specify permissions in the manifest.xml file, but does the "Build for Device Wizard" automatically compile those permissions in the prg file, or do I need to deploy the manifext.xml file separately?
  • Former Member
    Former Member
    You do not need to do anything special to compile your permissions when building for device.

    There are two situations you can receive a permissions error.

    The first situation is using a module without specifying the permission. For example, attempting to access the UserProfile module without adding the permission to your manifest.

    The second situation is specifying a permission, but attempting to use the module in an application mode that is not allowed. For example, specifying the Communications permission for your watchface, and attempting to access the Communications module in your main process. Communications can only be accessed in the background process for watchface application types.

    The error log should specify the location where the error occurred if you can identify the line of code where the permission error occurred, someone should be able to help you identify the specific cause of the failure.
  • Do you see permission errors when you run in the sim? If it's only on the device, make sure you uncheck the "build release version of the project" as that will likely give you more detail in ciq_log.txt