My app is using a Siri extension with custom Siri intents, which is a new feature for Xcode 10 / iOS 12. I design my custom Siri intents in a .intentdefinition file (included for both app and extension targets).
My custom (not system) Siri intents are declared within the "Do" category.
A Siri intent also requires a AppIntentVocabulary.plist file with example phrases in it https://developer.apple.com/documentation/sirikit/registering_custom_vocabulary_with_sirikit
I've got my AppIntentVocabulary.plist included for the app target only. It looks like this:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>IntentPhrases</key>
<array>
<dict>
<key>IntentName</key>
<string>MyIntentName1</string>
<key>IntentExamples</key>
<array>
<string>Do stuff with foo</string>
<string>Do stuff with fu</string>
</array>
</dict>
<dict>
<key>IntentName</key>
<string>MyIntentName2</string>
<key>IntentExamples</key>
<array>
<string>Do other stuff</string>
</array>
</dict>
</array>
<key>ParameterVocabularies</key>
<array>
<dict>
<key>ParameterNames</key>
<array>
<string>MyIntentName1.someParam</string>
</array>
<key>ParameterVocabulary</key>
<array>
<dict>
<key>VocabularyItemIdentifier</key>
<string>paramName</string>
<key>VocabularyItemSynonyms</key>
<array>
<dict>
<key>VocabularyItemPhrase</key>
<string>foo</string>
<key>VocabularyItemPronunciation</key>
<string>fu</string>
<key>VocabularyItemExamples</key>
<array>
<string>Do stuff with foo</string>
</array>
</dict>
<dict>
<key>VocabularyItemPhrase</key>
<string>bar</string>
<key>VocabularyItemPronunciation</key>
<string>bur</string>
<key>VocabularyItemExamples</key>
<array>
<string>Do stuff with bar</string>
</array>
</dict>
</array>
</dict>
</array>
</dict>
</array>
</dict>
</plist>
It builds fine and works ok too. But when I'm trying to submit it to App Store, I get:
[Transporter Error Output]: ERROR ITMS-90624: "Invalid Intent Vocabulary. The AppIntentVocabulary.plist file in the Payload/AppName.app/en.lproj folder can't contain the intent name "MyIntentName1"."
And there are subsequent error messages repeating for every .lproj folder.
If it helps, my app is localized for 14 languages, the project is not using base localization.
