gpt4 book ai didi

operating-system - 如何在运行时检查平台

转载 作者:IT老高 更新时间:2023-10-28 12:43:39 26 4
gpt4 key购买 nike

如何在运行时检查平台(Android/iOS)?

如果我在 Android 上而不是在 iOS 上,我想改变我的 Flutter 应用程序行为。

像这样:

_openMap() async {
// Android
var url = 'geo:52.32,4.917';
if (/* i'm on iOS */) {
url = 'http://maps.apple.com/?ll=52.32,4.917';
}
if (await canLaunch(url)) {
await launch(url);
} else {
throw 'Could not launch $url';
}
}

最佳答案

我在 SO 上进行了一些搜索,也尝试在 Google 上搜索,但这种情况的索引不是很好,所以我认为我的问题和分析器可以帮助开始在 Flutter 上进行开发。

如果您必须在运行时检查设备的操作系统或平台,您可以使用 Platform class of dart.io library .

import 'dart:io'

这样你就可以像这样检查:

_openMap() async {
// Android
var url = 'geo:52.32,4.917';
if (Platform.isIOS) {
// iOS
url = 'http://maps.apple.com/?ll=52.32,4.917';
} else if (Platform.isWindows) {
// TODO - something to do?
}
if (await canLaunch(url)) {
await launch(url);
} else {
throw 'Could not launch $url';
}
}

如果您还需要深入了解该设备,您可以使用 dart device_info package .

有一个很好的例子here .

这样,您不仅可以检查您运行的平台,还可以检查操作系统的特定版本(iOS 9、10.3、11.x、Lollipop、Jellybean 等)和许多其他设备信息。

更新:

在 Flutter Live 2018 之后 --> 看看这个 gr8 youtube video用于 Platform Aware Widget 以及从同一代码库兼容 Android 和 iOS UI 的最佳方式。

关于operating-system - 如何在运行时检查平台,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49347721/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com