2012-11-13 48 views
2

我在使用iOS的SoundCloud API时遇到了一些麻烦。我已按照其快速入门指南(here)上的说明操作,并将我的标题搜索路径设置为so未找到SoundCloud库

Xcode发现SCUI.h,直到最近没有得到任何语法错误。该应用在iOS模拟器上运行良好,并执行SoundCloud API请求(SCRequest方法)。但我然后去设备上尝试,并遇到these错误,然后当我回到试图在模拟器上测试时,我开始得到these错误。

阅读错误消息并检查我的链接库(here)后,我确定它与Xcode正在搜索头文件的路径有关。或者,也许这些图书馆不存在?我似乎无法在Finder中看到它们,即使在链接库部分中为黑色的.a文件也是如此。

此外,我试过清洗产品(CMD + Shift + K)。这使得该项目将在模拟器上运行,但会导致“断言失败”:

Assertion failure in -[NXOAuth2Client initWithClientID:clientSecret:authorizeURL:tokenURL:accessToken:tokenType:persistent:delegate:], /Users/chiliesontoast/Desktop/iOS/Projects/MobileX Labs/MXLTest App/MXLTestApp/OAuth2Client/Sources/OAuth2Client/NXOAuth2Client.m:82 

然后试图建立一个设备,它返回this错误时。

有没有人有任何解决方案的建议?整天都在困扰我。

谢谢。

回答

3

啊,终于修好了!这是两件事的结合。

首次发行

的第一个问题(herehere)是事做与库和搜索路径。我做了一些不同的事情,不知道是什么修复了它。我这样做:

  1. 更改了标题搜索路径从周围“./**”到‘$ PROJECT_DIR’,最后到“../**”,这是它在现在。
  2. 删除了为SoundCloud API下载的所有文件。
  3. 删除.gitmodules和.git/config中下载的子模块的条目,然后从.git/modules中删除所有API的文件夹。

    的git RM --cache ./OAuth2Client

(重复每个子模块添加的:

  • 然后,我通过导航到终端我的项目的根文件夹,运行取出Git的缓存)。 然后我重新安装了SoundCloudAPI(使用git)并可能清理了项目(CMD + Shift + K)。

    第二期

    第二个问题是一个奇怪的运行时错误

    Assertion failure in -[NXOAuth2Client initWithClientID:clientSecret:authorizeURL:tokenURL:accessToken:tokenType:persistent:delegate:], /Users/chiliesontoast/Desktop/iOS/Projects/MobileX Labs/MXLTest App/MXLTestApp/OAuth2Client/Sources/OAuth2Client/NXOAuth2Client.m:82 
    

    经过一番认真的研究为NXOAuth并查看堆栈跟踪我意识到我需要包括在下面的代码功能,然后尝试执行任何SCRequest方法:

    [SCSoundCloud setClientID:@"XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" 
            secret:@"XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" 
           redirectURL:[NSURL URLWithString:@"AppName://oauth"]]; 
    

    所以,我就是这么解决这个问题的。我真的希望这能帮助一个人,因为我在这个问题上坚持了整整20个小时。

  • +0

    您是一位人生的救星! SoundCloudApi上的文档使人认为仅在安装时才需要设置Id和Secret,而不是每次初始化。谢谢 –

    0

    一直争取这一个了一会儿......错误后击中错误(如果有人遇到一个不同这一点,给我发短信 - 我保证,我打它)

    总之,什么工作对我来说是当你点击项目文件时,你可以选择检查项目或目标的构建设置。直到我将$ PROJECT_DIR输入到项目构建设置标题搜索路径而不是目标构建设置(或两者)后,它才适用于我。