Buscar pacotes, repositórios e categorias de apps

Detalhes do pacotev1.1.0

universal_platform

Substituto da classe dart:io.Platform que funciona no Web, bem como em Desktop e Móvel. Permite verificações de plataforma facilmente na camada de visualização/modelo.

AndroidiOSWebmacOSWindowsLinux
Downloads em 30 dias
1,8 mi
Curtidas
313
Pontos Pub
150

Instalar pacote

flutter pub add universal_platform

Visão geral do pacote

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

O pacote universal_platform fornece um substituto multiplataforma para a classe Platform do Dart, permitindo detecção consistente de plataforma em ambientes Web, móveis e desktop. Ele permite que desenvolvedores realizem verificações de plataforma nas camadas de lógica de negócios (como visualizações e modelos) sem depender de implementações específicas da plataforma. Isso garante um comportamento confiável independentemente do tempo de execução alvo, simplificando o código que precisa se adaptar com base na plataforma subjacente.

Casos de uso

  • Desenvolvimento de aplicativos multiplataforma
  • lógica de comportamento/UI específica da plataforma
  • Lógica de negócios compartilhada entre plataformas
  • Testes em múltiplos alvos
  • Evitando importações específicas de plataforma

Principais recursos

  • Detecção de plataforma unificada
  • Funciona no Web, Android, iOS, macOS, Windows, Linux
  • Não é necessário importações condicionais
  • API simples semelhante ao dart:io.Platform
  • Suporta isAndroid, isIOS, isWeb, etc.

Indicado para

  • Desenvolvedores direcionados para múltiplas plataformas
  • Aplicativos que exigem verificações de plataforma consistentes
  • Equipes evitando duplicação de código específico de plataforma
  • Projetos usando lógica compartilhada entre plataformas
  • Aqueles que precisam de suporte confiável para a web

Considerações

  • Requer importação explícita em vez de dart:io.Platform
  • Pode não cobrir todos os recursos específicos da plataforma
  • Limitado à identificação básica da plataforma
  • Não é um substituto completo para toda a funcionalidade do dart:io
  • Depende da gestão de dependências externas

README original

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

Universal Platform - A Web-safe Platform class

pub package

Currently, if you include the dart.io.Platform anywhere in your code, your app will throw the following error on Web:

Unsupported operation: Platform._operatingSystem

With this plugin you can perform platform detection on all platforms, including Web, without errors.

🔨 Installation

dependencies:
  universal_platform: ^1.0.0+1
⚙ Import

Remove any usages of dart.io.Platform, and replace with this:

import 'package:universal_platform/universal_platform.dart';

🕹️ Usage

This acts as a drop-in replacement for dart.io.Platform, with a different name for improved clarity.

//This will explode on Web
bool isIos = Platform.isIOS;

//This will not :)
bool isIos = UniversalPlatform.isIOS;
bool isWeb = UniversalPlatform.isWeb;

🐞 Bugs/Requests

If you encounter any problems feel open an issue. If you feel the library is missing a feature, please raise a ticket on Github and we'll look into it. Pull request are also welcome.

📃 License

MIT License

Categorias

Repositório-fonte

Projetos que usam este pacote