La aplicación hace referencia a selectores no públicos en Payload / .app / : decodificador

Recibo esta advertencia al enviar la aplicación a la tienda de aplicaciones a través del organizador.

La aplicación hace referencia a selectores no públicos en Payload / .app /: decoder

Sé que obtenemos esta advertencia si utilizamos una API de terceros en nuestra aplicación. He utilizado la biblioteca SOCKETIO-ObjC para la funcionalidad de chat en la aplicación. También usé facebook iOS sdk para la implementación de fb. Así que no estoy obteniendo exactamente lo que causa esta advertencia. Por favor, adjunte ScreenShot para una mejor comprensión

Puede recibir esta advertencia solo por usar un selector en su propio código o código de terceros que tenga el mismo nombre que un selector marcado como no público. Me pasa todo el tiempo. Nunca me rechazaron por eso.

Con “mismo nombre” me refiero a algo tan simple como tener un objeto con este selector:

-(id) XYZKMyClass doSomethingFancy:(id) toThis 

… y hay un selector como este para una funcionalidad interna de Apple

 -(id) ApplesClass doSomethingFancy:(id) toSomething 

Entonces: Lo que parece que están buscando es la firma – (id) doSomethingFancy: (id). Puedes ver cómo es muy fácil chocar accidentalmente con esto.

Es de suponer que realizan un control más profundo en el cuartel general de policía de la tienda de aplicaciones y determinan que el selector marcado está en su código y, por lo tanto, está bien.

Esto puede ayudarte:

Antes de:

 #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 

Después:

 #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 

Me sale en este enlace: http://blog.csdn.net/erica_sadun/article/details/12188083

Verifique su Membresía objective para todas las clases utilizadas en el proyecto. En algunos casos, cuando crea o copia su objective, la advertencia puede aparecer sin error de enlace.