应用程序崩溃,因为 "It appears that 'PubNub' is not a valid Fabric Kit"

App crashing because "It appears that 'PubNub' is not a valid Fabric Kit"

首先让我说我正在使用 CocoaPods 来管理我的框架。我不确定这是否真的很重要,但我想你最好知道以防万一。我还在 运行 iOS 10.x 上使用最新版本的 Xcode(非测试版)。


我的应用程序在 Fabric.with([Crashlytics.self, PubNub.self]) 崩溃并出现以下错误:

Terminating app due to uncaught exception 'FABException', reason: '[Fabric] It appears that "PubNub" is not a valid Fabric Kit. Please make sure you only pass Fabric Kits to [Fabric with:].'

我更新了我的 PodFile,清理了我的项目,运行 全新安装,运行 在物理和虚拟设备上,我什至卸载了 pod 'PubNub' 并重新安装它。到目前为止似乎没有任何效果,因此我们将不胜感激任何帮助。

我的 AppDelegate 看起来像这样:

import Fabric
import Crashlytics
import PubNub

func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool {
    /* Fabric (Answers) Debug */
    Fabric.sharedSDK().debug = true
    /* Fabric Setup */
    Fabric.with([Crashlytics.self, PubNub.self])
    return true
}

我的 PodFile 看起来像这样:

# Uncomment the next line to define a global platform for your project
platform :ios, '9.1'

target 'AppName' do
    # Comment the next line if you're not using Swift and don't want to use dynamic frameworks
    use_frameworks!

    # Fabric #
    pod 'Fabric'
    pod 'Crashlytics', '~>  3.8'
    # PubNub #
    pod 'PubNub/Fabric'

    target 'AppNameTests' do
        inherit! :search_paths
        # Pods for testing
    end

    target 'AppNameUITests' do
        inherit! :search_paths
        # Pods for testing
    end
end

我的Info.plist代码:

<key>Fabric</key>
<dict>
    <key>APIKey</key>
    <string>##############################</string>
    <key>Kits</key>
    <array>
        <dict>
            <key>KitInfo</key>
            <dict/>
            <key>KitName</key>
            <string>Crashlytics</string>
        </dict>
        <dict>
            <key>KitInfo</key>
            <dict>
                <key>publish-key</key>
                <string>##############################</string>
                <key>secret-key</key>
                <string>##############################</string>
                <key>subscribe-key</key>
                <string>##############################</string>
            </dict>
            <key>KitName</key>
            <string>PubNub</string>
        </dict>
    </array>
</dict>

我是 Fabric 方面的工程师。我尝试重现您在上面描述的问题,但无法重现。使用新的 Swift 项目和 PubNub/Fabric Cocoapod 似乎一切正常。我唯一的怀疑是你以某种方式在你的项目中以 PubNub 的非 Fabric 构建结束。如果还有什么我可以帮忙的,请随时与我们联系!