문제

I am new to this technology.

I am getting following warning while uploading application from Application Loaded.

Warning says "The app references non-public selectors in "App Name" instance, viewController"

Please help me solve this warning.

Thanks in advance!

EDIT

Image :-

enter image description here

EDIT :-

Will my application get approve?

도움이 되었습니까?

해결책

Use App Scanner. It analyzes your .app file for private API method usage.

It will catch methods that have been named the same as a private API method, even if it has it's own implementation. Also, it'll catch @selectors inside methods (just like the official iOS automated checker).

App Scanner doesn't catch the case when performSelector: is called with a selector that is a private method. However, Apple's tools do catch that case.

Another Alternative APP Kit, though I haven't used it. Give it a try.

Check out this Q&A, if you haven't. How does Apple know you are using private API?. Looks Helpful.

다른 팁

Search for viewController in your entire project and search if there is any singleton implementation. Even if Apple approve you application, its not good to have non-public sectors in your application. You can also use App Scanner

Hope it helps you

What was the last thing you added to the code before you got this error? The error means you have a private API call, as my link above notes.

If you dont think it was your code, then it might be any of the included code.

@iPhoneDev: i guess your application will not be rejected due to this reason. Because i have faced this warning in one of my app, and it was accepted successfully. So no need to worry

I think you might have a function named instance somewhere in your code, such as:

+(id)instance{
    return something;
}

.. maybe a singleton implementation? If this is the case, just rename it.

I've seen apps approved despite the fact that they triggered similar alarms, but why would you want to risk a rejection?

Almost certainly get rejected for this.

Just a guess, but search for "viewController" and see if you are referencing a private instance method, or perhaps a private instance variable via dot notation: .viewController

No, your app will be rejected like this. Definitely. Apple review team uses the same checks as Xcode plus a few more.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top