Приложение ссылается на непубличные селекторы в полезной нагрузке/.приложение/: декодер


Я получаю это предупреждение при отправке приложения в магазин приложений через организатора.

приложение ссылки непубличных селекторов в полезной нагрузке/.приложение/: декодер

Я знаю, что мы получаем это предупреждение, если мы используем любой сторонний API в нашем приложении. Я использовал SOCKETIO-ObjC библиотека для функциональности чата в приложении. Также используется Facebook iOS sdk для fb implementation.So я не совсем понимаю, что вызывает это предупреждение.! Пожалуйста, найдите прилагается скриншот для лучшего понимания

3 70

3 ответа:

вы можете получить это предупреждение только за использование селектора в своем собственном коде или стороннем коде, который имеет то же имя, что и какой-либо селектор, помеченный как непубличный. Со мной такое постоянно случается. Никогда не был отвергнут за это.

под "тем же именем" я имею в виду просто что-то такое же простое, как у вас есть объект с этим селектором:

-(id) XYZKMyClass doSomethingFancy:(id) toThis

...и есть такой селектор для внутренней функциональности Apple

-(id) ApplesClass  doSomethingFancy:(id) toSomething

Итак: что, кажется, они ищут ибо это подпись - (id) doSomethingFancy: (id). Вы можете видеть, как это очень легко случайно наткнуться на это.

предположительно они выполняют более глубокую проверку в полицейском штабе App Store и определяют, что помеченный селектор находится в вашем коде, и, следовательно, ОК.

Это может помочь вам:

перед:

#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/12188083

Проверьте Целевые Членские для всех классов, используемых в проекте. В некоторых случаях, когда вы создаете или копируете свою цель, предупреждение может появиться без ошибки ссылки.