Pergunta

Estou fazendo uma espécie de aplicativo de dicionário que usa SQLite.Tenho uma única tabela que guarda o par de palavras estrangeiras e suas traduções.Eu quero sincronizar esta tabela com uma planilha específica em documentos Google.

Eu encontrei isso biblioteca incrível recuperar e manipular GoogleSpreadsheets, então pelo menos estou coberto para isso.Mas não me sinto confortável com a sincronização.Agora,

  1. Posso usar um SyncAdapter para fazer essa sincronização entre meus SQLite e um GoogleSpreadsheet?Se sim, como eu faria isso?Eu recuperaria e manipularia as linhas da planilha no onPerformSync ou smth?
  2. Quais poderiam ser as outras alternativas para tal cenário?Devo usar um serviço normal para fazer a verificação quando o usuário solicitar (na atividade principal, por exemplo)?

Nos vídeos do Google I/O (particularmente em Aplicativos cliente REST para Android ) eles parecem bastante persuasivos para usar o SyncAdapter mas não tenho certeza se isso poderia me ajudar sem um serviço REST real.

Desde já, obrigado..

Foi útil?

Solução

Um bom motivo para usar o Android SyncAdapter, ContentProvider e SyncManager é que você se beneficiará do conhecimento do sistema Google que é útil para preservar a vida útil da bateria e outros recursos.Parte desse conteúdo está no vídeo ao qual você vincula.Por exemplo, lógica de back-off exponencial para evitar tentativas inúteis de sincronização.

Há algumas boas informações sobre a preservação da vida útil da bateria, conservando a energia do rádio celular nos dias de hoje. Palestra do Google I/O 2012 "Tornando bons aplicativos excelentes:Tópicos mais avançados para desenvolvedores Android especializados." Embora não seja mencionado explicitamente, penso que o SyncManager provavelmente terá as propriedades de conservação da bateria mencionadas neste vídeo.

Com base na minha leitura (na verdade, não implementando nada) das APIs e outros recursos, como o com.example.android.samplesync pacote, parece que o padrão é flexível o suficiente para se adaptar às necessidades do seu programa.

A equipe com a qual estou trabalhando implementou a sincronização personalizada para nosso aplicativo Android, mas posso dizer que não consideramos essa opção porque estávamos comprometidos em escrever o máximo de lógica possível para executar com o WebView.Eu não recomendaria necessariamente isso, mas isso está além do escopo aqui.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top