有没有办法检测手机浏览器中是否使用了flutter web?

问题描述 投票:0回答:4

我知道

Platform
常量可用于识别 flutter 构建编译运行的对象。

但是有什么方法可以识别用户正在移动设备上使用 flutter 网站吗?

感谢任何帮助,提前致谢。

flutter flutter-web
4个回答
2
投票

我相信您可以通过检查平台和屏幕尺寸来做到这一点。 如果平台是网页并且屏幕尺寸很小,那么肯定是移动浏览器。

GetX 包还有一个名为 isPhone 的方法,你也可以使用它。

bool isTablet = context.isTablet;
bool isPhone = context.isPhone;
bool isAndroid = GetPlatform.isAndroid;
bool isIos = GetPlatform.isIOS;
bool isMacOs = GetPlatform.isMacOS;
bool isWindows = GetPlatform.isWindows;
bool isLinux = GetPlatform.isLinux;
bool isFuchsia = GetPlatform.isFuchsia;
bool isMobile = GetPlatform.isMobile;
bool isWeb = GetPlatform.isWeb;
bool isDesktop = GetPlatform.isDesktop;
bool isLandScape = context.isLandscape;
bool isPortrait = context.isPortrait;
double screenHeight = Get.height;
double screenWidth = Get.width;

2
投票

您可以检查 device_info_plus 包,特别是 WebBrowserInfo 类以获取一些相关信息。


2
投票

您可以使用

TargetPlatform
中的
package:flutter/foundation.dart
类,例如:

defaultTargetPlatform == TargetPlatform.iOS


defaultTargetPlatform == TargetPlatform.android


0
投票

如果您想在没有第三方包的情况下检查此内容,请使用

导入'包:flutter/foundation.dart';

最终 isWebMobile = kIsWeb && (defaultTargetPlatform == TargetPlatform.iOS || defaultTargetPlatform == TargetPlatform.android);

参考:https://github.com/flutter/flutter/issues/80505

© www.soinside.com 2019 - 2024. All rights reserved.