Приложений файл не найден
недавно открыл проект, который я скомпилировал и представил в Apple.
Я не касался его в течение нескольких месяцев, но я получаю эту странную ошибку компиляции в:
#import <Crashlytics/Crashlytics.h>
ошибка гласит:
'Crashlytics/Crashlytics.h' file not found
какие-либо предложения, почему?
Xcode: 4.6.3 Mac OS X: 10.8.4
12 ответов:
просто добавить
$(SRCROOT)
до Пути Поиска Фреймворка в настройках сборки проекта (пути поиска).процесс установки Crashlytics сбрасывает его
Crashlytics.framework
в папку проекта (или создает симлинк).если вы переехали Crashlytics.фреймворк где - то глубже в иерархии папок проекта-установите "рекурсивный" вправо или просто укажите прямо на его родительскую папку в
Header Search Paths
:
$(SRCROOT)/Path/to/the/folder/containing/Crashlytics.framework
удалить фреймворки из проекта и диска. Убедитесь, что у вас установлена самая новая версия плагина Fabric.
скопируйте фреймворки из папки плагина на рабочий стол с помощью следующих команд:
ditto -xk ~/Library/Caches/com.crashlytics.mac/5b91b14e832a7b1c29441ec5ba109810/sdks/ios/com.twitter.crashlytics.ios-default.zip ~/Desktop/ ditto -xk ~/Library/Caches/com.crashlytics.mac/5b91b14e832a7b1c29441ec5ba109810/sdks/ios/io.fabric.sdk.ios-default.zip ~/Desktop/
добавление фреймворков с рабочего стола в проект.
информация из: https://twittercommunity.com/t/error-upgrading-from-crashlytics-on-ios/36196/2
Я бы рекомендовал просто использовать CocoaPods, чтобы добавить структуру Crashlytics. Больше не нужно заботиться о путях.
Podfile:
pod 'Crashlytics', '~> 3.4.1'
этап сборки скрипта для загрузки dSYM:
./Pods/Crashlytics/iOS/Crashlytics.framework/run <your_crashlytics_id>
импорт:
#import <Crashlytics/Crashlytics.h>
для меня это работает:
удалите структуры fabric и crashlytics из вашего проекта и удалите файлы с диска для нашего проекта.
прокомментируйте строки в вашем
appdelegate.m
файл, если вы добавили их для следующего:import Fabric/Fabric.h import Crashlytics/Crashlytics.h
и
[Fabric with:@[CrashlyticsKit]];
в приложении fabric выберите "новое приложение" и выберите файл проекта Xcode
перепишите сценарий сборки и построить в соответствии с инструкциями. Шаг сборки-это то, почему вам нужно прокомментируйте строки выше - это не сработает, если вы оставите эти строки.
после запуска сценария сборки вам будет предложено перетащить фреймворки из окна приложения в навигатор проекта. Это скопирует последние версии фреймворков he (которые включают в себя .H-файлы) на ваш проект
Я пробовал вручную загружать и копировать из других проектов, но это единственный способ, которым я мог бы восстановить после потери файлов фреймворков для приложения.
в моем случае фреймворк был в папке проекта, но не в навигаторе проекта. Я перетащил его в проект и все работало нормально.
у меня была эта проблема, работающая с распределенными командами (через github) после регистрации затем проверить
Crashlytics
. ЭлементCrashlytics.framework
будет только одна папка внутри него -- "версии". Вам нужно сохранить версию содержимого внутриCrashlytics.framework
в другое место, а затем скопировать их вCrashlytics.framework
позже.
в моем случае я переходил от старой установки Crashlytics через приложение Mac к Cocoapods. Многие ответы на этот вопрос рекомендуют полностью удалить все и начать все сначала. Я начал делать это и заметил несоответствие между кодом, найденным в ткань документации и код, показанный в приложении Fabric во время шага, где он говорит вам, что нужно скопировать в фазу сборки сценария запуска.
документация Fabric имеет двойные кавычки вокруг вся строка:
"${PODS_ROOT}/Fabric/Fabric.framework/run <Your_API_Key> <Your_Build_Secret>"
в приложении Fabric были только двойные кавычки вокруг пути к
run
исполняемый файл:"${PODS_ROOT}/Fabric/Fabric.framework/run" <Your_API_Key> <Your_Build_Secret>
поэтому, прежде чем удалить все и начать все сначала, попробуйте обновить этап сборки сценария запуска следующим образом:
"${PODS_ROOT}/Fabric/Fabric.framework/run" <Your_API_Key> <Your_Build_Secret>
Я изменил имя рабочей папки и Craslytics не удается. Проверьте это в настройках сборки (пути поиска).
удачи!
Я попытался играть с путем поиска фреймворков и перемещением и повторным подключением файла фреймворка; проверил настройки сборки (раздел Link binary with libraries), но ошибка сохранилась.
наконец, я переустановил фреймворк, который занимает всего 2-3 минуты. Проблема может быть вызвана тем, что вы переехали в приложений.фреймворк в другую подпапку из корневого каталога, но я не уверен в точной причине.
- удалить все, что касается приложений
- запустите приложение crashlytics, войдите в систему и выберите свой проект
- добавить запуск скрипта
- перетащите & падение .файл фреймворка (я сохранил его в корневой папке)
- добавить
import
иstartWithAPIKey
заявлений
- полностью удалите рамки Crashlytics на вашем proj включите сценарий оболочки в сценарий запуска этапов сборки приложения.
- переустановите ткань следуйте инструкциям, все будет в порядке.
Я ранее обновился до ткани и не было никаких проблем. Через пару дней я снова открыл тот же проект и получил недостающие crashlytics.файл проблемы ч.
Я не мог просто переустановить плагин из-за некомпилирующего проекта (у меня было так много сообщений CLS_LOG и ссылок на отсутствующие crashlytics.H-файл в моем проекте, потребовалось бы много времени, чтобы удалить их, чтобы позволить сборке работать - рефактор не будет работать на CLS_LOG).
Так вместо этого, я удалил приложений.фреймворк из моего проекта и сделал следующее, чтобы восстановить его из плагина напрямую:
загрузите плагин Fabric еще раз и дважды щелкните zip-файл, чтобы распаковать приложение Fabric.
щелкните правой кнопкой мыши значок ткани и "показать содержимое пакета"
скопируйте Crashlytics.папка framework на рабочий стол, а затем повторно добавить его в свой проект с помощью File - > Add Files to ....
Если Шаг 3 не работает для вас, вы также можете добавить crashlytics.фреймворк в папку проекта на вашем компьютере напрямую, а затем также добавить его в список проектов с помощью Xcode же, как в шаге 3, но снимите флажок "копировать элементы, если это необходимо", как вы уже положили файлы там самостоятельно.
затем мой проект был скомпилирован и снова работал нормально.
с точки зрения догадки о том, почему файл пропал без вести? Часть процесса обновления заставила меня удалить старые рамки, а затем запустить скрипты и т. д. из плагина. Я думаю, что произошло позже, когда я очистил свой мусор, что некоторые ссылки были потеряны. У меня также была проблема, когда я поместил Crashlytics в свой .файл gitignore, поэтому он исчез из всех моих проектов, каждый из которых был совершен, что было не очень здорово.
надеюсь, это кому-то поможет!