0

現在、私は静的ライブラリを実装しており、テストアプリでコードを「そのまま」使用するとすべて正常に動作しますが、コードを静的ライブラリにコンパイルすると、認識されないセレクターが表示されます。これが私のコードです:

+ (id)sharedInstance { DEFINE_SHARED_INSTANCE_USING_BLOCK(^{ return [[self alloc] init]; }); }

#define DEFINE_SHARED_INSTANCE_USING_BLOCK(block) \
static dispatch_once_t pred = 0; \
__strong static id _sharedObject = nil; \
dispatch_once(&pred, ^{ \
_sharedObject = block(); \
}); \
return _sharedObject; \

通話中

[ZanoxTrackingEvent sharedInstance]

結果は

キャッチされない例外 'NSInvalidArgumentException' が原因でアプリを終了します。理由: '+[ZanoxTrackingEvent sharedInstance]: 認識されないセレクターがクラス 0x27ee8 に送信されました'

私は今かなり絶望的です。いくつかのシングルトン実装を試しました。

4

1 に答える 1

0

このエラーは、ファイル システムのパスが間違っている場合に発生する可能性があります。これが私の場合に起こったことです。

于 2013-10-22T09:49:32.513 に答える