Rejected a couple of time for 5.1.1/5.1.2 - AI consent screen not seen by reviewers despite being first screen on launch

I've been rejected a couple of times for Guidelines 5.1.1(i) and 5.1.2(i) regarding third-party AI data sharing consent. Each time, the reviewer states they cannot see the consent prompt, even though it is the first screen displayed on every app launch.

My app (GymFusion) uses Anthropic's Claude AI for features like meal scanning, body composition analysis, and workout coaching.

Here is exactly what I've implemented:

IN-APP CONSENT (embedded in view hierarchy, not a sheet/popup):

In my RootView.swift, the consent is a conditional view that blocks the entire app:

} else if !consentManager.hasConsented && !consentManager.hasSeenConsent { AIConsentView() } else if auth.isAuthenticated { MainTabView() }

The hasSeenConsent flag is reset to false on every app launch in the App's init(), so the consent screen appears on every launch until the user accepts:

init() { UserDefaults.standard.set(false, forKey: "user_ai_consent_seen") AIConsentManager.shared.hasSeenConsent = false FirebaseApp.configure() }

THE CONSENT SCREEN INCLUDES:

  • Lists all personal data shared (meal photos, water glass photos, workout history, progress photos, body measurements, fitness profile)
  • Names Anthropic, PBC (Claude AI) as the third-party recipient
  • 3 required acknowledgment checkboxes that must all be checked before "I Agree" is enabled
  • Cannot be swiped away (.interactiveDismissDisabled)
  • "Decline" lets user proceed but consent reappears next launch
  • Users can revoke consent anytime in More tab

PRIVACY POLICY INCLUDES:

  • Names Anthropic as third-party AI provider
  • Lists all data collected and shared
  • States Anthropic provides "same or equal protection of user data"
  • Explains consent and revocation process
  • Link: https://ahmedali420911.github.io/gymfusion-legal/privacy-policy.html

WHAT THE REVIEWER SAYS EACH TIME: "We were not presented with the consent prompt on launch or anywhere else in the app."

WHAT I'VE VERIFIED:

  • Aiconsentview.swift is in the Xcode build target (confirmed in project.pbxproj with 4 references)
  • Consent appears correctly on simulator and physical device
  • UserDefaults resets hasSeenConsent to false on every launch
  • The file compiles without errors
  • DerivedData has been cleared before archiving
  • Clean build performed before every archive

MY QUESTIONS:

  1. Could there be a reason the consent screen doesn't appear on the reviewer's device even though it shows correctly on mine?
  2. Is there a known issue with SwiftUI conditional views not rendering on certain devices or iOS versions?
  3. Has anyone else experienced App Review not seeing UI that works correctly in their own testing?
  4. Should I attach screenshots of the consent dialog in the App Review notes or reply?
  5. Is there something else Apple expects beyond an in-app consent dialog and privacy policy for third-party AI data sharing?

I've been stuck on this for over a month across 8 submissions. Any help or insight would be greatly appreciated.

I've been rejected a couple of times for Guidelines 5.1.1(i) and 5.1.2(i) regarding third-party AI data sharing consent.

IN-APP CONSENT (embedded in view hierarchy, not a sheet/popup)

The description of your problem is confusing because you first say your app is rejected based on 5.1.1 and 5.1.2 review guidelines and then goes on to talk about in-app purchase products. Additionally, you don't mention the development platform.

In my RootView.swift, the consent is a conditional view that blocks the entire app:

Nobody really knows what RootView.swift is. Additionally, you mingle some lines of code with the description of your topic without using the code block, which makes it difficult for the reader to tell which line is code.

Thank you for the feedback. Let me clarify:

My app is a SwiftUI iOS fitness app called GymFusion. It uses Anthropic's Claude AI API to power features like meal photo scanning, body composition analysis, and workout coaching.

The rejection is solely about Guidelines 5.1.1(i) and 5.1.2(i) — the app shares user data with a third-party AI service (Anthropic) and Apple says the app doesn't clearly disclose this or ask for permission. There are no in-app purchase issues — apologies for any confusion.

Here's what I've implemented:

The app's entry point (RootView) shows the AI consent screen as the first view on every launch. It's not a sheet or popup — it's embedded in the view hierarchy:

if auth.isLoading {
    // Loading screen
} else if !consentManager.hasConsented && !consentManager.hasSeenConsent {
    AIConsentView()  // Consent blocks the entire app
} else if auth.isAuthenticated {
    MainTabView()
} else {
    AuthView()
}

The consent screen:

  • Lists all data shared (photos, workout history, body measurements, fitness profile)
  • Names Anthropic (Claude AI) as the recipient
  • Requires 3 checkboxes before "I Agree" is enabled
  • Resets on every app launch until accepted

The problem: Apple's reviewer says "we were not presented with the consent prompt on launch or anywhere else in the app" — but it appears correctly on all my test devices (iPhone and iPad simulators, physical devices).

Has anyone experienced App Review not seeing a view that renders correctly in their own testing? Could there be something about how SwiftUI conditional views render on the reviewer's device that differs from local testing?

Line 3 should be the following, right?

} else if !consentManager.hasConsented || !consentManager.hasSeenConsent {
Rejected a couple of time for 5.1.1/5.1.2 - AI consent screen not seen by reviewers despite being first screen on launch
 
 
Q