7

画像を非同期的に読み込むために、SDWebImage オープン ソース プロジェクトを使用しています。ローカル デバイスだけでなく、シミュレーターもビルドして実行できます。ただし、配布用にビルド (つまりアーカイブ) しようとすると、コンパイラはヘッダー ファイルが何であるかを理解していないようです。

「UIImageView+WebCache.h」をインポートします (そのようなファイルやディレクトリはありません)。

ここ github.com/rs/SDWebImage で説明されている手順に、比較的簡単にほぼ従いました。

私は、物事がスムーズに/簡単に進んでいることが真実ではないことを知っていました. 奇妙なことに、アーカイブ専用の問題に実際に直面したことはありません。SDWebImage でアーカイブを試した人はいますか?

*更新* 以下のコメントに基づいて更新しました。アーカイブの構築中に次のエラーが表示されます。

arm-apple-darwin10-llvm-gcc-4.2: Poll/BuildProductsPath/Release-iphoneos/libSDWebImage.a: そのようなファイルまたはディレクトリはありません コマンド /Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/llvm-gcc-4.2終了コード 1 で失敗しました

奇妙なことに、私のプロジェクトには sdwebimage.a ファイルがあります (実際には 2 つあり、1 つはコピーして含めたもので、もう 1 つは SDWEbImage プロジェクト自体からのものです)。

* Update 2 * さらに調査したところ、SDWebImage プロジェクトはアーカイブ時にビルドされません (.a ファイルは赤です)。ただし、他のビルド タイプは問題なく動作します。どこを見ても、SDWebImage プロジェクトにディストリビューション構成があるようです。ここで他に何が問題になるかはわかりません。

4

5 に答える 5

8

セットアップはそのままにしておくことができます。必要なのは、ヘッダーファイルを検索パスに追加することだけです。必要なヘッダーファイルを検索パスに追加するには、次の手順を実行します。

  1. プロジェクトファイルを選択します
  2. ターゲットを選択してください
  3. ビルド設定を選択します
  4. 検索ボックスに「ヘッダー検索パス」と入力します
  5. リリース追加の場合"$(SOURCE_ROOT)/SDWebImage"(引用符付き)。

これは、このようにインポートするときに機能します#import <SDWebImage/UIImageView+WebCache.h>

于 2012-05-22T03:56:52.077 に答える
1

私は(引用符で)追加することによってそれを非常に簡単に解決しました:

"$(SRCROOT)/SDWebImage"

プロジェクトのビルド設定の下にあるさまざまなヘッダー検索パスに移動します。SDWebImage / UIImageView+WebCache.hファイルのLizardに感謝します。彼のソリューションは見つかりませんでした。

于 2012-07-04T18:33:56.530 に答える
1

だから、私は他の人も同じ問題を抱えていたかもしれません。私は今朝しばらくそれに取り組みましたが、すべての提案が機能していないことがわかりました。

手順に記載されているように、ワークスペースライブラリをプロジェクトに追加することで、どのように機能するようになりましたか。ファイルが赤くないことを確認してください。ファイルを削除して、ヘッダー検索パスを再度追加する必要がありました。
最後に、libSDWebImage.a ファイルを確認できました。そのファイルを右クリックし、「Finder で表示」 libSDWebImage.a および SDWebImage/ .h ファイルを削除しないディレクトリに移動します libSDWebImage.a および SDWebImage/ .h ファイルをプロジェクトに追加します 今すぐアーカイブできます。

それがうまくいくことを願っています。

于 2012-02-01T19:04:23.440 に答える
1

上記のヘッダーパスを追加する方法をすべて試しましたが、何も機能しませんでした。デバッグでは問題なくプロジェクトをビルドできますが、アーカイブはできません。簡単なことを試しただけで、うまくいきました。

ファイル「UIImageView+WebCache.h」は、サブプロジェクト SDWebImage.xcodeproj の一部です。私のメイン ワークスペース プロジェクトでは、単に「ファイルの追加」を実行し、ディスク上で「UIImageView+WebCache.h」を見つけて、メイン プロジェクトに追加しました。 . これで、そのファイルはメイン プロジェクトの一部になりました。アーカイブを実行したところ、うまくいきました..私は少しばかげていますが、少なくともうまくいきました

于 2012-06-07T05:48:19.137 に答える
0

私にとって、これはヘッダー検索パスに追加されたときに機能しました(これはSDWebImageプロジェクトへの正確なパスです)

「$(PROJECT_DIR)/プロジェクト名/ライブラリ/SDWebImage」

于 2014-06-03T11:09:12.147 に答える