В AppDelegate я распределяю экземпляр, определенный в статической библиотеке. Этот экземпляр имеет свойство NSString, задающее "копию". Когда я обращаюсь к строковому свойству в этом экземпляре, приложение вылетает с "непризнанным селектором, отправленным экземпляру". Xcode предоставляет подсказку кода для свойства, что означает, что он известен в вызывающем приложении. Конкретный класс компилируется в цель статической библиотеки. Что мне не хватает?
Добавление некоторого кода.
//static library
//ClassA.h
@interface ClassA : NSObject {
...
NSString *downloadUrl;
}
@property(nonatomic, copy) NSString *downloadUrl;
//ClassA.m
@synthesize downloadUrl;
В вызывающем приложении appDelegate.
//app delegate header file
@interface myApp : NSObject <UIApplicationDelegate> {
ClassA *classA;
}
@property (nonatomic, retain) ClassA *classA;
//app delegate .m file
@synthesize classA;
- (void)applicationDidFinishLaunching:(UIApplication *)application {
classA = [[ClassA alloc] init];
//exception occurs here. downloadUrl is of type NSCFNumber
classA.downloadUrl = @"http://www.abc.com/";
...}
Другие классы в приложении получат ссылку на делегата и вызову classA.downloadUrl.