Прекомпилирайте библиотеката в Xcode

Имам два въпроса основно.

Сценарият е, че имам (n) NMI Payment Gateway SDK

  1. SDK или библиотеката няма да работят в среда на симулатор. Въпреки че е логично правилно, тъй като sdk е за четене на mag данни, не мога да тествам други части от приложението си на симулатор (и имам ограничен ресурс на устройството). Има ли начин да прекомпилирам sdk или въз основа на моите изследвания как мога да създам статична библиотека, така че да мога да генерирам sdk, базиран на i386 архитектура. Или още по-добре има ли начин да проверя дали средата е i386, след което да не зареждам sdk?

  2. Опитах се да създам приложение (n) с помощта на SDK, споменат по-горе. Бих искал да го стартирам с помощта на устройство iPhone5s и арка (armv64, armv7 и armv7s), но пише „недефинирани символи за armv7“. Ще има ли начин по някакъв начин да прекомпилирам sdk и да го активирам да работи на по-нова архитектура?

Всяка помощ е много ценена. БЛАГОДАРЯ


person n0minal    schedule 27.02.2014    source източник
comment
Значи в момента използвате SDK като компилирана статична библиотека? Ако имате източниците (което предполагате, че имате), тогава добавете източника като отделен проект за статична библиотека (използвайки Xcode Workspace) и Xcode ще компилира SDK за каквато и да е арка, която се изисква от проекта.   -  person trojanfoe    schedule 27.02.2014
comment
@trojanfoe Потърсих това в Google, но това, което ме озадачава, е, че можете ли просто да създадете проект за статична библиотека, да добавите SDK файловете (заглавни файлове и .a файл), след което да компилирате?   -  person n0minal    schedule 27.02.2014
comment
Не, трябва да имате източника.   -  person trojanfoe    schedule 27.02.2014
comment
@trojanfoe това биха били заглавните файлове и компилираният библиотечен файл .a нали? или не? защото това е единственият файл(ове), който имам за тази библиотека.   -  person n0minal    schedule 28.02.2014


Отговори (1)


Използваме различни цели за симулатор и за устройство, а в кода използваме макрос TARGET_IPHONE_SIMULATOR.

пример:

#if (TARGET_IPHONE_SIMULATOR)
NSLog(@"device");
#else 
NSLog(@"simulator");
#endif
person sage444    schedule 27.02.2014