通过解析进行Twitter登录初始化不起作用:Swift

通过解析进行Twitter登录初始化不起作用:Swift,twitter,parse-platform,swift2,xcode7-beta6,Twitter,Parse Platform,Swift2,Xcode7 Beta6,[Xcode V.7.0 Beta 6,OSX El Capitan,iOS9] 我正在尝试使用最新版本的Parse SDK添加Twitter登录。我尝试了几种将Twitter登录与解析集成的方法,但都不起作用。我已经添加了我的consumerkey/secret,它说我需要初始化我已经完成的PFTwitterUtils 您必须调用PFTwitterUtils initializeWithConsumerKey:ConsumerCret:才能使用PFTwitterUtils。我在下面发布了完整的

[Xcode V.7.0 Beta 6,OSX El Capitan,iOS9]

我正在尝试使用最新版本的Parse SDK添加Twitter登录。我尝试了几种将Twitter登录与解析集成的方法,但都不起作用。我已经添加了我的consumerkey/secret,它说我需要初始化我已经完成的PFTwitterUtils

您必须调用PFTwitterUtils initializeWithConsumerKey:ConsumerCret:才能使用PFTwitterUtils。我在下面发布了完整的错误以及我的github存储库

目前,我没有添加ParseTwitterUtils框架,因为它在Parse.com上的《快速入门指南》中没有说我需要添加它。但是,当我添加模块时,我得到一个链接器错误。当我取出它时,我得到下面的错误

我采取的步骤:

起初,我遇到了PFTwitterUtils模块未出现或未被识别的问题。我在这个链接中添加了框架,并在这里使用SDK构建了这个项目: 与此链接类似的问题:

我在github上发布了这个问题,认为这是他们这边的一个bug:

我被建议检查框架搜索路径,看看模块是否位于搜索路径指向的文件夹中。它看起来不错,但仍然不起作用,因此我还尝试向ParseSDK添加另一条路径,但也不起作用

然后,我从另一个来源获取了一个Parse Starter项目,PFTwitterUtils在那里工作。我的github存储库下面有新的框架,但是我得到了下面提到的错误。我认为这是一种更好的方法,因为现在PFTwitterUtils在Xcode中被识别,但在构建项目时却没有。在twitter上制作应用程序时,我还检查了回调URL。我发现了一个堆栈溢出问题,该问题与回调URL有关。我也编辑了它,但仍然不起作用。 下面是我得到的错误:

2015-10-14 13:13:18.374 ParseStarterProject[3757:390022]***由于未捕获的异常“NSInternalInconsistencyException”而终止应用程序,原因是:“您必须调用PFTwitterUtils initializeWithConsumerKey:ConsumerCret:才能使用PFTwitterUtils。” ***第一次抛出调用堆栈: 0 CoreFoundation 0x000000010f9849b5例外预处理+165 1 libobjc.A.dylib 0x000000011927deb objc_异常_抛出+48 2 CoreFoundation 0x000000010f9848ed+[N异常提升:格式:][205 3 ParseStarter项目0x000000010eddcd7e+[PFTwitterUtils logInInBackground]+31 4 ParseStarterProject 0x000000010eddce30+[PFTwitterUtils logInWithBlock:+48 5 ParseStarter项目0x000000010edca6b1\u TFC19 ParseStarter项目14视图控制器11视图DIDLOADDFS0\u FT\u T\u417 6 ParseStarter项目0x000000010edca8c2\u TTOFC19 ParseStarter项目14视图控制器11视图加载FS0\u FT\u T\u34 7 UIKit 0x00000001106cbd05-[UIViewController loadViewIfRequired]+877 8 UIKit 0x00000001106cc054-[UIViewController视图]+27 9 UIKit 0x00000001105ab77c-[UIWindow AddRootViewControllerServiceWifPossible]+61 10 UIKit 0x00000001105abe79-[UIWindow\u setHidden:强制:][302 11 UIKit 0x00000001105bd6dc-[UIWindow makeKeyAndVisible]+43 12 UIKit 0x000000011053dd13-[UIApplication\u callInitializationDelegatesForMainScene:transitionContext:+4003 13 UIKit 0x000000011054413d-[UIApplication\u在主场景中运行:transitionContext:completion:+1755 14 UIKit 0x0000000110541390-[UIApplication WorkspaceDiEndTransaction:][188 15 FrontBoardServices 0x00000001193b57ac-[FBSSerialQueue\u performNext]+192 16 FrontBoardServices 0x00000001193b5b1a-[FBSSerialQueue _performNextFromRunLoopSource]+45 17 CoreFoundation 0x000000010f8b0b21\uuuu CFRUNLOOP\u正在调用\u OUT\u以执行\u函数\uuuu+17 18 CoreFoundation 0x000000010f8a6a4c_u CFRunLoopDoSources0+556 19 CoreFoundation 0x000000010f8a5f03\uuu CFRunLoopRun+867 20 CoreFoundation 0x000000010f8a5918 CFRunLoopRunSpecific+488 21 UIKit 0x0000000110540d2d-[UIApplication_run]+402 22 UIKit 0x000000011054599e UIApplicationMain+171 23项目0x000000010edcce6d干管+109 24 libdyld.dylib 0x0000000116bed92d启动+1 25 ??? 0x0000000000000001 0x0+1 libc++abi.dylib:以NSException类型的未捕获异常终止 lldb

//

在存储库中,选择ParseTwitterUtils.frame 工作模块不在那里。但一旦我导入它,我就会得到一个链接器错误

可能是我缺少一个框架搜索路径吗?当我添加框架所在的框架搜索路径时,它不会改变任何东西。有没有关于如何在我当前使用的SDK中添加带有Parse的TwitterSDK的想法

这是指向我的存储库的链接

任何帮助都意义重大。先谢谢你


如果我能提供更多信息,请告诉我

我解决了。正如我提到的,我去了github并得到了帮助

这就是问题的答案:

根据本指南,要启用Twitter身份验证,您需要调用PFTwitterUtils.initializeWithConsumerKey:ConsumerCret: 由于您没有初始化twitter utils,因此没有必要从cocoapod中取消链接/删除ParseTwitterUtils,因此引发了一个异常。 pod'ParseTwitterUtils'和ParseTwitterUtils.framework是互斥的,因为它们是完全相同的东西,唯一的区别在于如何安装它们

解决方案如下:我需要编辑AppDelegate didFinishLaunchingWithOptions方法以反映以下内容:

`Parse.enableLocalDatastore()
Parse.setApplicationId("...",
        clientKey: "...")

PFTwitterUtils.initializeWithConsumerKey("...",     consumerSecret:"...")`
希望这能帮助将来有这个问题的人