Guideline 4.8 is the rejection for an app that offers Google, GitHub, or another social sign-in without an equivalent privacy-focused option, which in practice means Sign in with Apple. The fix is to add it, hide the social buttons from native users, or claim one of Apple's exemptions in the reply.
From the App Store Review Guidelines:
Apps that use a third-party or social login service (such as Facebook Login, Google Sign-In, Log in with X, Sign In with LinkedIn, Login with Amazon, or WeChat Login) to set up or authenticate the user's primary account with the app must also offer as an equivalent option another login service with the following features:
- the login service limits data collection to the user's name and email address;
- the login service allows users to keep their email address private as part of setting up their account; and
- the login service does not collect interactions with your app for advertising purposes without consent.
In substance: the app uses a third-party login service but does not offer Sign in with Apple or another login service that meets the requirements. The reviewer opened the sign-in screen and saw "Continue with Google" with no equivalent next to it.
OmniAuth made Google and GitHub sign-in a ten-minute addition, so a lot of Rails apps offer them next to email and password. Apple's rule is about the primary account: if a user can create their account with Google, there has to be an equivalent. Email and password alone does not count as the equivalent, because it does not let the user hide their address.
OAuth covers the setup. In short:
omniauth-apple strategy fits next to the others, and the native flow routes back into the app the same way Google's does. It also needs the Sign in with Apple capability on the App ID, which the next cloud build picks up.unless native_app?, leaving email and password. The web keeps its buttons. An existing Google account still signs in on the web and the session carries into the app.If the app uses its own account system and the social buttons are a convenience:
Thank you for the review. The app's primary account system is our own email and password sign-in; Google sign-in is an optional convenience that links to an existing account and is not required to create or use one. Under the exemption in guideline 4.8 for apps that exclusively use their own account setup, we believe Sign in with Apple is not required. [If you hid the buttons: We have also removed the third-party login buttons from the iOS app.] We'd appreciate a second look.
From Joe: TODO one line on what actually got an app through 4.8.
With the launch review, send the rejection to Joe from your dashboard. He replies within two business days with the exemption to claim, or the change to make.
See the launch review