2011-02-04 22 views
19

Tengo una extensión donde los usuarios mantienen una lista de enlaces. Sería bueno tener esta información sincronizada entre las computadoras (en el trabajo y en casa). ¿Cuáles son las posibles soluciones?¿Cómo sincronizar los datos de extensión de Chrome en diferentes computadoras?

Chrome tiene la opción de sincronización de la extensión, pero no estoy seguro si sincroniza los datos o no (me sorprendería que sí). Incluso si lo hace, no todos querrían que todas sus otras extensiones se sincronizaran.

Puedo almacenar mis enlaces en una carpeta de marcadores especial y utilizar la sincronización de marcadores incorporada, pero en este caso todos los marcadores también se sincronizarían (no todos los usuarios querrían eso, creo).

Cualquier sitio externo que pueda usar? Algo fácil de usar y vinculado a una cuenta de google?

(no quiero construir mi propio sitio para esto)

Respuesta

26

Editar: A partir de Chrome 20 y arriba se puede utilizar chrome.storage módulo para salvar a la nube.

chrome.experimental.storage.sync.set({'settingAlwaysOn': true}, function() { 
    console.log('Saved option in the cloud'); 
}); 

Antes de Chrome 20

Tienes razón, la sincronización de Chrome para las opciones de extensiones (en la configuración) no sincroniza los datos de extensión. La única forma de sincronizar esos datos es a través de un tercero.

Ya que descartó el uso de Marcadores, lo cual tiene sentido si los usuarios no desean sincronizar los marcadores.

Cada vez que persiste datos a través del almacenamiento (Web SQL Storage, localStorage, IndexDB), agarra ese objeto y lo serializa en JSON (a través de JSON.stringify) y lo envía a algún servicio en línea como Google Docs.

Eso sería bastante complicado para Web SQL Storage e IndexDB, tendría que hacer su propio importador y exportador. Para localStorage es bastante simple, ya que es un par clave/valor.

Requiere un poco de trabajo vincularlo a una Cuenta de Google (como Docs). Tendría que usar OAuth y hacer las conexiones para conectar su extensión al servicio. Una vez que esté conectado, no es tan difícil mantener el estado.

Buena suerte :)

+2

Esta respuesta ya no es correcta, ya que Chrome 20 –

+2

@AndreGoncalves gracias, la respuesta actualizada refleja nuestra nueva API de sincronización de almacenamiento. –

24

Chrome 20 soporta chrome.storage.sync API. Parece ajustarse perfectamente a tus necesidades.

+5

¡La respuesta correcta anterior está desactualizada, esta debería ser la nueva respuesta correcta! – Soviut

+0

+1, esta es la respuesta correcta –

Cuestiones relacionadas