2

iOS 用の SoundCloud API に問題があります。クイックスタート ガイド (こちら) の指示に従い、ヘッダー検索パスをそのように設定ました。

Xcode は SCUI.h を検出しており、最近まで構文エラーは発生していませんでした。アプリは iOS シミュレーターで正常に動作し、SoundCloud API リクエスト (SCRequest メソッド) を実行していました。しかし、デバイスで試してみるとこれらのエラーが発生し、シミュレーターでテストしようとすると、これらのエラーが発生し始めました。

エラー メッセージを読み、リンクされたライブラリ (ここ) を確認した後、Xcode がヘッダーを検索しているパスと関係があると確信しています。それとも、それらのライブラリが存在しないだけですか? リンクされたライブラリセクションで黒で表示されている .a ファイルでさえ、Finder でそれらを表示できないようです。

また、製品のクリーニングを試みました (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

そして、デバイス用にビルドしようとすると、このエラーが返されます。

解決策の提案はありますか? 一日中本当に悩まされています。

ありがとう。

4

2 に答える 2

3

あ、やっと治った!それは2つのことの組み合わせでした。

創刊

最初の問題 (ここここ) は、ライブラリと検索パスに関係するものでした。私はさまざまなことをしましたが、何がそれを修正したのかわかりません。これは私がしました:

  1. ヘッダー検索パスを "./**" から "$PROJECT_DIR" に変更し、最後に "../**" に変更しました。これが現在の状態です。
  2. SoundCloud API 用にダウンロードしたすべてのファイルを削除しました。
  3. .gitmodules および .git/config でダウンロードしたサブモジュールのエントリを削除し、.git/modules からすべての API のフォルダーを削除しました。
  4. 次に、ターミナルでプロジェクトのルート フォルダーに移動し、次のコマンドを実行して、git キャッシュを削除しました。

    git rm --cache ./OAuth2Client

(そして、追加されたサブモジュールごとに繰り返されます)。次に、SoundCloudAPI を (git を使用して) 再インストールし、おそらくプロジェクトをクリーンアップしました (CMD+Shift+K)。

第二号

2 つ目の問題は、奇妙なランタイム エラーでした。

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時間立ち往生していたので、これが誰かに役立つことを本当に願っています.

于 2012-11-13T18:32:56.913 に答える
0

しばらくこれと戦っています...エラーの後にエラーをヒットします(誰かがこれとは別のものに遭遇した場合は、私にメッセージを送ってください-私はそれをヒットしたことを保証します)

とにかく、私にとってうまくいったのは、プロジェクトファイルをクリックすると、プロジェクトまたはターゲットのビルド設定をチェックする選択肢があるということです. $PROJECT_DIR をターゲット ビルド設定の代わりにプロジェクト ビルド設定ヘッダーの検索パス (またはその両方) に入力するまで、うまくいきませんでした。

于 2013-10-31T01:38:13.350 に答える