通过管理器将应用程序提交到Apps商店时,我收到此警告。
该应用程序在Payload / .app /:解码器中引用了非公共选择器
我知道如果我们在应用程序中使用任何第三方API,就会收到此警告。我已将SOCKETIO-ObjC库用于应用程序中的聊天功能。还使用了Facebook iOS sdk进行fb实施。因此,我没有确切知道导致此警告的原因。请找到随附的ScreenShot以更好地了解
通过管理器将应用程序提交到Apps商店时,我收到此警告。
该应用程序在Payload / .app /:解码器中引用了非公共选择器
我知道如果我们在应用程序中使用任何第三方API,就会收到此警告。我已将SOCKETIO-ObjC库用于应用程序中的聊天功能。还使用了Facebook iOS sdk进行fb实施。因此,我没有确切知道导致此警告的原因。请找到随附的ScreenShot以更好地了解
Answers:
您可能仅在自己的代码或第三方代码中使用与标记为非公开的某些选择器同名的选择器时收到此警告。一直发生在我身上。从来没有被拒绝过。
“同名”是指您使用此选择器创建一个对象就一样简单:
-(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
检查项目中使用的所有类的目标会员资格。在某些情况下,当您创建或复制目标时,警告可能会出现而没有链接错误。