Preguntas frecuentes sobre la migración de la baja de la instalación intercalada

A partir del 12 de junio de 2018, la instalación integrada dejó de estar disponible. Para obtener más información, lee nuestro blog de Chromium. publicación.

Preguntas sobre el cronograma

¿Qué cambiará el 12/06/2018?

Todos los elementos de Chrome Web Store, como extensiones y apps, publicados por primera vez a partir del 12-06-2018 tienen inhabilitada la instalación integrada. "Inhabilitado" significa que se realizarán intentos de instalación integrada automáticamente a la página de detalles del elemento en Chrome Web Store, donde el usuario puede completar la instalación. No cambiará nada para los artículos existentes en la tienda que se empezaron a publicados antes de esa fecha.

¿Qué cambiará el 12/09/2018?

La inhabilitación se aplicará a TODOS los elementos, independientemente de la fecha de publicación. 100% de la instalación integrada intentos para todos los elementos se redireccionará a Chrome Web Store, donde los usuarios pueden completar el instalar.

¿Qué debo hacer antes del 12/09/2018?

No necesitas cambiar nada, pero te sugerimos que revises el flujo de instalación y que reemplaces chrome.webstore.install() con una navegación directamente a la ficha de Chrome Web Store de tu elemento. Hacerlo ahora te permite verificar que produce la mejor experiencia del usuario.

También te recomendamos que incorpores la nueva insignia de descarga de Chrome Web Store en la de instalación en tu sitio.

¿Qué cambiará en M71 (diciembre de 2018)?

A partir de M71, Chrome ya no admitirá el método chrome.webstore.install() ni las llamadas fallará, lo que generará un flujo de instalación interrumpido en tu sitio. En este punto, las llamadas a la API arrojará un TypeError de JavaScript. Debes quitar cualquier llamada al método de la API antes de esta fecha.

Después de inhabilitar la instalación integrada

¿Cómo será el flujo de instalación?

Cuando tu sitio llame a chrome.webstore.install(), Chrome ya no activará un diálogo de inmediato pero, en su lugar, abrirá una nueva pestaña en primer plano que lo llevará a la página de detalles de Chrome Web Store (es decir, https://chrome.google.com/webstore/detail/EXTENSION_ID). Desde allí, el usuario puede seguir proceso de instalación estándar haciendo clic en "install" y aparecerá un diálogo en el que se le solicitará al usuario que lea permisos e instalarlos o cancelarlos. Cuando se descarte el cuadro de diálogo, la pestaña permanecerá en Chrome Web Store.

¿Cómo puedo saber si mi instalación se realizó correctamente?

Cuando llames a chrome.webstore.install(), failCallback se activará con un error. indicando que el usuario fue redirigido a Chrome Web Store. No indicará si los la instalación se realizó correctamente o no. Recuerda que, a partir de Chrome 71, las llamadas a chrome.webstore.install() fallará, por lo que nunca se ejecutará failCallback.

Sin esta API, tu sitio podrá detectar si el elemento ya está instalado comunicándose entre la extensión y tu sitio web. Esto se puede hacer a través de mensajes de extensión y externally_connectable en el manifiesto.

"externally_connectable": {
  "matches": ["https://www.example.com/*"]
}
// JS running on https://example.com
try {
  chrome.runtime.sendMessage('EXTENSION_ID', MESSAGE, function() {
    if (chrome.runtime.lastError) {
      // Extension is not installed.
    }
  });
} catch (e) {
  // Extension is not installed.
}

Reemplaza lo siguiente:

  • EXTENSION_ID: Es el ID de la extensión.
  • MESSAGE: Es el objeto o la string del mensaje que se enviará a la extensión.

¿Cómo activo una página informativa después de la instalación?

Utiliza el evento chrome.runtime y abre una pestaña nueva después de la instalación. Aquí hay un ejemplo para usar en tu página en segundo plano:

chrome.runtime.onInstalled.addListener(function listener(details) {
  if (details.reason === chrome.runtime.OnInstalledReason.INSTALL) {
    chrome.tabs.create({url: "https://www.example.com/"});
    chrome.runtime.onInstalled.removeListener(listener);
  }
});

¿Puedo hacer una excepción?

No. El cambio de esta política se aplica a todos los elementos de Chrome Web Store sin excepción.