IOS xcode 5 crashlytics error - Shell Script Ошибка вызова.. /Crashlytics.framework/run: разрешение отклонено
У меня есть Crashlytics Framework, добавленный в мой проект, с script.
Выполнить script:
Shell:/bin/sh
Script:./Crashlytics.framework/run KEY_HERE
Когда я пытаюсь запустить проект, я получаю следующую ошибку:
Shell Script Ошибка вызова.. /Crashlytics.framework/run: отказ в доступе
НО, если я удалю фреймворк и добавлю его снова, он отлично работает... ОДИН. Тогда в следующий раз я получу ту же ошибку. Затем я должен удалить его и снова добавить, чтобы он работал только один раз, а затем тот же рассказ...
Есть ли у кого-нибудь идея, как это исправить? СПАСИБО заранее.
Ответы
Ответ 1
Сохраняете ли вы свой проект и структуру Crashlytics в Dropbox? Я заметил, что Dropbox изменяет/сбрасывает установленные разрешения.
Попробуйте приостановить синхронизацию Dropbox, а затем установите разрешения от Crashlytics.framework/run
до 755.
UPDATE:
chmod 755 run
работал только для меня.
Как писал Хемал Шах в своем ответе, я также должен был сказать git сделать исполняемый файл run
. Вы можете сделать это, вызвав git update-index --chmod=+x run
и зафиксировав это. (через этот ответ).
После переноса моего проекта и структуры Crashlytics из Dropbox и этого не было никаких проблем.
Ответ 2
В терминале просто перейдите в папку Crashlytics.framework
, если вы используете Crashlytics, если вы уже используете Fabric, перейдите в папку Fabric.framework
. run
должен быть там. И измените разрешения, запустив это в терминале: chmod 755 run
.
Ответ 3
Гемал из Crashlytics здесь!
Несколько вещей могут быть причиной этого - убедитесь, что вы используете последнюю версию Crashlytics. Если вы нажмете на нижний правый угол, то заметки о выпуске должны показать "- Добавлена поддержка arm64 для iPhone 5".
Дважды проверьте, что если ваш SCM требует его, чтобы двоичный файл "run" был отмечен как исполняемый файл!
Кроме того, убедитесь, что у вас есть только одна копия Crashlytics.app в вашей системе и одна копия Crashlytics.framework в вашем проекте и что вы ссылаетесь на ту же самую копию, которую вы вызываете.
Ответ 4
Простым и быстрым решением является удаление рамок Crashlytics и добавление его снова в ваш проект. Это устранит проблему.
Ответ 5
Я хотел включить свой ответ в случае, если есть кто-то другой, у которого была подобная проблема, но не использует Crashlytics. Я использую Твиттер Twitter и начал получать ошибку:./Fabric.framework/run разрешено
Переход на фазу сборки и удаление прогона script исправил это для меня.
Изменить: добавив к тому, что я сказал выше, просто удаление прогона script не полностью решает проблему, так как вам все еще нужно работать с Fabric/Crashlytics. Мне пришлось связаться с Crashlytics, и это то, что они сказали мне (похоже на @singhSan resp0nse):
"Создайте резервную копию настроек, пока не сможете щелкнуть стрелку приложения-селектора в верхнем левом углу. Затем нажмите" + Новое приложение "и выберите свой проект. Это будет работать как режим восстановления и позволит вам запустить script фаза сборки, в которой вы нуждаетесь."
Проблема решена.
Ответ 6
Выполните команды ниже в папке проекта: -
chmod +x Crashlytics.framework/run
chmod +x Crashlytics.framework/uploadDSYM