オーガナイザーを通じてアプリをAppsストアに送信しているときにこの警告が表示されます。
アプリはPayload/.app /:デコーダーの非公開セレクターを参照します
アプリケーションでサードパーティAPIを使用すると、この警告が表示されることを知っています。アプリケーションのチャット機能に SOCKETIO-ObjC ライブラリを使用しました。また、FBの実装にFacebookのiOS SDKを使用したため、この警告の原因を正確に把握できていません!添付の ScreenShot をご覧ください。
非公開としてマークされているセレクターと同じ名前を持つ独自のコードまたはサードパーティコードでセレクターを使用する場合にのみ、この警告が表示されることがあります。私にいつも起こります。決して拒否されませんでした。
「同じ名前」とは、このセレクターを持つオブジェクトを持っているのと同じくらい単純なことを意味します。
-(id) XYZKMyClass doSomethingFancy:(id) toThis
...そして内部Apple機能のためにこのようなセレクターがあります
-(id) ApplesClass doSomethingFancy:(id) toSomething
だから、彼らが探しているように見えるのは、署名-(id)doSomethingFancy:(id)です。誤ってこれにぶつかるのは非常に簡単です。
おそらく、彼らはApp Store Police HQでより詳細なチェックを実行し、フラグ付きセレクターがコード内にあること、したがってOKであると判断します。
これはあなたを助けることができます:
前:
#import "SocketIOJSONSerialization.h"
extern NSString * const SocketIOException;
// covers the methods in SBJson and JSONKit
@interface NSObject (SocketIOJSONSerialization)
// used by both JSONKit and SBJson
- (id) objectWithData:(NSData *)data;
// Use by JSONKit serialization
- (NSString *) JSONString;
**- (id) decoder;**
// Used by SBJsonWriter
- (NSString *) stringWithObject:(id)object;
@end
後:
#import "SocketIOJSONSerialization.h"
extern NSString * const SocketIOException;
// covers the methods in SBJson and JSONKit
@interface NSObject (SocketIOJSONSerialization)
// used by both JSONKit and SBJson
- (id) objectWithData:(NSData *)data;
// Use by JSONKit serialization
- (NSString *) JSONString;
**- (id) jsonDecoder;**
// Used by SBJsonWriter
- (NSString *) stringWithObject:(id)object;
@end
このリンクにアクセスします: http://blog.csdn.net/erica_sadun/article/details/1218808
プロジェクトで使用されるすべてのクラスのTarget Membershipを確認してください。ターゲットを作成またはコピーすると、リンクエラーなしで警告が表示される場合があります。