Section 2.3.1 of the App Store Review Guidelines and Feature Flags

Discussion in 'iOS Programming' started by crspybits, Feb 10, 2017.

  1. crspybits macrumors newbie

    Feb 10, 2017
    From the App Store Review Guidelines (

    "2.3.1 Don’t include any hidden or undocumented features in your app; your app’s functionality should be clear to end-users and App Review. Egregious or repeated behavior is grounds for removal from the Developer Program. We work hard to make the App Store a trustworthy ecosystem and expect our app developers to follow suit; if you’re dishonest, we don’t want to do business with you."

    The context of this is:
    "2.3 Accurate Metadata
    Customers should know what they’re getting when they download or buy your app, so make sure your app description, screenshots, and previews accurately reflect the app’s core experience and remember to keep them up-to-date with new versions."

    How does Section 2.3.1 bear on the use of feature flags? (e.g., as described in with implementations such as and Literally speaking, a feature flag hides a feature, which can be turned on at a later point.

    As long as the app description, screenshots, and previews accurately reflect the app’s core experience, are the use of feature flags acceptable to the Apple App Store?

  2. PhoneyDeveloper macrumors 68040


    Sep 2, 2008
    I think what Apple cares about is that they can review every screen/feature in your app. They don't want a naked woman popping out of a cake unless they know about it first. I don't think they care how you control the features in your app if there are any that can be hidden. If there are hidden features they expect you to tell them about it when you submit the app for review.

    I can tell you that a company I worked for submitted an app that did have some hidden features. It was nothing nefarious just access to a private server of ours. When the user typed in the URL to our server some screens appeared that wouldn't otherwise appear. We never gave apple a heads up about this or login credentials to our server. AFAIK, they never found out and nothing ever happened to our app because of this.

Share This Page