Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

139
Vistas
¿Cómo descargar todos los archivos con el trabajador del servicio en una aplicación web progresiva para uso sin conexión?

Tengo un problema con las aplicaciones web progresivas. Tengo una aplicación y el trabajador del servicio está registrado correctamente. Puedo descargar la aplicación. Sin embargo, solo index.html funciona sin conexión y no todas las demás subpáginas. Sin embargo, los he agregado en la matriz para guardar. En Windows funciona bien. Solo en el teléfono inteligente no lo hace. Mi navegador predeterminado es el navegador Samsung (teléfono inteligente Samsung) ¿Qué puedo hacer? ¿Tienes alguna idea?

Aquí está mi registro en index.hmtl:

 if ("serviceWorker" in navigator) { window.addEventListener('load', function() { navigator.serviceWorker.register( "./SW.js").then( function(erfolg) { console.log( "ServiceWorker wurde registriert.", erfolg); } ).catch( function(fehler) { console.log( "ServiceWorker wurde leider nicht registriert.", fehler); } ); }); }

Aquí está mi SW.js con los eventos para el trabajador del servicio:

 const contentToCache = [ '/index.html', '/Upload.html', '/Save.html', '/Routing.js', '/LocalStorageService.js' ]; self.addEventListener('install', (e) => { console.log("[SERVICE WORKER] INSTALL DATA"); e.waitUntil((async () => { const cache = await caches.open("Baum-App"); await cache.addAll(contentToCache); })()); }); self.addEventListener('fetch', (e) => { e.respondWith((async () => { const r = await caches.match(e.request); console.log(`[Service Worker] Fetching resource: ${e.request.url}`); if (r) { return r; } const response = await fetch(e.request); const cache = await caches.open("Baum-App"); console.log(`[Service Worker] Caching new resource: ${e.request.url}`); cache.put(e.request, response.clone()); return response; })()); });

Ejecuté la aplicación en Windows y funciona allí. Lo he intentado mucho, pero desafortunadamente todavía no sé mucho al respecto.

about 4 years ago · Juan Pablo Isaza
1 Respuestas
Responde la pregunta

0

Me encontré con este problema también. Lo arreglé asegurándome de que las cadenas utilizadas en la matriz de contentToCache coincidan con el caso de cada carácter utilizado en los nombres de archivo (en el disco físico).

En otras palabras; el navegador de escritorio no distingue entre Upload.html y upload.html , ¡pero el navegador de su dispositivo móvil sí lo hace! (Esto es especialmente cierto para el sistema operativo Windows)

Para el sistema operativo Linux, por otro lado, distingue entre mayúsculas y minúsculas. Entonces, si está apuntando a dispositivos Android, debe tener esto en cuenta.

about 4 years ago · Juan Pablo Isaza Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda