На Кордова 3.6.3-0.2.13, оба значения конфигурации будут добавлены, но таким образом:
<key>CFBundleURLTypes</key>
<array>
<dict>
<key>CFBundleURLSchemes</key>
<array>
<string>fb12345678</string>
</array>
</dict>
<dict>
<key>CFBundleURLSchemes</key>
<array>
<string>anotherUrlScheme</string>
</array>
</dict>
</array>
На Кордова 4.0 и выше (4.0.0, 4.1.2, 4.2.0) , второе значение добавленной конфигурации плагина просто проигнорируется. Таким образом, PLIST будет выглядеть (Предполагается, что facebook плагин прибудет добавили первый):
<key>CFBundleURLTypes</key>
<array>
<dict>
<key>CFBundleURLSchemes</key>
<array>
<string>fb12345678</string>
</array>
</dict>
</array>
В качестве обходного пути, мы модифицировали facebook плагин для добавления два схем URL, один из APP_ID (фб $ APP_ID) и создал еще один для плагина URL SCHEME. Мы проверили источник плагина facebook, чтобы иметь возможность изменять источник, и добавили плагин из этого каталога вместо того, чтобы получать от GIT.
В plugin.xml PhoneGap-facebook-плагина:
<config-file target="*-Info.plist" parent="CFBundleURLTypes">
<array>
<dict>
<key>CFBundleURLSchemes</key>
<array>
<string>fb$APP_ID</string>
<string>$URL_SCHEME</string>
</array>
</dict>
</array>
</config-file>
На "плагин добавить" из facebook-плагин, обеспечить URL_SCHEME для другого плагина.
Таким образом, он добавит обе схемы URL для обоих плагинов при установке плагина facebook. Я знаю, что это действительно очень хакерский способ решить эту проблему, но мы должны выполнить эту функцию как можно скорее и не можем дождаться, пока Кордова добавит эту функцию.
Пожалуйста, дайте мне знать, если у вас есть другой подход.
Я думаю, вам следует открыть запрос функции или проблему на кордове JIRA – jcesarmobile
Спасибо, я открыл ее: https://issues.apache.org/jira/browse/CB-8007 – Miquel