Các lựa chọn cài đặt Unity khác

Thay vì tải một tệp .zip lớn chứa tất cả tệp .unitypackage cho cả .NET 3.X và .NET 4.X, bạn có thể tải các gói riêng lẻ xuống từ trang web API của Google dành cho Unity.

Trang web này cung cấp:

  • Các tệp .unitypackage .NET 4.X riêng lẻ để nhập dưới dạng Gói tài sản.
  • Các tệp lưu trữ .tgz riêng lẻ để nhập bằng Trình quản lý gói Unity.

Điều này đặc biệt hữu ích khi ứng dụng của bạn sử dụng một sản phẩm Firebase duy nhất, vì các tệp .unitypackage riêng lẻ chứa tất cả các phần phụ thuộc cần thiết và các tệp .tgz được liệt kê cùng với các tệp .tgz có liên quan mà chúng phụ thuộc.

Trang này cung cấp hướng dẫn liên quan đến Trình quản lý gói Unity, vì vậy, bạn nên tìm hiểu về công cụ này trong tài liệu về Unity.

Nhập gói Firebase dưới dạng Thành phần

Khi nhập các sản phẩm Firebase từ tệp .unitypackage tải xuống từ trang web API của Google cho Unity, hãy lưu ý những điều sau:

  • Nếu đang sử dụng nhiều sản phẩm Firebase trong dự án, bạn phải tải xuống và nâng cấp tất cả sản phẩm Firebase lên cùng một phiên bản.

  • Không kết hợp các phương thức nhập trong một dự án. Tức là không nhập các sản phẩm Firebase bằng quy trình Gói tài sản và sử dụng quy trình Trình quản lý gói Unity.

Sau khi tải xuống, để nhập:

  1. Trong dự án Unity đang mở, hãy chuyển đến Assets (Tài sản) > Import Package (Nhập gói) > Custom Package (Gói tuỳ chỉnh).

  2. Trong cửa sổ Import Unity Package (Nhập gói Unity), hãy nhấp vào Import (Nhập).

Nhập gói Firebase bằng Trình quản lý gói Unity

Khi nhập các sản phẩm Firebase từ tệp .tgz được tải xuống từ bản lưu trữ API của Google cho Unity, hãy lưu ý những điều sau:

  • Phương thức này chỉ có trong phiên bản 2018.3 trở lên.

  • Nếu đang sử dụng nhiều sản phẩm Firebase trong dự án, bạn phải tải xuống và nâng cấp tất cả sản phẩm Firebase lên cùng một phiên bản.

  • Không kết hợp các phương thức nhập trong một dự án. Tức là không nhập các sản phẩm Firebase bằng quy trình Gói tài sản và quy trình Trình quản lý gói Unity.

  • Các phần phụ thuộc cho từng tệp .tgz của sản phẩm được liên kết cùng với các tệp .tgz riêng. Bạn phải tải xuống và nhập tệp .tgz của sản phẩm và các tệp .tgz phần phụ thuộc theo đúng thứ tự:

    1. Trình quản lý phần phụ thuộc bên ngoài (com.google.external-dependency-manager)
    2. Firebase Core (com.google.firebase.app)
    3. Các sản phẩm Firebase được sử dụng trong dự án của bạn. Nếu bạn sử dụng Realtime Database hoặc Cloud Storage, trước tiên, hãy nhập Authentication (com.google.firebase.auth).

Sau khi tải xuống, hãy nhập các tệp .tgz vào dự án của bạn bằng một trong các phương thức sau:

Giao diện người dùng của Trình quản lý gói

  1. Mở cửa sổ Package Manager (Trình quản lý gói) của Unity.
  2. Nhấp vào biểu tượng + ở góc trên cùng bên trái của cửa sổ Trình quản lý gói rồi chọn Add package from tarball để mở trình duyệt tệp.
  3. Chọn tệp tarball mà bạn muốn trong trình duyệt tệp.

Một số phiên bản cũ của Unity 2019 không hỗ trợ việc thêm trực tiếp tệp tarball. Trong trường hợp này, bạn sẽ cần:

  1. Giải nén tệp .tgz.
  2. Nhấp vào biểu tượng + ở góc trên cùng bên trái của cửa sổ Trình quản lý gói rồi chọn Add package from disk để mở trình duyệt tệp.
  3. Chọn thư mục đã giải nén trong trình duyệt tệp.

manifest.json

  1. Tạo một thư mục mới bên cạnh thư mục Packages của dự án và đặt tên là GooglePackages.
  2. Đặt các tệp .tgz vào thư mục đó.
  3. Sử dụng trình soạn thảo văn bản để mở Packages/manifest.json trong thư mục dự án Unity.
  4. Thêm một mục nhập cho mỗi gói bạn muốn nhập, liên kết tên gói với vị trí trên ổ đĩa. Hãy nhớ nối file: vào đường dẫn tệp .tgz. Ví dụ: nếu bạn đang nhập com.google.firebase.storage và phần phụ thuộc của manifest.json, thì manifest.json sẽ có dạng như sau:

    {
      "dependencies": {
        "com.google.external-dependency-manager": "file:../GooglePackages/com.google.external-dependency-manager-1.2.164.tgz",
        "com.google.firebase.app": "file:../GooglePackages/com.google.firebase.app-7.1.0.tgz",
        "com.google.firebase.auth": "file:../GooglePackages/com.google.firebase.auth-7.1.0.tgz",
        "com.google.firebase.storage": "file:../GooglePackages/com.google.firebase.storage-7.1.0.tgz",
        // com.unity package entries...
      }
    }
    
  5. Lưu tệp manifest.json.

  6. Khi lấy lại tiêu điểm, Unity sẽ tải lại manifest.json và nhập các gói mới thêm.

Một số phiên bản Unity cũ không hỗ trợ tệp .tgz trong manifest.json. Trong trường hợp này, bạn nên:

  1. Giải nén tệp .tgz.
  2. Chỉnh sửa manifest.json để sử dụng đường dẫn đến thư mục đã trích xuất thay vì tệp .tgz, như sau:

    {
      "dependencies": {
        "com.google.external-dependency-manager": "file:../GooglePackages/com.google.external-dependency-manager-1.2.164",
        "com.google.firebase.app": "file:../GooglePackages/com.google.firebase.app-7.1.0",
        "com.google.firebase.auth": "file:../GooglePackages/com.google.firebase.auth-7.1.0",
        "com.google.firebase.storage": "file:../GooglePackages/com.google.firebase.storage-7.1.0",
        // com.unity package entries...
      }
    }
    

Di chuyển từ Trình quản lý gói Unity sang Gói tài sản

Trong một số trường hợp, bạn có thể muốn chuyển từ việc sử dụng Trình quản lý gói Unity để theo dõi các sản phẩm Firebase sang nhập các sản phẩm trong thư mục Assets.

Nếu bạn không chắc mình đang sử dụng phương thức nhập nào, trong thư mục dự án Unity, hãy mở tệp Packages/manifest.json. Nếu tệp chứa các mục bắt đầu bằng com.google.firebase, thì dự án của bạn đã sử dụng Trình quản lý gói Unity để nhập.

Cách di chuyển sang Gói tài sản:

  1. Lưu ý các phiên bản gói Firebase hiện tại trong dự án của bạn và xoá các phiên bản đó.

    1. Trong trình đơn Window (Cửa sổ), hãy chọn Package Manager (Trình quản lý gói). Trong cửa sổ Package Manager (Trình quản lý gói), hãy nhớ chọn "Packages: In Project" (Gói: Trong dự án).
    2. Lưu ý các phiên bản của gói Firebase đã nhập.
    3. Nhấp vào từng tên gói, sau đó nhấp vào Xoá. Hãy nhớ xoá gói Trình quản lý phần phụ thuộc bên ngoài (.com.google.external-dependency-manager) cũng như các gói Firebase.
  2. Tải xuống và nhập các tệp .unitypackage thay thế. Bạn có hai tuỳ chọn:

    • Nếu bạn có thể nâng cấp lên phiên bản mới nhất của từng gói, hãy tải tệp zip SDK Firebase cho Unity xuống rồi nhập như mô tả trong phần Thêm Firebase vào dự án Unity.
    • Nếu cần giữ lại các phiên bản .unitypackage hiện tại, bạn có thể tải xuống và nhập từng gói như mô tả ở trên trên trang này.

Di chuyển từ Gói tài sản sang Trình quản lý gói Unity

Trong một số trường hợp, bạn có thể muốn chuyển từ việc nhập sản phẩm trong thư mục Assets sang nhập và theo dõi sản phẩm bằng Trình quản lý gói Unity.

Nếu bạn không chắc mình đang sử dụng phương thức nhập nào, trong thư mục dự án Unity, hãy mở tệp Packages/manifest.json. Nếu tệp chứa các mục bắt đầu bằng com.google.firebase, thì dự án của bạn đang sử dụng Trình quản lý gói Unity để nhập.

Cách di chuyển sang Trình quản lý gói Unity:

  1. Đảm bảo rằng tất cả các gói Firebase và gói Trình quản lý phần phụ thuộc bên ngoài đều được xoá khỏi thư mục Assets bằng một trong hai phương thức sau.

    Giao diện người dùng EDM4U

    1. Trong dự án Unity đang mở, hãy chuyển đến Assets > External Dependency Manager > Version Handler > Uninstall Managed Packages (Tài sản > Trình quản lý phần phụ thuộc bên ngoài > Trình xử lý phiên bản > Gỡ cài đặt gói được quản lý).
    2. Chọn tất cả các gói Firebase và Trình quản lý phần phụ thuộc bên ngoài.
    3. Nhấp vào Uninstall Selected Package (Gỡ cài đặt gói đã chọn).

    Xoá theo cách thủ công

    Sử dụng các công cụ hệ thống tệp, hãy xoá các thư mục sau theo cách thủ công:

    • Assets/Editor Default Resources/Firebase
    • Assets/ExternalDependencyManager
    • Assets/Firebase
    • Assets/Parse
    • Assets/Plugins/iOS/Firebase
  2. Nhập gói bằng Trình quản lý gói Unity, như mô tả ở trên trên trang này.