Buscar pacotes, repositórios e categorias de apps

Detalhes do pacotev3.1.0

cross_local_storage

Wrapper do SharedPreferences para dispositivos móveis (Android/iOS), web e desktop (Windows, macOS, Linux). Também oferece armazenamento de arquivos JSON.

AndroidiOSWebmacOSWindowsLinux
Downloads em 30 dias
343
Curtidas
32
Pontos Pub
160

Instalar pacote

flutter pub add cross_local_storage

Visão geral do pacote

Orientação gerada a partir de informações públicas. Apenas para referência.

CrossLocalStorage é um pacote Flutter/Dart que fornece uma interface unificada para armazenamento persistente em plataformas móveis (Android/iOS), web e desktop (Windows, macOS, Linux). Ele encapsula SharedPreferences para dispositivos móveis e web, enquanto oferece armazenamento baseado em arquivos JSON para ambientes de desktop. O pacote garante acesso consistente aos dados independentemente da plataforma, simplificando o desenvolvimento de aplicativos multiplataforma. Suporta tanto armazenamento chave-valor quanto persistência de arquivos JSON estruturados, tornando-o ideal para armazenar preferências do usuário, estado do aplicativo ou pequenos conjuntos de dados de forma confiável.

Casos de uso

  • Armazenar preferências do usuário entre plataformas
  • Persistência do estado do aplicativo em aplicativos multiplataforma
  • Salvando arquivos de configuração como JSON
  • Gerenciando dados locais em aplicativos web e desktop
  • Compartilhando dados simples entre dispositivos móveis e desktop
  • Habilitar funcionalidade de primeiro offline

Principais recursos

  • API unificada para todas as plataformas
  • Armazenamento de arquivos JSON no desktop
  • Fallback do SharedPreferences no móvel/web
  • Acesso a dados independente de plataforma
  • Suporta string, int, bool e tipos complexos
  • Serialização/desserialização automática

Indicado para

  • Desenvolvedores cross-platform do Flutter
  • Aplicativos que exigem persistência local em múltiplos destinos
  • Desenvolvedores evitando código específico de plataforma
  • Projetos usando JSON para dados locais
  • Equipes priorizando reutilização de código
  • Aplicativos que precisam de armazenamento local leve

Considerações

  • Não adequado para dados em grande escala
  • O armazenamento de arquivos JSON pode afetar o desempenho no desktop
  • Limitado a estruturas de dados simples
  • Sem criptografia embutida
  • Requer manipulação cuidadosa de caminhos de arquivos no desktop
  • Não projetado para gravações de alta frequência

README original

Snapshot do README original do repositório-fonte vinculado. Consulte o repositório para o conteúdo mais recente.

cross_local_storage

Build Pub GitHub GitHub stars

Wraps NSUserDefaults (on iOS and macOS), SharedPreferences (on Android), LocalStorage (on Web) and JSON file (on Windows and Linux), providing a persistent store for simple data. Data is persisted to disk asynchronously. Neither platform can guarantee that writes will be persisted to disk after returning and this plugin must not be used for storing critical data.

Getting Started

In order to use this plugin, add dependency in the pubspec.yaml:

cross_local_storage: any

or

cross_local_storage:
  git:
    url: https://github.com/marchdev-tk/cross_local_storage

Add an import to dart file:

import 'package:cross_local_storage/cross_local_storage.dart';
Example
import 'package:flutter/material.dart';
import 'package:cross_local_storage/cross_local_storage.dart';

void main() {
  runApp(MaterialApp(
    home: Scaffold(
      body: Center(
      child: RaisedButton(
        onPressed: _incrementCounter,
        child: Text('Increment Counter'),
        ),
      ),
    ),
  ));
}

_incrementCounter() async {
  LocalStorageInterface prefs = await LocalStorage.getInstance();
  int counter = (prefs.getInt('counter') ?? 0) + 1;
  print('Pressed $counter times.');
  await prefs.setInt('counter', counter);

Feature requests and Bug reports

Feel free to post a feature requests or report a bug here.

Categorias

Dependências

Lista de dependências 1 itens

Repositório-fonte

Projetos que usam este pacote

Ainda não há dados.