Non-public selectors as consume method | Community
Skip to main content
basavaraj_d
October 16, 2015
Solved

Non-public selectors as consume method

  • October 16, 2015
  • 1 reply
  • 983 views

Hi ,

I am getting warning while uploading an app with Omniture SDK to Appstore and Please check warning as below

Non-public selectors as consume method


App references non-public selectors in payload/AppName:consume

Thanks in advance

This post is no longer active and is closed to new replies. Need help? Start a new post to ask your question.
Best answer by devinderbanga

Hi

 

Private APIs are used by the Adobe SDK, this warning is caused by a performSelector call inside the Adobe library on a delegate method (consume) from the MboxContentConsumerDelegate protocol. Target needs to be implemented to avoid this warning.

Two workarounds are as follows:

Upgrade to a 4.0+ version of the library. The 3.x versions of the library have this issue , the newer versions don't have this protocol (instead using gcd block callbacks).

Add a definition of the consume method inside your code. The following snippet  will convince the Apple preflight process that the referenced selector exists within your application's source code.

@interface NSObject (Consume)-(void)consume:(id)dummy;@end@implementation NSObject (Consume)-(void)consume:(id)dummy {}@end

 

Regards

Devinder

1 reply

devinderbanga
devinderbangaAccepted solution
Level 6
October 16, 2015

Hi

 

Private APIs are used by the Adobe SDK, this warning is caused by a performSelector call inside the Adobe library on a delegate method (consume) from the MboxContentConsumerDelegate protocol. Target needs to be implemented to avoid this warning.

Two workarounds are as follows:

Upgrade to a 4.0+ version of the library. The 3.x versions of the library have this issue , the newer versions don't have this protocol (instead using gcd block callbacks).

Add a definition of the consume method inside your code. The following snippet  will convince the Apple preflight process that the referenced selector exists within your application's source code.

@interface NSObject (Consume)-(void)consume:(id)dummy;@end@implementation NSObject (Consume)-(void)consume:(id)dummy {}@end

 

Regards

Devinder