universal_platform
Webおよびデスクトップ、モバイルでも動作する dart:io.Platform クラスの代替です。ビュー/モデル層でのプラットフォームチェックを簡単に実行できます。
dart.io.Platform のウェブ対応実装。実行時エラー「Unsupported operation: Platform._operatingSystem」を回避するのに役立ちます。
以下は英語原文のスナップショットです。最新版は GitHub をご覧ください。
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.
dependencies:
universal_platform: ^1.0.0+1
Remove any usages of dart.io.Platform, and replace with this:
import 'package:universal_platform/universal_platform.dart';
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;
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.
MIT License