App extension

Share Extension App Review checklist

A Share Extension runs inside another app's sharing flow. Review readiness depends on accepting only content the extension can handle and completing quickly without exposing private data.

Quick answer

Define the exact content types your Share Extension accepts, then test each host-app state and failure path. Apple Share Extension guidance describes using extensions to post content to a sharing website or upload content. AppReviewReady interpretation: treat the extension as a separate product surface with its own content contract, auth state, and privacy boundary.

01

Declare only content types the extension can process

List URLs, text, images, videos, files, contacts, locations, PDFs, or custom UTTypes separately. A broad activation rule can place the extension in share sheets where it cannot produce a useful result.

The main app may support more content than the extension. Keep the extension's promise narrow enough that a user sharing from Photos, Safari, Files, or another app sees predictable behavior.

02

Handle signed-out and expired sessions inside the extension

  • Show a clear sign-in requirement when upload needs an account.
  • Avoid presenting a full onboarding maze inside the extension.
  • Preserve the shared item when routing the user to the containing app.
  • Fail safely when the host app provides unsupported or protected content.
  • Never log shared text, filenames, thumbnails, or URLs unless the privacy policy covers it.
03

Design for quick completion

Share flows should feel lightweight. If the extension requires a long edit, server import, AI processing, or large upload, show progress and completion semantics honestly rather than blocking the host app indefinitely.

AppReviewReady interpretation: test the extension with network failure, huge files, duplicate items, and account errors. A clean cancel path is part of review readiness.

04

Run host-app share tests

  1. Share each supported type from Safari, Photos, Files, and at least one third-party app where relevant.
  2. Test signed-out, expired token, no network, unsupported file, and duplicate share states.
  3. Confirm the containing app receives or displays the shared content correctly.
  4. Verify private content does not appear in screenshots, logs, analytics, or crash reports.
  5. Check extension metadata, icons, and display name for clarity.
05

Give review a share route

Review Notes are useful when the extension's value is not visible from the main app. Provide a route from a standard host app so the reviewer can test without inventing content.

After release, review the extension whenever the main app adds new import types, account roles, upload limits, or AI processing. A Share Extension can silently receive content that the main app understands but the extension still cannot process safely.

If the extension queues work for later, show users where that work appears in the containing app. A share action that disappears into a background queue without status will create support and review confusion.

Copy-ready frameworkAdapt every bracketed field
Share Extension review route:
Accepted types: [URL, image, PDF]
Host apps tested: [Safari, Photos]
Account state: [signed in or review login]
How to trigger: [share sheet steps]
Unsupported behavior: [message]
Privacy handling: [what is uploaded]
Sources

Primary references checked for this guide

Policy statements above are grounded in the linked Apple documentation. Operational recommendations are AppReviewReady's interpretation and should be tested against your app and the current guideline text.

Put it to work

Check extension readiness

Review extension content types, auth states, privacy, and host-app behavior before submission.

Open the tool