Android 集成Flutter 组件

初始Flutter

Flutter 是 Google推出并开源的移动应用开发框架,主打跨平台、高保真、高性能。开发者可以通过 Dart语言开发 App,一套代码同时运行在 iOS 和 Android平台。 Flutter提供了丰富的组件、接口,开发者可以很快地为 Flutter添加 native扩展。同时 Flutter还使用 Native引擎渲染视图,这无疑能为用户提供良好的体验。

搭建Flutter开发环境

1.安装flutter https://flutterchina.club/get-started/install/

Flutter集成到现有的Android应用中需要如下几个主要步骤:

  • 首先,创建Flitter module;
  • 创建或者已有Android项目中添加Flutter module依赖;
  • 编写Dart代码;
  • 在android中调用Flutter module;
  • 运行项目;
1.创建Flutter module

a.打开终端
b.进入自己存放目录,输入命令 flutter create -t module xxxx (flutter文件名)



c.用Android studio 打开刚刚创建的flutter_module,可运行一下。说明已创建成功。在main.dart文件里面编写页面代码:



d.创建Android新项目或者在已有Android项目中添加依赖,打开Android项目的settings.gradle

e.app根目录build.gradle添加依赖

f.在android项目中需要添加activity里面添加Flutter View



再回到flutter中创建一个单独battery_widget.dart文件,代码如下
class BatteryWidget extends StatefulWidget {
  @override
  _BatteryWidget createState() => _BatteryWidget();
}
class _BatteryWidget extends State {
  String _batteryLevel = 'Battery level: unknown.';
  static const MethodChannel methodChannel =
      MethodChannel('com.lb.flutterhybridandroid');
  Future _getBatteryLevel() async {
    String battertLevel;
    try {
      final int resulu = await methodChannel.invokeMethod('getBattertLevel');
      battertLevel = 'Battery level:$resulu.';
    } on PlatformException {
      battertLevel = 'Failed to get battery level.';
    }
    setState(() {
      _batteryLevel = battertLevel;
    });
  }
  @override
  Widget build(BuildContext context) {
    return Center(
      child: Column(
        mainAxisAlignment: MainAxisAlignment.center,
        children: [
          Text(_batteryLevel),
          RaisedButton(
            child: const Text('Refresh'),
            onPressed: _getBatteryLevel,
          )
        ],
      ),
    );
  }
}

最后检查代码,runy一下,如出现下面这样,说明你以成功了。


你可能感兴趣的:(Android 集成Flutter 组件)