This appears to be a bug. It looks like TwitterKit is trying to validate the Info.plist, but the validation logic is incorrect.
This crashes:
<array>
<dict>
<key>CFBundleURLSchemes</key>
<array>
<string>fb12345678…</string>
<string>twitterkit-1232334232332423</string>
<string>mycustomurlscheme</string>
<string>anothercustomurlscheme</string>
</array>
</dict>
</array>
But this works:
<array>
<dict>
<key>CFBundleURLSchemes</key>
<array>
<string>twitterkit-1232334232332423</string>
<string>fb12345678…</string>
<string>mycustomurlscheme</string>
<string>anothercustomurlscheme</string>
</array>
</dict>
</array>
Unless twitterkit-12345678… appears as the first URL scheme, it crashes. Since URL schemes are commonly used, it’s not really OK to require that Twitter be first.