是否有调用来确定颤动是否在模拟器或物理设备中运行?
我正在扫描二维码,想要绕过,因为相机不可用。
我希望在platform.dart
[1]中找到这个,但它不存在。
[1] https://github.com/flutter/flutter/blob/master/packages/flutter/lib/src/foundation/platform.dart
我想我可以创建一个插件,如果我真的需要,我希望它已经存在。
答案 0 :(得分:3)
使用device info插件,您可以获得有关您正在运行的设备的各种信息,包括' isPhysicalDevice'对于Android和iOS(虽然你必须独立阅读它们)。
答案 1 :(得分:3)
它现在是 Flutter Community Plus (https://plus.fluttercommunity.dev/) 的一部分
设备信息加文档:https://plus.fluttercommunity.dev/docs/device_info_plus/overview
例如:
DeviceInfoPlugin deviceInfo = DeviceInfoPlugin();
if(Platform.isIOS){
var iosInfo = await deviceInfo.iosInfo;
if(iosInfo.isPhysicalDevice){...}
}
最好,
答案 2 :(得分:2)
没有。 但是你可以做的是使用不同的配置(例如开发配置)。
为此,您可以使用其他main.dart
,例如main.dev.dart
,然后使用flutter run -t lib/main.dev.dart
答案 3 :(得分:0)
我正在使用 https://pub.dev/packages/flutter_is_emulator
import 'package:flutter_is_emulator/flutter_is_emulator.dart';
....
bool isAnEmulator = await FlutterIsEmulator.isDeviceAnEmulatorOrASimulator;
答案 4 :(得分:0)
我知道我有点晚了,但如果其他人来这里,这可以帮助他们。 你可以只使用这个包: https://pub.dev/packages/safe_device
在您的 Pubspec.yaml
文件中添加最新版本
然后导入:
import 'package:safe_device/safe_device.dart';
然后您可以检查设备是否为模拟器:
bool isRealDevice = await SafeDevice.isRealDevice;