Saltar al contenido
WebViewGold Del vibe coding a la App Store
Español
Consigue WebViewGold

Rechazo en App Store

Directriz 2.3.10 (otras plataformas): quitar las referencias a Android y Google Play de una app web empaquetada

Un rechazo por la 2.3.10 significa que App Review encontró otra plataforma móvil en tu app o en tu ficha: una insignia de Google Play en el pie de página, "también en Android" en la descripción o una captura con la barra de estado de Android. Es uno de los rechazos más fáciles de arreglar, y casi todo el trabajo se hace en tu app web, no en Xcode.

Desde $109 de pago único por plataforma, o deja que nuestro equipo lo haga todo desde $698.

  • Garantía de aprobación – o te devolvemos el dinero en 14 días
  • Sin programar
  • Pago único, actualizaciones gratuitas
  • Soporte humano 24/7
  • Hecho en Alemania desde 2014 · ISO 27001

Qué dice la Directriz 2.3.10

La Directriz 2.3.10 pide que una app se centre en las plataformas de Apple que admite. Ni la app ni sus metadatos deben mostrar nombres, iconos o imágenes de otras plataformas móviles o de tiendas de apps alternativas, salvo que la app tenga una funcionalidad interactiva específica que Apple haya aprobado. La misma regla pide que los metadatos traten de la propia app y dejen fuera la información irrelevante.

En la práctica, "Android", "Google Play", "Play Store", los enlaces de descarga de APK, los robots de Android, los marcos de dispositivo Pixel o Galaxy y las barras de sistema de Android no tienen cabida en nada que vea un cliente del App Store, ni dentro de la app ni en su página de producto. La web no es una plataforma móvil, y un ordenador de escritorio tampoco, así que un tranquilo "también funciona en tu navegador" suele estar bien. La 2.3.10 es una subregla de la sección de metadatos, más amplia; la guía de la Directriz 2.3 cubre las demás.

Qué suele decir el mensaje de rechazo

La nota suele aparecer en Performance, Accurate Metadata. Explica que la app o sus metadatos contienen información sobre una plataforma de terceros que no es relevante para los usuarios del App Store. Los revisores suelen señalar el lugar (una captura concreta, la descripción, el texto promocional o una pantalla dentro de la app) y a menudo adjuntan una captura de lo que vieron. Te piden que elimines las referencias y vuelvas a enviar la app.

Fíjate en un detalle: ¿el problema está en los metadatos, que corriges en App Store Connect, o dentro de la app, que corriges en tu servidor web? Muchos rechazos 2.3.10 mencionan ambos.

Dónde se esconden las menciones de Android en las apps hechas con vibe coding

Insignias de tiendas en el pie de página web

Tu landing muestra "Download on the App Store" junto a "Get it on Google Play". La app de iOS carga el mismo pie de página, así que el revisor ve una insignia de Google Play dentro de una app de iPhone.

Capturas del dispositivo equivocado

Hechas en un teléfono Android, en Chrome DevTools con un perfil de Pixel o en una herramienta de mockups con marco de Galaxy. La barra de estado de Android, la barra de navegación o la cámara perforada lo delatan.

Textos de la tienda escritos primero para Google Play

La descripción, el texto promocional o las novedades de la versión todavía dicen "Android", "Play Store" o "APK". Un campo de palabras clave que contiene "android" es un clásico.

Páginas de ayuda y de preguntas frecuentes

A los creadores con IA les encanta generar una página de "Cómo instalar la app" con pasos para Android, o instrucciones de "Añadir a pantalla de inicio" para Chrome. Cuenta cada página a la que pueda llegar el revisor.

Avisos y banners de instalación

Un banner de instalación de PWA, un smart banner de "Descarga la app de Android" o una barra de "Abrir en la app" de una herramienta de marketing aparece dentro de la propia app de iOS.

Textos de onboarding y de soporte

"Funciona en iPhone y Android" en el carrusel de bienvenida, en los estados vacíos o en las respuestas predefinidas de un widget de chat dentro de la app.

¡Estoy muy feliz de haber comprado esta aplicación! Documentación extremadamente fácil y excelente. Estaba en contacto con el servicio al cliente, respondieron muy rápido y de forma muy amigable. Resolvieron mi pregunta en un día. 10/10 lo recomendaría".

Nelis Geiger · CodeCanyon

Encuentra todas las menciones en tu código

La mayoría de las menciones están en código que generó una herramienta de IA, así que busca en el proyecto en lugar de recorrer las páginas a mano. Cuenta con algunos falsos positivos, como "pixel" en el CSS. El texto guardado en tu base de datos o en tu CMS (entradas de blog, artículos de ayuda) no aparece aquí; búscalo allí por separado.

bash
# Ejecútalo en la raíz de tu app web (exportación de Lovable o Bolt, proyecto de Cursor o Claude Code)
grep -rniE "android|google ?play|play\.google\.com|play store|\.apk|galaxy|pixel|samsung" \
  --include=*.{ts,tsx,js,jsx,html,md,json,vue,svelte} \
  --exclude-dir={node_modules,dist,build,.next} .

Arréglalo sin quitar nada de tu sitio web

Los visitantes de la web siguen viendo la insignia de Google Play; solo la app de iOS la oculta.

  1. Dale a la app de iOS un user agent reconocible

    En Config.swift, pon en useragent_iphone (y en useragent_ipad si la app funciona en iPad) el user agent predeterminado de iOS más un marcador como MyAppiOS. Así tu app web sabe que se está ejecutando dentro de la app de iOS y puede mostrar ahí contenido neutral respecto a la plataforma. El proyecto de Android tiene la misma opción (USER_AGENT en Config.java) si quieres que la app de Android también deje de mostrar su insignia del App Store.

  2. Oculta las insignias y los textos de Android dentro de la app

    Envuelve las insignias del pie de página, los banners de "Descarga la app de Android" y las secciones de ayuda específicas de cada plataforma en una comprobación del marcador (código más abajo). Para un arreglo rápido que no requiere cambios en la app web, añade una regla a custom.css en el proyecto de WebViewGold, que se aplica a cada página que carga la app (documentación de CSS y JavaScript personalizados). custom.css va dentro del binario, así que esa vía necesita una compilación nueva.

  3. Reescribe las frases sobre plataformas en lugar de borrarlas

    "Disponible en iPhone y Android" pasa a ser "Disponible en iPhone y iPad". "Instalar en Android: toca el menú..." pasa a ser una página de ayuda solo sobre la app de iOS. "Sincroniza en todos tus dispositivos" funciona en cualquier sitio y no nombra ninguna plataforma.

  4. Vuelve a hacer las capturas en iOS

    Instala la compilación de TestFlight en un iPhone (y en un iPad si lo admites) o usa el simulador de iOS con los tamaños de pantalla exigidos. La barra de estado debe mostrar el reloj y los iconos de iOS: sin barra de navegación de Android ni marco de Pixel o Galaxy. La guía de capturas y ficha tiene los tamaños y un flujo de captura.

  5. Limpia todos los campos de metadatos

    Descripción, subtítulo, texto promocional, palabras clave, novedades de la versión, el vídeo de vista previa y las descripciones de las compras dentro de la app. Quita "android" y "google play" del campo de palabras clave: no aportan nada a la búsqueda del App Store y además incumplen la Directriz 2.3.7. La guía de ASO te ayuda a usar ese espacio para palabras clave que traigan instalaciones.

  6. Compruébalo en la app instalada y luego responde

    Abre la compilación de TestFlight y visita cada página del pie de página y del menú, con la sesión iniciada y sin ella. Los cambios en la web están activos en cuanto despliegas, así que si el binario estaba bien, responde en el Centro de resolución sin subir nada nuevo. Si cambiaste Config.swift o custom.css, sube antes una compilación nueva con un número de compilación más alto.

Una comprobación, dos resultados

Detecta la app una sola vez y reutiliza el indicador en todas partes. El CSS del comentario es la alternativa para custom.css cuando no puedes cambiar la app web.

javascript
// Config.swift: useragent_iphone = "<default iOS user agent> MyAppiOS"
var isIosApp = navigator.userAgent.indexOf("MyAppiOS") !== -1;

// Ejemplo en React: ninguna insignia de tienda dentro de la app de iOS
function StoreBadges() {
  if (isIosApp) return null;
  return (
    <div className="store-badges">
      <a href="https://apps.apple.com/app/id0000000000">App Store</a>
      <a href="https://play.google.com/store/apps/details?id=com.example.app">Google Play</a>
    </div>
  );
}

/* Alternativa en custom.css del proyecto de WebViewGold (se aplica a cada página que carga la app):
.store-badges, a[href*="play.google.com"], .android-only { display: none !important; }
*/

Qué está bien y qué se marca

En tu app o en tu fichaVeredictoMejor enfoque
Insignia "Get it on Google Play"Se marcaOcúltala en la app de iOS y mantenla en el sitio web
"También disponible en Android"Se marca"También disponible en iPad", o déjalo fuera
Captura con barra de estado o de navegación de AndroidSe marcaHaz la captura desde la compilación de iOS
Palabra clave "android" o "play store"Se marca (2.3.10 y 2.3.7)Una palabra clave que describa lo que hace la app
"Úsala en tu ordenador en tudominio.com"Suele estar bienQue sea informativo, sin insinuar precios más baratos en la web (3.1.1)
Botón "Sign in with Google"Bien: es un servicio de inicio de sesión, no una plataformaOfrece Sign in with Apple a su lado (Directriz 4.8)
"Juega con amigos en cualquier teléfono"Suele estar bienDescribe la función sin nombrar la plataforma

Plantilla de respuesta para el Centro de resolución

Enumera qué quitaste y dónde, para que el revisor pueda comprobar cada punto en un minuto. La plantilla se queda en inglés porque App Review lee en inglés.

Respuesta en el Centro de resolución (sustituye las partes entre corchetes)
Hello App Review team,

Thank you for reviewing [App name], version [1.0] ([build number]).

We have removed all references to other mobile platforms, as requested under Guideline 2.3.10:

1. Screenshots: all screenshots were replaced with captures from the iOS build on [iPhone display size] [and iPad display size]. They show the iOS status bar and no other device frames.
2. Metadata: the description, promotional text, keywords and What's New text no longer mention Android or Google Play.
3. Inside the app: the Google Play badge in the footer, the "Get the Android app" banner and the Android section of the help page are no longer shown in the iOS app. This content is served by our web server, so the change is already live in the build under review. [Or: build [number] contains this change.]

To verify, please scroll to the footer on [Home] and open [Menu > Help].

If anything else should be changed, please let us know and we will fix it right away.

Best regards,
[Name]
[Company], [email]

Lista de comprobación antes de volver a enviar

  • La búsqueda cubrió el código y el contenido de la base de datos o del CMS; cada resultado está oculto en la app o reescrito.
  • Pie de página, menú, centro de ayuda, onboarding y estados vacíos revisados en la compilación de TestFlight, con la sesión iniciada y sin ella.
  • Ninguna mención de Android, Google Play, Play Store o APK en la descripción, el subtítulo, el texto promocional, las palabras clave y las novedades de la versión.
  • Capturas y vista previa de la app grabadas desde la compilación de iOS, sin barras de sistema de Android ni marcos de dispositivo.
  • El icono de la app no contiene imágenes de ninguna plataforma.
  • Los widgets de terceros (chat, banner de cookies, smart app banners) no muestran ningún aviso de Google Play dentro de la app.
  • La respuesta en el Centro de resolución enumera cada cambio y dónde verlo.

Preguntas frecuentes

¿Puedo mencionar que mi app también funciona en un navegador web?

En general, sí. La web y los ordenadores de escritorio no son plataformas móviles, y una nota breve como "Tus datos se sincronizan con la versión web" es habitual. Que sea informativa y no la uses nunca para dirigir las compras al sitio web, porque eso entra en la Directriz 3.1.1.

¿Un botón de Sign in with Google es un problema de la 2.3.10?

No. Google Sign-In es un servicio de inicio de sesión, no una plataforma móvil. Eso sí, activa la Directriz 4.8, que pide a su lado una opción equivalente y respetuosa con la privacidad, como Sign in with Apple.

Mis capturas son de un teléfono Android, pero la app se ve idéntica. ¿De verdad es un problema?

Sí, si se ve cualquier elemento de Android: los iconos de la barra de estado, la barra de navegación o el marco del dispositivo. Los revisores comparan las capturas con la app instalada, y la interfaz de sistema de Android es un hallazgo 2.3.10 inmediato. Haz las capturas desde la compilación de iOS.

¿Necesito una compilación nueva tras un rechazo 2.3.10?

Solo si el arreglo está en el binario, por ejemplo un user agent cambiado en Config.swift o un custom.css nuevo. Los metadatos se editan en App Store Connect, y los cambios en tu app web están activos en cuanto despliegas, así que en esos casos basta con una respuesta en el Centro de resolución.

¿Qué es la excepción por funcionalidad interactiva aprobada?

Es muy limitada. Está pensada para apps con una función real que funciona con otra plataforma, y App Review decide caso por caso. Estar disponible también en Android no basta. Si crees que tu app tiene una función así, descríbela en las notas de revisión.

Tres formas de llevar tu app a las tiendas

El mismo resultado, con distinta cantidad de trabajo por tu parte. Las tres incluyen la garantía de aprobación y soporte humano 24/7.

Hazlo tú mismo

$109 por plataforma, pago único

La licencia de WebViewGold: un proyecto de Xcode o Android Studio listo para usar. Pega tu URL, define nombre e icono, activa funciones, compila y envía. Actualizaciones gratuitas para siempre.

Ver planes en la página principal

Full Service

$698 por plataforma $798

Envíanos tu URL y tu icono. Nuestro equipo configura, compila y entrega tu app en 72 horas, en marca blanca y con los proyectos fuente. Ambas plataformas por $1,158.

Detalles del Full Service Con tecnología de WeSetupYourWebViewApp

Precios de la Oferta de invierno válidos hasta el 31 de diciembre de 2026.

¿Listo para lanzar tu app?

Garantía de aprobación en App Store & Google Play – o te devolvemos el dinero en 14 días

¿Prefieres delegarlo? Full Service: configuramos, compilamos y entregamos en 72 horas, desde $698 por plataforma. ¿Preguntas? Chatea con nosotros 24/7.

Los reembolsos se conceden bajo las condiciones indicadas en nuestras FAQ: un rechazo por motivos ajenos al contenido por parte de Apple y/o Google, reclamado dentro de los 14 días posteriores a la compra.