Flutter虚拟机管理插件indie_vm的使用

发布于 1周前 作者 sinazl 来自 Flutter

Flutter虚拟机管理插件indie_vm的使用

Overview

IndieVM 是一种节省时间且极简的方式来处理 Flutter 应用中的 MVVM 架构。无论是初学者还是专业人士,这个微小的包都可以直接使用。

Installation

在项目中添加 indie_vm 插件:

dart pub add indie_vm

Usage

以下是一个完整的示例,展示如何使用 indie_vm 来管理页面的虚拟机(ViewModel)。

示例代码

import 'package:flutter/material.dart';
import 'package:state_beacon/state_beacon.dart'; // 引入状态管理工具
import 'package:get_it/get_it.dart'; // 引入依赖注入工具

// 定义 ViewModel 类,实现 IndieVM 接口
class ProfilePageVM implements IndieVM {
  // 使用 GetIt 注入服务
  final appServices = GetIt.instance<AccountService>();

  // 使用 StateBeacon 管理可观察状态
  final accountName = Beacon.writable("unknown");

  [@override](/user/override)
  void onDispose() {
    // 页面销毁时清理资源
    appServices.profilePageDismissed();
  }

  [@override](/user/override)
  void onInit(BuildContext context) {
    // 页面初始化时调用相关逻辑
    appServices.profilePageEntered();
    appServices.getAccountNameAsync(
      onNameRetrieved: (String name) {
        accountName.value = name; // 更新账户名称
      },
    );
  }
}

// 定义页面类,继承自 IndieView
class ProfilePage extends IndieView<ProfilePageVM> {
  ProfilePage({super.key});

  [@override](/user/override)
  Widget builder(BuildContext context, ProfilePageVM viewModel) {
    // 使用 ViewModel 中的状态构建 UI
    return Container(
      child: Text(viewModel.accountName.watch(context)), // 监听状态变化并更新 UI
    );
  }

  [@override](/user/override)
  ProfilePageVM viewModelBuilder(BuildContext context) => ProfilePageVM(); // 返回 ViewModel 实例
}

更多关于Flutter虚拟机管理插件indie_vm的使用的实战系列教程也可以访问 https://www.itying.com/category-92-b0.html

1 回复

更多关于Flutter虚拟机管理插件indie_vm的使用的实战系列教程也可以访问 https://www.itying.com/category-92-b0.html


indie_vm 是一个用于管理 Flutter 虚拟机的插件,它可以帮助开发者在不同的虚拟环境中运行和测试 Flutter 应用程序。这个插件特别适用于需要在多个设备或模拟器上并行测试应用的场景。

安装 indie_vm 插件

要使用 indie_vm,首先需要在你的 Flutter 项目中添加该插件。你可以通过以下步骤来安装:

  1. 打开 pubspec.yaml 文件: 在你的 Flutter 项目中,找到并打开 pubspec.yaml 文件。

  2. 添加依赖: 在 dependencies 部分添加 indie_vm 插件:

    dependencies:
      flutter:
        sdk: flutter
      indie_vm: ^1.0.0  # 使用最新版本
  3. 获取依赖: 保存 pubspec.yaml 文件后,运行以下命令来获取依赖:

    flutter pub get

使用 indie_vm 插件

安装完成后,你可以在代码中使用 indie_vm 来管理虚拟机。以下是一些基本的使用示例:

1. 列出所有可用的虚拟机

import 'package:indie_vm/indie_vm.dart';

void listVMs() async {
  List<VmInfo> vms = await IndieVm.listVMs();
  vms.forEach((vm) {
    print('Name: ${vm.name}, ID: ${vm.id}');
  });
}

2. 启动虚拟机

void startVM(String vmId) async {
  bool success = await IndieVm.startVM(vmId);
  if (success) {
    print('VM started successfully.');
  } else {
    print('Failed to start VM.');
  }
}

3. 停止虚拟机

void stopVM(String vmId) async {
  bool success = await IndieVm.stopVM(vmId);
  if (success) {
    print('VM stopped successfully.');
  } else {
    print('Failed to stop VM.');
  }
}

4. 在特定虚拟机上运行 Flutter 应用

void runOnVM(String vmId) async {
  bool success = await IndieVm.runOnVM(vmId, 'flutter run');
  if (success) {
    print('Flutter app running on VM.');
  } else {
    print('Failed to run Flutter app on VM.');
  }
}
回到顶部
AI 助手
你好,我是IT营的 AI 助手
您可以尝试点击下方的快捷入口开启体验!