I'm trying to make an Audio Content Provider. According to the Manifest File docs, my manfiest.xml needs to declare that the app is an Audio Content Provider by setting the Application Type attribute as "audio-content-provider". Something like:
<iq:manifest version="1"> <iq:application entry="CommExample" id="a3421feed289106a538cb9547ab12095" name="SomeMusic" launcherIcon="LauncherIcon" type="audio-content-provider" minApiLevel="1.3.1"> <iq:products> <iq:product id="vivoactive"/> </iq:products> <iq:permissions> <iq:uses-permission id="Communications"/> </iq:permissions> </iq:application> </iq:manifest>
However, when I try to compile my app, it fails, reporting that "audio-content-provider" is not a recognised application type:
❯ monkeyc -d vivoactive -f monkey.jungle -o bin/somemusic.prg -y ../dev_key.der ERROR: com.garmin.connectiq.common.manifest.ManifestException: Unknown app type: audio-content-provider com.garmin.connectiq.common.manifest.ManifestException: [102] com.garmin.connectiq.common.manifest.ManifestException: Unknown app type: audio-content-provider at com.garmin.monkeybrains.Monkeybrains.runPRGCompiler(Monkeybrains.java:1290) at com.garmin.monkeybrains.Monkeybrains.compileApplication(Monkeybrains.java:1175) at com.garmin.monkeybrains.Monkeybrains.run(Monkeybrains.java:2477) at com.garmin.monkeybrains.Monkeybrains.simpleMain(Monkeybrains.java:252) at com.garmin.monkeybrains.Monkeybrains.main(Monkeybrains.java:281)
I then came across the example Audio Content Provider app supplied by Garmin on their GitHub repo. This app does not use "audio-content-provider" in its manifest.xml; it uses "audio-content-provider-app". When I updated my manifest.xml to use "audio-content-provider-app" as the Application type, my app compiled successfully, and shows as a Music Provider on my watch.
The docs should be updated with the correct application type, "audio-content-provider-app".