应用程序崩溃使用Fabric和TwitterKit

时间:2015-07-22 01:13:29

标签: ios objective-c twitter twitter-fabric

我的应用程序上有这行代码的didFinishLaunchingWithOptions委托方法,它导致崩溃说:

' [Fabric] Info.plist键的值" Fabric"必须是NSDictionary。'

任何人都可以帮我这个吗?

这是造成崩溃的代码:

[[Twitter sharedInstance] startWithConsumerKey:@"consumer_key" consumerSecret:@"secret_key"];
[Fabric with:@[[Twitter sharedInstance]]];

2 个答案:

答案 0 :(得分:16)

Alex来自Fabric。要使用在apps.twitter.com上生成的不同Twitter API密钥或API密钥,您可以在上面的代码中正确声明它。听起来您可能没有通过Fabric应用程序完全启用您的应用程序,并且APIKey中缺少必需的条目,例如Fabric info.plist

有关Fabric Mac App和info.plist的更多信息:

当您通过Mac App登录套件时,Fabric字典条目会被注入您的info.plist。在Fabric父级下,将有两个子条目:APIKeyKits

enter image description here

您的Fabric API密钥,如果由于某种原因未注入(如果您正在使用Fabric应用程序,则应自动添加),或者您想手动更改它,可以通过访问https://fabric.io/settings/organizations,点击您的组织并点击组织标题下方的“API密钥”。

Kits数组包含您已包含的每个Fabric工具包的Item X。如果您已包含Twitter Kit,则自动配置的consumerKey和consumerSecret列在KitInfo下。

答案 1 :(得分:3)

我按照上述步骤操作,但仍然收到此错误

  

未捕获的异常'TWTRInvalidInitializationException',原因:   '在调用必要条件之前尝试调用TwitterKit方法   开始方法;你必须先调用+ [Fabric with:@ [Twitter class]]   使用TwitterKit上的方法

当我使用多个套件时,我尝试按如下方式初始化不同的呼叫

[Fabric with:@[[Crashlytics class]]];
[Fabric with:@[[Twitter class]]];

根据+(instancetype)的Fabric文档,使用:(NSArray *)kitClasses;

  

只有第一次调用此方法才会受到尊重。随后的电话是   空操作。   因此,只有Crashlytics正在初始化并且Twitter被忽略了。

解决方案初始化如下;

[Fabric with:@[[Crashlytics class], [Twitter class]]];