Я только столкнулся с этой проблемой и решил ее.
Проблема в том, что когда вы «перетаскиваете» проект xcode SDWebImage в свой проект, Xcode создает только ссылку, указывающую на нужные файлы. Когда вы находитесь в режиме отладки, это нормально, он знает, где найти эти файлы. Однако, когда вы хотите заархивировать его (упаковывая все, чтобы быть автономным), он не может найти его из вашего пути поиска.
Несмотря на то, что вы добавили $ (BUILT_PRODUCTS_DIR) в путь поиска, но если загруженные вами файлы физически не находятся в вашем $ (BUILT_PRODUCTS_DIR), Xcode их не найдет. Это было проблемой для меня, так как мои файлы SDWebImage все еще находились в моей папке загрузки.
То, что вы хотите сделать, это:
1.Переместите папки SDWebImage в место, где вы не сможете случайно удалить его. Обратите внимание, что как только вы это сделаете, файл проекта SDWebImage станет красным, поскольку его физическое местоположение перемещено. И это связано с тем, что я не мог удалить эту ссылку в XCode, в результате я снова добавил этот файл (выбирая из того места, куда я его тоже переместил). Вы получите красный SDWebImage.xcodeproj в вашем навигаторе проекта, который вы не можете удалить. Это очень раздражает, но это ни на что не повлияет.
2. Если место, в которое вы перемещаете материал SDWebImage, отсутствует в вашем $ (BUILT_PRODUCTS_DIR), то вы либо перемещаете его в $ (BUILT_PRODUCTS_DIR), либо, как я, добавляете путь к Target -> Build Settings -> Search Paths -> Пути поиска заголовка пользователя.
Архив и теперь он должен работать.