Je reçois cet avertissement lors de la soumission de l'application dans la boutique d'applications via l'organisateur.
L'application fait référence à des sélecteurs non publics dans Payload/.app /: decoder
je sais que nous recevons cet avertissement si nous utilisons une API tierce dans notre application. J'ai utilisé SOCKETIO-ObjC bibliothèque pour la fonctionnalité de chat dans l'application. Également utilisé facebook iOS sdk pour la mise en œuvre de fb. Je ne comprends donc pas exactement ce qui provoque cet avertissement.! Veuillez trouver en pièce jointe ScreenShot pour une meilleure compréhension
Vous pouvez obtenir cet avertissement uniquement pour l'utilisation d'un sélecteur dans votre propre code ou d'un code tiers portant le même nom qu'un sélecteur marqué comme non public. Ca m'arrive tout le temps. Je n'ai jamais été rejeté pour cela.
Par "même nom", j'entends simplement quelque chose d'aussi simple que d'avoir un objet avec ce sélecteur:
-(id) XYZKMyClass doSomethingFancy:(id) toThis
... et il existe un sélecteur comme celui-ci pour une fonctionnalité Apple interne
-(id) ApplesClass doSomethingFancy:(id) toSomething
So: Ce qu’ils semblent rechercher, c’est la signature - (id) doSomethingFancy: (id). Vous pouvez voir combien il est très facile de se heurter accidentellement à cela.
Vraisemblablement, ils effectuent une vérification plus approfondie au siège de la police de l'App Store et déterminent que le sélecteur marqué est dans votre code, et donc, OK.
Cela peut vous aider:
Avant:
#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
Aprè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
J'obtiens ce lien: http://blog.csdn.net/erica_sadun/article/details/12188083
Vérifiez votre Adhésion cible pour toutes les classes utilisées dans le projet. Dans certains cas, lorsque vous créez ou copiez votre cible, l'avertissement peut apparaître sans erreur de lien.