I’m having some trouble with the SoundCloud API for iOS. I’ve followed the directions on their quickstart guide (here) and set my Header Search Path like so.
Xcode is finding SCUI.h and until recently wasn’t getting any syntax errors. The app was running fine on the iOS Simulator and executing SoundCloud API requests (SCRequest methods). But I then went to try it on-device and encountered these errors, then when I went back to trying to test on the Simulator I started getting these errors.
After reading the error messages and checking my linked libraries (here) I’m certain it has something to do with the path that Xcode is searching for the headers. Or maybe those libraries just don’t exist? I can’t seem to see any them in Finder, even the .a files that are in black in my linked libraries section.
Also, I’ve tried cleaning the product (CMD+Shift+K). This allows the project to be run on the simulator but causes an “Assertion failure”:
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
And then when trying to build for a device it returns this error.
Has anybody got any suggestions for a solution? It’s been really bothering me all day.
Thanks.
Ah, finally fixed it! It was a combination of two things.
First Issue
The first issue (here and here) was something to do with with the libraries and search paths. I did a load of different things, not sure what fixed it. I did this:
Then I removed the git cache by navigating to my project’s root folder in Terminal and running:
git rm –cache ./OAuth2Client
(And repeated for each of the added submodules).
I then reinstalled the SoundCloudAPI (using git) and possibly cleaned the project (CMD+Shift+K).
Second Issue
The second issue was with a weird runtime error
After some serious research into NXOAuth and looking at the stack trace I realised that I needed to include the following code in the function before trying to perform any SCRequest methods:
So, that’s how I went about solving it. I really hope this helps someone as I was stuck for a whole ~20 hours on this.