Flutter如何侦测运行的App是在哪个系统平台呢?非常简单实现

百度已收录   阅读次数: 83
2021-08-0718:11:27 发表评论
摘要

要想侦测开发的App是在哪个系统平台开发的,使用flutter是非常简单就可以实现的,根据其给的两个官方支撑库,一个是'dart:io',一个是'flutter/foundation.dart',稍加灵活的引用就可以了,本篇文章以一个简单的实例就可以学会了,请看本篇文章……

Flutter如何侦测运行的App是在哪个系统平台呢?非常简单实现

开篇寄语

要想侦测开发的App是在哪个系统平台开发的,使用flutter是非常简单就可以实现的,根据其给的两个官方支撑库,一个是'dart:io',一个是'flutter/foundation.dart',稍加灵活的引用就可以了,本篇文章以一个简单的实例就可以学会了,请看本篇文章。

前情提要

内容详情

以下内容大多是更改lib下的main.dart文件内容,删掉里面的内容,复制粘贴代码,开启调试就可以出现了。

import 'dart:io' show Platform;
import 'package:flutter/material.dart';
import 'package:flutter/foundation.dart' show kIsWeb;

void main() {
  runApp(MyApp());
}

class MyApp extends StatefulWidget {
  @override
  _MyAppState createState() => _MyAppState();
}

class _MyAppState extends State<MyApp> {
  String str = 'Click!';

  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      home: Scaffold(
          appBar: AppBar(
            title: Text('Detecting System'),
          ),
          body: Center(
              child: Column(children: <Widget>[
            Container(
              width: 200.0,
              height: 50.0,
              margin: EdgeInsets.all(25),
              child: ElevatedButton(
                style: ButtonStyle(
                    backgroundColor: MaterialStateProperty.all(Colors.red)),
                child: Text(
                  str,
                  style:
                      TextStyle(fontSize: 20.0, color: Colors.yellow.shade200),
                ),
                onPressed: () {
                  setState(() {
                    if (kIsWeb) {
                      str = 'Web-specific code'; // running on the web!
                    } else {
                      if (Platform.isAndroid) {
                        str = 'Android-specific code';
                      } else if (Platform.isIOS) {
                        str = 'IOS-specific code'; // iOS-specific code
                      } else if (Platform.isFuchsia) {
                        str = 'Fuchsia-specific code';
                      } else if (Platform.isLinux) {
                        str = 'Linux-specific code';
                      } else if (Platform.isMacOS) {
                        str = 'MacOS-specific code';
                      } else if (Platform.isWindows) {
                        str = 'Windows-specific code';
                      } else {
                        str = 'Unkown-specific code';
                      }
                    }
                  });
                },
              ),
            ),
          ]))),
    );
  }
}

运行效果如下图所示:

Flutter如何侦测运行的App是在哪个系统平台呢?非常简单实现
Flutter如何侦测运行的App是在哪个系统平台呢?非常简单实现
Flutter如何侦测运行的App是在哪个系统平台呢?非常简单实现

怎么样,是不是很简单呢?

分享至:
  • 我的微信
  • 微信扫一扫加好友
  • weinxin
  • 我的微信公众号
  • 扫描关注公众号
  • weinxin

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: