Apidog

Nền tảng phát triển API hợp tác tất cả trong một

Thiết kế API

Tài liệu API

Gỡ lỗi API

Giả lập API

Kiểm thử API tự động

Quản lý phiên bản Flutter (FVM): Giải thích

中村 拓也

中村 拓也

Updated on tháng 4 5, 2025

Quản lý Phiên bản Flutter (FVM) là một công cụ cần thiết cho các nhà phát triển Flutter giúp đơn giản hóa quy trình quản lý nhiều phiên bản SDK Flutter khác nhau trên các dự án khác nhau. Khi Flutter phát triển nhanh chóng với các bản cập nhật thường xuyên, việc có một hệ thống quản lý phiên bản mạnh mẽ trở nên rất quan trọng để duy trì sự ổn định của dự án. Hướng dẫn chi tiết này sẽ hướng dẫn bạn tất cả những gì bạn cần biết về FVM, từ cài đặt đến các kịch bản sử dụng nâng cao.

Khi phát triển ứng dụng Flutter, bạn thường cần thử nghiệm và tương tác với các API. Apidog là một lựa chọn tuyệt vời thay thế cho Postman, cung cấp một bộ tính năng toàn diện cho việc phát triển và thử nghiệm API.

Tại sao nên xem xét Apidog?

Apidog cung cấp một trải nghiệm tinh gọn với các tính năng giúp việc thử nghiệm API trở nên hiệu quả hơn:

  1. Nền tảng Tất cả trong Một: Tài liệu API, thiết kế, gỡ lỗi, thử nghiệm tự động và giả lập trong một công cụ duy nhất
  2. Giao diện Trực quan: Thiết kế thân thiện với người dùng với các khả năng mạnh mẽ
  3. Máy chủ Giả lập Tích hợp: Tạo các API giả lập mà không cần viết mã

4. Tính năng Hợp tác: Hợp tác nhóm theo thời gian thực với các bản cập nhật đồng bộ

5. Hỗ trợ OpenAPI: Nhập và xuất các thông số kỹ thuật OpenAPI một cách liền mạch

6. Tài liệu Tự động sinh: Tạo tài liệu API đẹp mắt, tương tác một cách tự động

7. Khả năng Thử nghiệm Nâng cao: Tạo kịch bản thử nghiệm phức tạp với scripting mạnh mẽ

button

Tại sao bạn cần Quản lý Phiên bản Flutter

Trước khi đi vào chi tiết kỹ thuật, hãy hiểu lý do tại sao FVM lại quan trọng đối với các nhà phát triển Flutter:

  1. Các Phiên bản Flutter Cụ thể cho Dự án: Các dự án khác nhau có thể yêu cầu các phiên bản SDK Flutter khác nhau dựa trên tính tương thích của gói hoặc yêu cầu của khách hàng.
  2. Độ nhất quán của Nhóm: Đảm bảo tất cả các thành viên trong nhóm sử dụng cùng một phiên bản Flutter, loại bỏ các vấn đề "chạy trên máy của tôi".
  3. Chuyển đổi SDK Dễ dàng: Chuyển đổi nhanh giữa các kênh ổn định, beta hoặc dev mà không cần cài đặt lại tốn thời gian.
  4. Hỗ trợ Nhiều Dự án: Làm việc trên nhiều dự án cùng một lúc mà không có xung đột phiên bản.
  5. Thử nghiệm các Phiên bản Mới: An toàn thử nghiệm các phiên bản Flutter mới mà không ảnh hưởng đến các dự án sản xuất ổn định của bạn.

Cài đặt

Hãy bắt đầu bằng cách cài đặt FVM trên hệ thống của bạn. Quy trình cài đặt có chút khác biệt tùy thuộc vào hệ điều hành của bạn:

Dành cho macOS:

Sử dụng Homebrew:

brew tap leoafarias/fvm
brew install fvm

Sử dụng script cài đặt:

curl -fsSL https://fvm.app/install.sh | bash

Dành cho Windows:

Sử dụng Chocolatey:

choco install fvm

Hoặc tải gói độc lập từ repository FVM trên GitHub.

Dành cho Linux:

Sử dụng script cài đặt:

curl -fsSL https://fvm.app/install.sh | bash

Kích hoạt Toàn cầu

Sau khi cài đặt FVM, kích hoạt nó toàn cầu:

dart pub global activate fvm

Các Lệnh và Cách Sử dụng Cơ bản của FVM

Giờ đây bạn đã cài đặt FVM, hãy khám phá các lệnh cơ bản để quản lý các phiên bản SDK Flutter.

Cài đặt các Phiên bản Flutter

Để cài đặt một phiên bản Flutter cụ thể:

fvm install 3.16.0

Bạn cũng có thể cài đặt một kênh cụ thể:

fvm install stable
fvm install beta
fvm install dev

Đối với người dùng nâng cao, bạn thậm chí có thể cài đặt một commit cụ thể bằng cách sử dụng hash commit git:

fvm install fa345b1  # Hash ngắn
fvm install 476ad8a917e64e345f05e4147e573e2a42b379f9  # Hash dài

Đặt một Phiên bản Flutter cho Dự án của Bạn

Để đặt một phiên bản Flutter cụ thể cho dự án của bạn, hãy điều hướng đến thư mục dự án của bạn và chạy:

fvm use 3.16.0

Lệnh này tạo một thư mục .fvm trong dự án của bạn và thiết lập một liên kết biểu tượng đến SDK Flutter đã chỉ định.

Để sử dụng phiên bản mới nhất từ một kênh cụ thể:

fvm use stable

Nếu bạn muốn giữ kênh ở phiên bản hiện tại (ngăn chặn cập nhật tự động):

fvm use stable --pin

Liệt kê các Phiên bản đã Cài đặt

Để xem tất cả các phiên bản Flutter bạn đã cài đặt qua FVM:

fvm list

Hoặc bạn có thể sử dụng viết tắt:

fvm ls

Xem các Bản phát hành Flutter có sẵn

Để xem tất cả các bản phát hành SDK Flutter có sẵn:

fvm releases

Để lọc các bản phát hành theo kênh:

fvm releases --channel beta

Gỡ bỏ một Phiên bản Flutter

Khi bạn không còn cần một phiên bản Flutter cụ thể:

fvm remove 3.16.0

Đặt một Phiên bản Flutter Toàn cầu

Để đặt một phiên bản Flutter toàn cầu để sử dụng trên hệ thống của bạn:

fvm global 3.16.0

Để hủy liên kết phiên bản toàn cầu:

fvm global --unlink

Cấu hình Dự án

Sau khi bạn đã thiết lập FVM cho dự án của mình, bạn sẽ cần cấu hình môi trường phát triển của mình để sử dụng SDK Flutter do FVM quản lý.

Cập nhật .gitignore

FVM tạo một liên kết biểu tượng tại .fvm/flutter_sdk trỏ đến bộ nhớ cache của phiên bản Flutter mà bạn đã chọn. Thêm điều này vào .gitignore của bạn:

.fvm/flutter_sdk

Cấu hình IDE

VS Code

Tạo hoặc cập nhật .vscode/settings.json trong dự án của bạn với những nội dung sau:

{
  "dart.flutterSdkPath": ".fvm/flutter_sdk",
  // Loại bỏ các tệp .fvm khỏi tìm kiếm
  "search.exclude": {
    "**/.fvm": true
  },
  // Loại bỏ khỏi việc theo dõi tệp
  "files.watcherExclude": {
    "**/.fvm": true
  }
}

Android Studio

  1. Đi tới Ngôn ngữ & Frameworks > Flutter
  2. Thay đổi đường dẫn SDK Flutter thành đường dẫn tuyệt đối của liên kết biểu tượng FVM của bạn (ví dụ: /absolute-project-path/.fvm/flutter_sdk)
  3. Áp dụng các thay đổi và khởi động lại Android Studio

Để bỏ qua thư mục gốc SDK Flutter trong Android Studio, hãy thêm điều này vào .idea/workspace.xml:

<component name="VcsManagerConfiguration">
  <ignored-roots>
    <path value="$PROJECT_DIR$/.fvm/flutter_sdk" />
  </ignored-roots>
</component>

XCode

Nếu bạn đang làm việc trên iOS, mở Xcode, đi tới Các giai đoạn xây dựng, và thêm điều này vào Chạy script:

export FLUTTER_ROOT="$PROJECT_DIR/../.fvm/flutter_sdk"

Các Tính năng Nâng cao của FVM

Hương vị Dự án

FVM hỗ trợ các hương vị dự án, cho phép các phần khác nhau của ứng dụng của bạn sử dụng các phiên bản SDK Flutter khác nhau:

fvm use 3.16.0 --flavor production
fvm use 3.10.0 --flavor development

Để chuyển đổi giữa các hương vị:

fvm use production
fvm use development

Để chạy một lệnh Flutter với một hương vị cụ thể:

fvm flavor production flutter build

Thực thi các Lệnh Flutter với các Phiên bản cụ thể

Lệnh spawn cho phép bạn chạy các lệnh Flutter với một phiên bản SDK cụ thể:

fvm spawn 3.16.0 flutter build
fvm spawn 3.10.0 flutter test

Chạy các Lệnh với Phiên bản Flutter của Dự án

Lệnh exec thực thi các lệnh hoặc script sử dụng phiên bản Flutter đã cấu hình của dự án:

fvm exec melos bootstrap
fvm exec path/to/script.sh

Làm việc với FVM trong Môi trường CI/CD

Đối với tích hợp liên tục, thêm các bước này vào quy trình làm việc của bạn:

  1. Cài đặt FVM
  2. Chạy fvm install
  3. Sử dụng fvm flutter <command> để chạy các lệnh Flutter

Ví dụ cho GitHub Actions:

steps:
  - uses: actions/checkout@v3
  - name: Cài đặt FVM
    run: |
      dart pub global activate fvm
      fvm install
  - name: Xây dựng và Thử nghiệm
    run: |
      fvm flutter pub get
      fvm flutter test

Các Thực tiễn Tốt nhất khi Sử dụng FVM

  1. Luôn sử dụng FVM cho các lệnh Flutter - Chạy các lệnh Flutter qua FVM (ví dụ: fvm flutter pub get) để đảm bảo tính nhất quán.
  2. Bao gồm phiên bản FVM trong tài liệu dự án - Ghi lại phiên bản Flutter cần thiết trong README của bạn để giúp các thành viên mới trong nhóm.
  3. Khóa phiên bản Flutter trong CI/CD - Đảm bảo pipeline tích hợp liên tục của bạn sử dụng cùng một phiên bản Flutter như môi trường phát triển của bạn.
  4. Xem xét việc sử dụng --pin để ổn định - Khi sử dụng một kênh như 'ổn định', hãy xem xét việc khóa nó để tránh cập nhật tự động.
  5. Thường xuyên dọn dẹp bộ nhớ cache - Định kỳ gỡ bỏ các phiên bản Flutter không sử dụng bằng fvm remove để tiết kiệm dung lượng đĩa.

Khắc phục các Vấn đề Thường gặp

Phiên bản FVM Không Được Nhận diện

Nếu IDE của bạn không nhận diện phiên bản Flutter được đặt bởi FVM:

  1. Đảm bảo đường dẫn SDK Flutter được thiết lập chính xác trong cài đặt IDE của bạn
  2. Khởi động lại IDE của bạn sau khi thay đổi cấu hình
  3. Xác minh liên kết biểu tượng đã được tạo đúng với ls -la .fvm/flutter_sdk

Vấn đề Quyền truy cập

Nếu bạn gặp lỗi quyền truy cập:

  1. Trên các hệ thống dựa trên Unix, hãy thử sudo fvm <command>
  2. Kiểm tra quyền thư mục cho thư mục bộ nhớ cache của FVM

Vấn đề Đường dẫn

Nếu không tìm thấy các lệnh Flutter sau khi sử dụng FVM:

  1. Đảm bảo đường dẫn SDK Flutter có trong PATH hệ thống của bạn
  2. Sử dụng đường dẫn tuyệt đối đến SDK Flutter trong các script của bạn

Kết luận

Quản lý Phiên bản Flutter (FVM) là một công cụ không thể thiếu cho phát triển Flutter hiện đại. Bằng cách cho phép kiểm soát chính xác các phiên bản SDK Flutter trên các dự án khác nhau, nó loại bỏ các vấn đề về tính tương thích và đảm bảo tính nhất quán giữa các nhóm phát triển.

Bắt đầu từ các kiến thức cơ bản về cài đặt và tiến đến các tính năng nâng cao như hương vị dự án, hướng dẫn này đã đề cập đến các khía cạnh thiết yếu của việc sử dụng FVM hiệu quả. Bằng cách tích hợp FVM vào quy trình phát triển Flutter của bạn, bạn có thể nâng cao năng suất, duy trì ổn định dự án, và hợp tác một cách dễ dàng với các thành viên trong nhóm.

Hãy nhớ luôn chạy các lệnh Flutter qua FVM để đảm bảo tính nhất quán về phiên bản và tránh những hành vi không mong muốn. Với việc sử dụng FVM đúng cách, bạn có thể tự tin làm việc trên nhiều dự án Flutter với các yêu cầu SDK khác nhau và dễ dàng thử nghiệm với các phiên bản Flutter mới mà không ảnh hưởng đến mã sản xuất của bạn.

Chúc bạn lập trình Flutter vui vẻ với FVM!