Your achievements

Level 1

0% to

Level 2

Tip /
Sign in

Sign in to Community

to gain points, level up, and earn exciting badges like the new
Bedrock Mission!

Learn more

View all

Sign in to view all badges

SOLVED

Non-public selectors as consume method

basavaraj_d
Level 1
Level 1

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

1 Accepted Solution
devinderbanga
Correct answer by
Level 5
Level 5

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

View solution in original post

1 Reply
devinderbanga
Correct answer by
Level 5
Level 5

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

View solution in original post