
Para redirigir a la App Store o a Google Play según el dispositivo basta con una página que lea el navigator.userAgent del navegador: si es Android, la mandas a Google Play; si es iPhone o iPad, a la App Store; y si es un ordenador, a una página de respaldo. Lo puedes montar gratis con GitHub Pages, sin Firebase, sin servidor y sin servicios de pago. Así compartes un único enlace (en redes, en un QR, en tu web) y cada usuario acaba en la tienda correcta. Te lo cuento paso a paso con el código listo para copiar.
Actualizado: julio 2026 — código revisado, incluyendo la detección de los iPad modernos (que se identifican como Mac).
🚀 Qué vamos a montar
Una mini página HTML con un poco de JavaScript que detecta el sistema operativo y hace la redirección automática. La alojamos en GitHub Pages (hosting estático gratuito) y obtenemos una URL del tipo https://tuusuario.github.io/redirect-miapp/ que reparte a cada quien a su tienda. Cero mantenimiento y cero coste.
🧱 Paso 1: Crea un repositorio en GitHub
Entra en github.com/new y crea un repositorio público, por ejemplo redirect-miapp. No hace falta nada más de momento.
📄 Paso 2: Crea el archivo index.html
Añade un archivo index.html con este contenido. Fíjate en que detecto tres casos —Android, iOS y «cualquier otra cosa» (escritorio)— y que la comprobación de iOS contempla también los iPad recientes, que desde iPadOS se hacen pasar por un Mac de escritorio:
<!DOCTYPE html>
<html lang="es">
<head>
<meta charset="UTF-8">
<title>Redirigiendo…</title>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<script>
const ua = navigator.userAgent || navigator.vendor || window.opera;
// ¿iOS? Incluye el caso del iPad moderno, que reporta "MacIntel" + pantalla táctil
const esIOS =
/iPad|iPhone|iPod/.test(ua) ||
(navigator.platform === 'MacIntel' && navigator.maxTouchPoints > 1);
if (/android/i.test(ua)) {
// 👉 Sustituye por el ID de paquete de tu app en Google Play
window.location.href =
'https://play.google.com/store/apps/details?id=com.tudominio.miapp';
} else if (esIOS) {
// 👉 Sustituye por el ID de tu app en la App Store
window.location.href = 'https://apps.apple.com/app/id6744336564';
} else {
// Escritorio u otros: una página de respaldo (tu landing, por ejemplo)
window.location.href =
'https://reviblog.net/apps/encriptador-protege-tus-mensajes-con-encriptacion-segura/';
}
</script>
</head>
<body>
<p>Redirigiendo…</p>
</body>
</html>
Solo tienes que cambiar dos cosas: el ID de paquete de Google Play (lo ves en la URL de tu ficha, tras ?id=) y el ID de la App Store (el número que sigue a id en la URL de tu app en apps.apple.com).
🌍 Paso 3: Activa GitHub Pages
En el repositorio ve a Settings → Pages, y en «Source» elige la rama main y la carpeta raíz (/root). Guarda. En un minuto tendrás publicada tu URL https://tuusuario.github.io/redirect-miapp/. Ese es el enlace único que compartes.
✅ Resultado
Abre esa URL desde un Android y caerás en Google Play; ábrela desde un iPhone o iPad y caerás en la App Store; desde un ordenador, en la página de respaldo. Un solo enlace, la tienda correcta para cada uno.
⚠️ El detalle del iPad (y por qué el user-agent no es infalible)
Desde iPadOS 13, Safari en el iPad se identifica como un Mac de escritorio para pedir webs «de ordenador». Si solo compruebas /iPad/ en el user-agent, esos iPad se te escapan al caso «escritorio». Por eso en el código añado la comprobación navigator.platform === 'MacIntel' && navigator.maxTouchPoints > 1: un Mac de verdad no tiene pantalla táctil, así que esa combinación delata a un iPad.
Ten en cuenta, además, que los navegadores están reduciendo la información del user-agent por privacidad. Para este uso (repartir a dos tiendas) sigue siendo más que suficiente, pero no lo utilices para lógica crítica.
📲 ¿Y si quiero abrir la app si ya está instalada?
Eso ya no es una simple redirección web: necesitas Universal Links (iOS) y App Links (Android), que requieren configurar el dominio asociado dentro de la propia app. Si la app no está instalada, el sistema cae de vuelta a la tienda. Es el siguiente nivel; para «un enlace que lleva a la tienda», lo de GitHub Pages te resuelve el 100% del caso.
📱 Un ejemplo real: Encriptador
Esta técnica la uso con mi app Encriptador, una app sencilla para enviar mensajes cifrados de forma segura (emisor y receptor la tienen instalada). Desde su ficha puedes descargarla en iOS o Android; por dentro usa exactamente este enlace inteligente.
Si te interesa el mundo de publicar apps, quizá te venga bien mi guía sobre los códigos promocionales de la App Store para repartir tu app gratis, o —si aún no tienes la app— el tutorial de Ionic desde cero para crear una app para iOS y Android con una sola base de código.
📱 ¿Tienes una idea de app y quieres que te la desarrolle? Hago apps para iOS y Android (y su publicación en las tiendas). Cuéntame tu proyecto y te paso un presupuesto para desarrollo de app sin compromiso.
También puedes seguirme en Twitter en @revi_apps y no olvides que me ayudas mucho si compartes este post en las redes sociales.
