1

我使用的面料没有问题,但是自从新的 twitterkit 3.0 更新以来,我遵循了所有安装文档,但是当我使用 TWTRComposer 时,应用程序崩溃并显示以下消息:“'TWTRInvalidInitializationException',原因:'尝试登录或点赞一条推文,但没有在应用程序设置中设置的有效 Twitter 工具包 URL 方案。” 似乎无法找出解决方案。

// Swift
    let composer = TWTRComposer()

    composer.setText("just setting up my Twitter Kit")
    composer.setImage(image.image)

    // Called from a UIViewController
    composer.show(from: self.navigationController!) { (result) in
        if (result == .done) {
        print("Successfully composed Tweet")
        } else {
        print("Cancelled composing")
        }
    }

以下是应用程序委托 didFinishLaunchingWithOptions 代码

Twitter.sharedInstance().start(withConsumerKey:"xxxxxxxxxxxx", consumerSecret:"xxxxxxxxxxxxxxxxxxxxxxxxxxxxx")

以下是我的 infoPlist 代码

<key>CFBundleURLTypes</key>
<array>
    <dict>
        <key>CFBundleURLSchemes</key>
        <array>
            <string>twitterkit-consumentkeyxxxxxxx</string>
            <string>fbkeyxxxxxxxxxxxx</string>
            <string>xxxxxxxxx</string>
        </array>
    </dict>
</array>
<key>LSApplicationQueriesSchemes</key>
<array>
    <string>fbapi</string>
    <string>fb-messenger-api</string>
    <string>fbauth2</string>
    <string>fbshareextension</string>
    <string>twitter</string>
    <string>twitterauth</string>
</array>

应用程序启动时不是没有问题,但是当我按下按钮在 Twitter 上分享时,调用 Twitter 作曲家并且在“composer.show”行应用程序崩溃。由于 ios11 内置帐户功能的更改,我需要使用 twitter sdk 删除

4

1 回答 1

10

您需要像这样单独添加密钥:

<key>CFBundleURLTypes</key>
    <array>
        <dict>
            <key>CFBundleTypeRole</key>
            <string>Editor</string>
            <key>CFBundleURLSchemes</key>
            <array>
                <string>fb-fbid-</string>
            </array>
        </dict>
        <dict>
            <key>CFBundleTypeRole</key>
            <string>Editor</string>
            <key>CFBundleURLSchemes</key>
            <array>
                <string>twitterkit-twitterKey</string>
            </array>
        </dict>
    </array>
于 2017-06-20T11:39:04.753 回答