json-framework не работает с iPhone SDK 3.0 - PullRequest
0 голосов
/ 11 апреля 2009

Мне не удается заставить приложение скомпилироваться при использовании JSON-framework http://code.google.com/p/json-framework/ с iPhone SDK 3.0.

Мое приложение отлично компилируется для симулятора, но когда я иду на компиляцию для своего устройства, я получаю код ошибки кода 1. Я правильно выполнил все инструкции по установке, и когда удаляю «Дополнительный SDK» reference и «Другие флаги компоновщика: -Obj-C -ljson» компилируется просто отлично ... но, очевидно, я не могу использовать JSON в своем приложении.

Есть идеи?

Ответы [ 7 ]

3 голосов
/ 12 апреля 2009

Вы можете просто переключиться на версию кода, а не на ссылку в статической библиотеке.

Должно скомпилироваться и нормально работать на 3.0.

2 голосов
/ 25 июня 2009

В моем собственном проекте я тоже столкнулся с этой проблемой. Я не смог собрать свое приложение для iPhone OS 2.x, используя iPhone 3.0 SDK.

Исправление было в том, чтобы установить следующее на уровне проекта (Get Info):

  • BaseSDK для устройства iPhone 3.0
  • Цель развертывания iPhone на iPhone OS 2.x
  • Правила ресурсов для подписи кода Путь к тому же списку 2.x (например, /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS2.0.sdk/ResourceRules.plist)

Последний бит позволяет сборке дистрибутива (магазина приложений) правильно кодировать знак ... В противном случае вы столкнетесь с ошибкой «неверный или неподходящий формат объектного файла», так как подписывающий код по умолчанию будет использовать те же правила ресурса, что и BaseSDK (то есть 3.0), который не подходит для приложения 2.x.

Кроме того, обязательно удалите любые из вышеуказанных настроек на уровне target (опять же, через Get Info).

Уф.

0 голосов
/ 04 января 2010

А для французов тоже есть учебник и здесь (en Français)

Но для вашей проблемы я думаю, что дело не в JSON, а в вашем ключевом разработчику.

0 голосов
/ 07 июня 2009

Я начал использовать прекрасный json-framework для iPhone, но потом неожиданно обнаружил, что, если я скомпилирую что-то для устройства больше, чем 2.1, он получит: Codesign error: «неверный или неподходящий формат объектного файла» Мне потребовалось много времени, чтобы понять, что происходит, но благодаря сообщению в блоге исправление таково: В настройках проекта на вкладке сборки найдите «Путь к правилам ресурса подписи кода» и установите в качестве значения «$ (SDKROOT) /ResourceRules.plist». Я не уверен, как это работает, так как похоже, что это тот путь, который у него уже есть, но, похоже, он работает!

, которая решает ошибку кодового знака, которую я получал, но теперь я не могу скомпилировать на 3.0 по какой-то другой причине. я попытаюсь дать ссылку на код, а не на библиотеку.

0 голосов
/ 13 апреля 2009

Кажется, что подпись кода не распространяется на фреймворк. Вы пытались связать фреймворк по-другому?

0 голосов
/ 12 апреля 2009

Codesign error означает, что у вас нет действительного профиля обеспечения для устройства, к которому вы пытаетесь скомпилировать, используя текущие встроенные настройки.

Можете ли вы создавать и развертывать примеры приложений на своем телефоне?

0 голосов
/ 11 апреля 2009

Похоже на проблему, которую вы хотели бы обсудить с разработчиками, см. группу поддержки .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...