2011-01-28 2 views
0

Я загрузил API Dropbox для устройств Objective-C/iOS, и я могу успешно создать и запустить приложение DBRoulette.Обход одноразовой проблемы с интеграцией Dropbox SDK?

Когда я следую указаниям README для включения API в свой проект, у меня есть огромное количество ошибок сборки, все из которых связаны с отсутствием заголовка Foundation. (Например, невозможно найти декларацию интерфейса для NSObject, NSString и т. Д.)

Многие из файлов заголовков не включают любые другие заголовки вообще. Не все .h файлы должны импортировать Foundation.h, если они расширяют NSObject? Это, похоже, не так, поскольку пример проекта (DBRoulette) строит и работает нормально без деклараций заголовка Foundation, но мое собственное приложение терпит неудачу.

Мне не хватает какой-либо настройки проекта, но я не могу определить, что это такое.

ответ

2

В своем примере приложения, у них есть

#ifdef __OBJC__ 
    #import <Foundation/Foundation.h> 
    #import <UIKit/UIKit.h> 
#endif 

в их заголовочном файле префикс (DBRoulette_Prefix.pch). Этот файл автоматически префикс для всех исходных файлов в проекте, поэтому соответствующие заголовки найдены. Вы можете либо поместить директивы #import в исходные файлы, либо сделать то, что они сделали, и отредактировать файл .pch для вашего проекта.

+0

Ах, интересно. Параметры сборки для моей цели не использовали префиксный файл. (У меня уже был один определенный, как вы описали.) В настройках сборки использовались $ {PREFIX_HEADER} или что-то подобное (я удалил его перед записью). Изменение значения переменной на «MyProject_Prefix.pch» (имя моего файл префикса) исправил проблему. Я некоторое время переименовывал свой проект, я предполагаю, что он искал неправильный файл. –

+0

@craig Рад, что вы это поняли! – Wevah

Смежные вопросы